[ANNOUNCEMENT] cygwin 3.3.0-0.1.9814cfd8f693 (TEST)

Ken Brown kbrown@cornell.edu
Sat Sep 18 22:32:59 GMT 2021


On 9/18/2021 5:30 PM, Thomas Wolff wrote:
> Am 18.09.2021 um 22:20 schrieb Ken Brown via Cygwin:
>> On 9/18/2021 4:01 PM, Denis Excoffier wrote:
>>> It seems to me that the files Makefile.in, aclocal.m4, configure (and the 
>>> like) are missing from the folder (and sub-folders of) newlib-cygwin/winsup
>>> found within the 
>>> cygwin-3.3.0-0.1.9814cfd8f693.src/newlib-cygwin-3.3.0.tar.bz2 file stored in 
>>> cygwin-3.3.0-0.1.9814cfd8f693-src.tar.xz.
>>
>> The build now uses automake, and the missing files you refer to are all 
>> generated.  Start by running winsup/autogen.sh.
> This is a very bad idea (as I had commented before). There are too many build 
> system around already and now there's even a proprietary script to run as a 
> first step for cygwin. If there's anything useful that this script accomplishes, 
> why can't it just be invoked automatically from the makefile or configure script 
> so everything works as expected? It's a gross violation of the principle of 
> least surprise.

The standard way of building a Cygwin package from source is to download the 
source using Cygwin's setup program and then run cygport.  That will work in 
this case too.  (The cygport script runs autogen.sh.)  If you choose instead to 
try to build from the source tarball without even looking at the cygport file, 
you get what you paid for.

In the case of the Cygwin package, there is an alternative: You can follow the 
instructions at

   https://cygwin.com/faq.html#faq.programming.building-cygwin

for building Cygwin from source.  This explicitly mentions running autogen.sh. 
This only has to be done once, after first cloning Cygwin's git repo.  After 
that, everything is updated as needed by the Makefile.  Prior to running 
autogen.sh, there's no Makefile and no configure script.  So I guess autogen.sh 
accomplishes something useful.

Finally, I'd like to mention that it's extremely common for autotools-based 
packages to have an autogen script like Cygwin's (sometimes called bootstrap or 
bootstrap.sh).  There's nothing surprising about this.

Ken


More information about the Cygwin mailing list