[isabelle-dev] download-components

Makarius makarius at sketis.net
Wed Aug 8 21:05:39 CEST 2012


On Wed, 8 Aug 2012, Florian Haftmann wrote:

>> One could also use "wget -O- ... | tar xvzf -" and avoid the TMP file.
>>
>> Anyway, wget is one of these portability issues.  Mac OS lacks it by
>> default, and has curl instead.
>
> How is the situation with curl in cygwin?  Then I would be willing to
> port it.  Otherwise a platform switch is inevitable.

I see both curl and wget in the list of standard Cygwin packages.  Since 
we bundle Cygwin anyway, we have the freedom to put there what we need, 
even both of them.


>> Other portability issues are too aggresive bash features, like shopt and
>> exception handlers.  (Here it happens to work on Mac OS, but a recent
>> script for pandoc with lots of more such options failed.)
>
> I'm glad to sort it out, but I need more hints what fails and why – due
> to the version of bash?

There are no good reasons.  It is just Apple having secret schemes of 
updating or not updating well-known open-source tools.  Sometimes they 
even have their own variants of them.  (But Debian is doing the same in 
some sense.)

Many year ago, we were requiring rather aggressive use of MacPorts to 
ensure that the proper free stuff is there.  In recent years I have 
refrained from that.  It should all work with a bare-bones Mac OS, even 
without Xcode (which pulls-in things like gcc and make.)


> Btw. in older times we had an indication which bash version is minimum 
> on the installation page.  This has gone now – for which reason?

I had put these version indications there when bash was really young, and 
1.4 vs. 2.0 made a big difference.  These days one can probably count on 
solid 3.x, but not 4.x.  For example, my funny array extension idiom is 
there to work with 3.x:

   INCLUDE_DIRS["${#INCLUDE_DIRS[@]}"]="$OPTARG"

Anyway, I've lost a bit track of the lastest bash movements.  It is more 
and more being replaced by Scala anyway.  (Maybe one should make a precise 
getopt imitation in Scala, with all the official features of -abc ARG 
option conglomerates and "--" etc.).


 	Makarius


More information about the isabelle-dev mailing list