[Coin-discuss] New --enable-doscompile configuration flag, and link fix for Cygwin

Andreas Waechter andreasw at watson.ibm.com
Wed Oct 18 15:18:24 EDT 2006


Hello,

Last night, I finally added the --enable-doscompile flag for the configure 
scripts:

This flag can only be used under Cygwin, and when it is chosen, the 
compiler options include -mno-cygwin, i.e., the executable will run under 
DOS without the Cygwin1.dll.

The default behavior has now changed!  Before, under Cygwin, the 
-mno-cygwin flag was chosen by default, but now one has to explicitly 
choose --enable-doscompile to switch that on.

In this context, I also changed the generation of links for the Data files 
in a VPATH compilation.  As you noticed before, the unittests failed 
because the symblic links were not understood by the anything compiled 
with -mno-cygwin.  Now, when --enable-doscompile is chosen or the compiler 
is cl (the MSVC compiler), then the data files are copied instead of 
linked.

I hope this fixes those two issues.

The changes are in BuildTools/stable/0.5, and I already adapted the 
stable/1.0 version of the Data projects and CoinUtils.

The other COIN projects need to still be updated in order to have this 
change.  If you are a project manager, I suggest that you make sure that 
you get the 'stable' branch of the dependencies in your stable version as 
externals, in particular BuildTools/stable/0.5.  Then you need to rerun 
the autotools.  Before you actually commit something to your stable 
branch, make sure that the dependencies already have the corrected 
configure scripts.

As a related issue, you might want to have a look at the wiki instructions 
on BuildTools:

https://projects.coin-or.org/BuildTools

I tried to make it a bit easier to find information by using the Table Of 
Content macro for Trac (thanks Matt for installing it!).  I also updated 
the information to aline with our new COIN release policy.  I highly 
recommend to project managers to have a look at

https://projects.coin-or.org/BuildTools/wiki/pm-svn-externals#PreparingExternalsForAPointRelease

which has a checklist for the creation of a new point release.

Cheers

Andreas

On Tue, 17 Oct 2006, Lou Hafer wrote:

> Ted, Andreas,
>
> 	Thanks for the quick replies.
>
> 	Andreas, you may remember that I was ranting about symlinks back at the
> DIMACS workshop.  The autoconf test (AC_PROG_LN_S) that checks whether symbolic
> links will work is fundamentally flawed for this cygwin/minGW environment.
> Partly, it's been hijacked by some project called DJGPP.  You can grep for DJGPP
> in the configure script to see what's actually done --- this is why conf$$.exe
> appears in the test; apparently a `helpful feature' of DJGPP is to conclude that
> anything without an extension is executable.  Partly, configure runs the test in
> the cygwin environment, where symlinks work, but the executable will run in
> minGW, where they don't.  A working test for our situation would require
> actually compiling and running a test program to see if it could read a file
> through a symbolic link.
>
> 	A good quick fix would be to avoid symlinks in the cygwin environment.
>
> 	I will see if I can make some time to poke a bit more at the problems
> for gzip'd file i/o. I don't see why input should work for the first hundred
> lines and then start to fail. I'd like to at least establish that the problem is
> definitely down in the gz libraries, and not in the low-level CoinUtils stuff.
>
> 							Lou
>
> _______________________________________________
> Coin-discuss mailing list
> Coin-discuss at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/coin-discuss
>



More information about the Coin-discuss mailing list