From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 56239 invoked by alias); 26 Nov 2016 03:42:50 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 55907 invoked by uid 89); 26 Nov 2016 03:42:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.1 required=5.0 tests=AWL,BAYES_05,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW autolearn=no version=3.3.2 spammy=Hx-spam-relays-external:shaw.ca, H*r:shaw.ca, H*RU:shaw.ca, elvis X-HELO: smtp-out-so.shaw.ca Received: from smtp-out-so.shaw.ca (HELO smtp-out-so.shaw.ca) (64.59.136.137) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 26 Nov 2016 03:42:13 +0000 Received: from [192.168.1.100] ([174.0.238.184]) by shaw.ca with SMTP id ATsPcwKHQIwqSATsQcAWET; Fri, 25 Nov 2016 20:42:11 -0700 X-Authority-Analysis: v=2.2 cv=cNuQihWN c=1 sm=1 tr=0 a=WqCeCkldcEjBO3QZneQsCg==:117 a=WqCeCkldcEjBO3QZneQsCg==:17 a=IkcTkHD0fZMA:10 a=xNf9USuDAAAA:8 a=Xq9WkkR8zaALFPDUKGUA:9 a=QEXdDO2ut3YA:10 a=SEwjQc04WA-l_NiBhQ7s:22 Subject: Re: Standard LEX variable doesn't work in Make. References: <11448207-52c8-6745-999f-48a4534bbc41@t-online.de> <4805811d-559f-a49d-9b2f-5041a0b94b08@t-online.de> To: cygwin@cygwin.com Reply-To: Brian.Inglis@SystematicSw.ab.ca From: Brian Inglis Message-ID: <8af64289-18cd-d14a-0fea-10e80d2752f8@SystematicSw.ab.ca> Date: Sun, 27 Nov 2016 03:04:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0 MIME-Version: 1.0 In-Reply-To: <4805811d-559f-a49d-9b2f-5041a0b94b08@t-online.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-CMAE-Envelope: MS4wfD5TGEmwprUGlrQwDW73IOOYLLNnPLgaYeOTbroWBtPy7rhfg3PuX0XJOVFi9pAT/aU4mXSJScmniyp35yR7tq41ITxRMLQzWIb3kYVkNxHWkIZnlDct N0QynAtcGwUbN9fBQJoR/2ARcUoswG0L7wK001C3KEYUS0aArKIXsudONN/GgwCMySW7XOtFUmpKIA== X-IsSubscribed: yes X-SW-Source: 2016-11/txt/msg00300.txt.bz2 On 2016-11-25 17:08, Hans-Bernhard Bröker wrote: > Am 25.11.2016 um 15:31 schrieb Brian Inglis: > >> One solution, and the most common in Cygwin, is the package flex should >> create a symlink lex if no such symlink or exe exists; > > In this case I believe that would be less than fully correct, because > flex is not a clean drop-in replacement for generic lex. For that one > has to add the '-l' flag. So instead of a symlink one would use a > wrapper script much like the 'yacc' script found in the 'bison' > package, i.e.: > > #! /bin/sh > exec /usr/bin/flex -l "$@" On Debian both yacc and bison.yacc are alternatives; >> or by the FHS, >> create a group of alternatives, with a slave alternative for each of >> its public components e.g. bin, man, info, etc. files. > > I don't think 'alternatives' is applicable here. We're not looking at > several packages providing the same file --- we're looking at > > * single packages offering the same executable under more than one > name, causing it to express different personalities, like ex -> > vi.exe, view -> vi.exe, latex --> pdftex.exe, and all vi, vim, nvi, elvis etc. links are handled via alternatives: it's used as the canonical example in https://wiki.debian.org/DebianAlternatives > * a subsystem like texlive installing a truckload of executable > scripts somewhere else, and links from /bin to them. but tex uses no alternatives. > So while I agree that the 'alternatives' mechanism could, or even > should be used more in Cygwin, I don't think this is one of the cases > where that applies. Cygwin currently seems to follow the RH/RHEL/Fedora model using it in limited cases. Not running Cygwin/X I don't know if it is used for X or Gnome packages, where it is used extensively in Debian-based distros. One commenter on Debian notes it is also used for: " - cases where you've got a common name referring to specific name (like emacs-->/usr/bin/emacs20) - cases where an older style name refers to the modern equivalent (maybe cc-->/usr/bin/gcc or csh-->/usr/bin/tcsh or rcp-->/usr/bin/scp) - cases where a Unix-style name refers to the modern GNU equivalent (like yacc-->/usr/bin/bison)." and I'd add it is also used for some versioned .so files and language variants, so it appears it can apply wherever the packager decides it should. Cygport currently supports it for postinstall(/preremove) in the berkdb cygclass and Google shows some other packages also appear to use it. Perhaps Cygwin packages should use it more, whenever symlink creation is considered for some component. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple