Subject: bug#13912: Feedback on coreutils 8.13

From: Ellis N. Thomas <[email-masked]>
Date: Wed, 13 Mar 2013 12:35:16 +0000

Alan,

	Many thanks for your rapid and sympathetic reply.

	One or two points about what you said embedded in parts of your reply
starting <<< below.

	As you have appreciated, I seem to have been caught in a "can't do
this until you have done that" sequence!  But I now seem ready to  
proceed
with building gcc.

	You finished by saying "The rest of the story needs to be read by  
someone
who actually knows MacOS." - does this mean someone else will contact  
me,
or do I need to forward any information?  See also below about  
config.log.

	Thanks,
		Ellis

By the way my background is that I have retired after working some  
years in the
development of software for embedded systems (defence and aerospace).
When I was in Cambridge University, England, studying Computer  
Science, my
supervisor was Stephen Bourne, who seems to be the same person that  
later
produced the Bourne Shell.  But my college course in 1969 was before  
Unix was
developed!

On 9 Mar 2013, at 22:38, Alan Curry wrote:

> ...
> Thanks for writing up your experience. Even though it's mostly a  
> series of
> bad choices, they were choices that only an outsider would make, so  
> they do
> reveal things that the insiders haven't thought of.
>
<<< Actually the only choice that mattered was to edit config.status!
<<< The attempts to use --enable- and --with- options seemed to be  
ignored.

> ...
> I found this surprising. I would have expected md5sum to be  
> installed with
> the OS. So I googled "md5sum macos" and the first result is a page  
> with
> installation instructions for a standalone package called  
> "md5sha1sum". That
> would probably be easier to install than coreutils, since it's much  
> smaller.
> I wonder how you managed to skip over it.
<<< What I found from a Google search was that Mac OS X has an md5  
command
<<< for similar use and man indicated this was a specific usage of  
openssl.
<<< However, it did not seem to provide the checking features of  
md5sum and
<<< worse its options did not match the man or info page (e.g. by  
trying md5 -h)!
<<< I probably just assumed that this was Apple's currently available  
feature here.
<<< It seemed easier to get md5sum than try to write a script to call  
md5 scanning
<<< the files listed in the file provided with gcc.

> and coreutils decided to make YET ANOTHER ONE (xz) mandatory.  
> "Compression
> format of the week" is a frustrating game! So I completely  
> understand your
> decision that...the only way to win is not to play. (If you did  
> choose to play, googling
> "macos xz" looks promising.)
>
<<< I had established that xz is available at http://tukaani.org/xz/,  
but did not feel
<<< inclined to start downloading from yet another site!  The Gnu site  
does not
<<< seem to mention handling xz files at all!
<<< By the way, Googling "macos xz" gave the response "Did you mean  
'mac os x'?"
<<< and only showed xz when overridden!

> ...
> You've understood that the documentation of "--without-PACKAGE" is  
> using the
> all-caps PACKAGE as a metasyntactic variable, which you're supposed to
> replace with the name of the package you want to do without. This  
> wasn't
> really explained but you figured it out anyway; congratulations on  
> getting
> that far.
<<< Actually at first (until I found an example) I thought it meant to  
use
<<< --enable-FEATURE=abc

>
> The other unexplained thing, which you didn't figure out, is that  
> the stuff
> below the generic --with-PACKAGE and --without-PACKAGE lines, from
> "--with-gnu-ld" to "--without-libintl-prefix", is the complete list  
> of valid
> PACKAGEs.
>
> ...
> md5sum isn't a feature you can enable/disable (--enable-FEATURE).  
> The help
> output lists them all.
> ...
> expr isn't a package you can with/without (--without-PACKAGE). The  
> help
> output lists them all.
>
> It's great that after all this trouble you've held on to your  
> optimistic
> belief that there must be some way of configuring just the program  
> you want,
> if only you can just find the right syntax. Sadly, it just isn't so.
<<< For coreutils (a suite of more or less unrelated commands) the  
actual
<<< meanings of FEATURE and PACKAGE did not seem to be well described.

>
> Ideally, "make src/md5sum" or "make -C src md5sum" would work, but the
> Makefiles in coreutils aren't quite good enough for it to work out  
> of the
> box. Some dependencies are missing.
<<< As I said before "it would help if it was possible to select  
specific parts of
<<< coreutils" easily.

> It sounds like configure found your not-yet-installed gmp and tried  
> to use
> it, with disastrous results. This is the part of the bug report  
> where you
> should include your config.log, so we can see exactly how that  
> HAVE_GMP
> became 1. And I won't be surprised if it turns out to be a bug  
> that's already
> fixed in 8.21.
<<< If it would help I can send the config.log, but it is 5.3MB - this  
takes us back
<<< into compression formats!  I seem to be able to do easily gzip,  
bzip2, and
<<< compress!

>> ...  So config.status was modified so that
>> D["HAVE_GMP"]=" 0"
>
> Editing a config.status by hand? That sure shows bravery and  
> determination.
<<< When I examined the expr.c source it was clear that conditional  
compilation
<<< catered for omitting gmp, and I searched all files timed stamped  
around the
<<< time I'd run configure to see where the flag was established.  It  
was only later
<<< that I found "--without-gmp" !