apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@rowe-clan.net>
Subject Win32 build schema
Date Thu, 12 May 2005 17:53:54 GMT
At 12:19 PM 5/12/2005, Curt Arnold wrote:
>On the build specification, the VS IDE project files are helpful for  
>debugging but they are awkward to set up and don't run unit tests,  
>assemble distributions, etc.  To use APR within log4cxx, I've created  
>Ant scripts to build APR and log4cxx which work with a large variety  
>of compilers.  Since I'm just building APR static libraries to use in  
>linking log4cxx, I'm wasn't terribly concerned with precisely  
>mimicking the settings in the VS6 project files.   The ant script can  
>produce VS6 project files to give users a quick way to set up a  
>debugging environment, but they aren't the definitive build environment.

Of course, they could.

>That approach works well for me, but the reason that I bring it up is  
>that it suggests that providing a MSBuild script and a VC6 IDE  
>project (ideally derived from the MSBuild script) might be the  
>desirable combination.  MSBuild scripts are likely to be a lot  
>cleaner than the VC6 project, able to drive the unit tests, can be  
>read by VS.NET 2005 to provide a development and debugging  
>environment.  If MSBuild drives the compilers via the command line,  
>it is likely to be able to be paired with earlier Microsoft  
>compilers.  Since it will be distributed as part of the .NET  
>framework, it can still be used by developers who do not have VS.NET  
>2005.
>
>I'd like to pass on that I have observed that some unit tests fail in  
>the Windows build when I run them from my Ant script.  Since I have  
>seen no other way to run them on that platform, I can't confirm if  
>they are bugs in the Windows implementation of either the tests or  
>the code under test or bugs in the build process.  I think it is  
>possible that the unit tests have gotten stale on the Windows  
>platform since they aren't readily run and an MSBuild script would  
>address that issue.

I believe the issue can be summed up as;

 * we need a ./configure.bat which can produce structure in:

   * .sln/.vcproj for VS 7+
   * .dsp/.dsw for VS 6-
   * makefile for nmake/gmake
   * build.xml for ant
   * MSBuild script

Oh - let's not forget (and each of these requires someone who cares
enough to write the per-project-format module)...

   * Apple's Project IDE
   * assorted unix IDEs
   * CodeWarrior
   * butter   ;-)

So we need to choose a language just to create these files.  What
do we trust?  I insist we be able to execute it on unix in order
for anyone to package win32 builds.  One main app, one per-project
template module (e.g. apr, libapr apr-util etc) and a module-per-
environment which can stuff up the file.

What are the per-project templates?  If they came [mostly] from 
the unix build schema, we would be in hog heaven.

Perl and java are installed most everywhere, python is catching up,
.NET is here on modern Windows boxes but most unix boxes don't have
mono installed.  I'd like this to be painless as possible.

Bill



Mime
View raw message