www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-apps/2001/12/08/18:51:22

Mailing-List: contact cygwin-apps-help AT cygwin DOT com; run by ezmlm
Sender: cygwin-apps-owner AT cygwin DOT com
List-Subscribe: <mailto:cygwin-apps-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-apps/>
List-Post: <mailto:cygwin-apps AT cygwin DOT com>
List-Help: <mailto:cygwin-apps-help AT cygwin DOT com>, <http://sources.redhat.com/lists.html#faqs>
Delivered-To: mailing list cygwin-apps AT cygwin DOT com
To: Charles Wilson <cwilson AT ece DOT gatech DOT edu>
Cc: cygwin-apps AT cygwin DOT com
Subject: Re: broken setup.hint files
References: <m3667hsrm9 DOT fsf AT appel DOT lilypond DOT org>
<3C126412 DOT 1060903 AT ece DOT gatech DOT edu> <m3n10tqy1n DOT fsf AT appel DOT lilypond DOT org>
<3C1283D0 DOT 3090201 AT ece DOT gatech DOT edu>
Organization: Jan at Appel
From: Jan Nieuwenhuizen <janneke AT gnu DOT org>
Date: 09 Dec 2001 00:51:17 +0100
In-Reply-To: <3C1283D0.3090201@ece.gatech.edu> (Charles Wilson's message of "Sat, 08 Dec 2001 16:19:12 -0500")
Message-ID: <m3wuzxp8y2.fsf@appel.lilypond.org>
Lines: 96
User-Agent: Gnus/5.090003 (Oort Gnus v0.03) Emacs/21.1
MIME-Version: 1.0

Charles Wilson <cwilson AT ece DOT gatech DOT edu> writes:

> You are right: the *setup.ini* grammar as parsed by *setup.exe* requires 
>   colons.  However, setup.ini is created on sourceware by a script 
> called "upset".  And, the *setup.hint* grammar as parsed by upset 
> doesn't require colons.

Ah, but it does as I parse http://cygwin.com/setup.html.  Anyway, it's
a lot easier if the syntaxes match!

> Ah -- upset is the setup.hint parser that creates setup.ini.  You seem 
> to have written your own setup-ini builder and called it
> 'gen-ini.sh'.

Yes, I looked around and asked once before but.

> I am not going to "fix" my setup.hint files to make your parser happy -- 
> the only parser I care about is the REAL one, upset.

Now that you've sent the code to upset, that seems a lot more
reasonable.

>   Also, us normal cygwin maintainers CANNOT force the upstream 
> maintainers to use a sane naming scheme (see below).

Ok, but cygwin could do some sanatising?  Some mainainers don't
understand that package names don't have capitals (mysql?) or spaces...

> And when upset creates setup.ini, it first uses the filenames of the
> archives -- but then setup.hint can be used to OVERRIDE it when
> necessary.

Ok.

> Here's a (real life) example:
> openssh-2.9p2-3   (released on Jul 26, 2001)
> openssh-2.9.9p2-1 (released on Sep 28, 2001)
> 
> if you sort this using normal (computer) lexical sorting, you end up with:
> 
> prev: openssh-2.9.9p2-1
> curr: openssh-2.9p2-3

Ha, my tarball-sort gets this right:

    00:37:22 fred AT appel:~/usr/src/cygwin-cross-1.3.6.2$ echo -e 'openssh-2.9p2-3\nopenssh-2.9.9p2-1\nopenssh-1.0' | ./bin/tarball-sort.sh 
    openssh-1.0
    openssh-2.9p2-3
    openssh-2.9.9p2-1

but I see your point, there are situations

> foo-20010531 and not foo-1.3.5

where smart algorithms won't work.  Still, I haven't seen that
situation in Cygwin, and I'm always looking for thing to do better,
smaller or smarter.  Thought this was such a little thing too.

> the new *recommendation* is to NOT specify curr/prev in setup.hint
> and rely on upset's parsing of archive names.  [..] If your parser
> doesn't work, that's not my problem.

Ok.  Too bad I didn't have update before.

> It's not principle or want of time.  AFAICT, there is no mess.

I would never have introduced bz2, or if I had, I would surely have
run a small script like:

    gzip -dc $foo.gz | bzip2> $foo.bz2

over the archive.  There are now two flavours of -src.tar.* packages.
There are quite some packages (patched!) that don't do --srcdir builds
anymore.  etc.  Small things that make `make world' mode hairy.

> How about don't "kludge around it" -- try fixing your parser.

Sure.  But I still think that running a script once, that replaces
some spaces with commas, is way better than writing (and carrying
along) more (hairy) code...

> the precursor to cgf's current upset.

Thanks!  [Why] isn't this is cvs!?

> #!/usr/bin/perl
> # -*- perl -*-

Ah, not fair, 200 lines of perl, where I only have 100 lines of bash.
No wonder my scripts lacks some features.

Jan.

-- 
Jan Nieuwenhuizen <janneke AT gnu DOT org> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019