List:MySQL++« Previous MessageNext Message »
From:Warren Young Date:January 6 2014 8:27pm
Subject:Re: scons build on windows
View as plain text  
On 1/5/2014 23:45, Alex.Burton@stripped wrote:
> the project files must be too old for the current visual
> studio.

I thought I tried that before shipping MySQL++ 3.2.1.

On trying it here, I found three problems that prevent it from working 
out of the box:

1. lib/common.h #included winsock.h.  It probably never was really 
required, and it now conflicts with Connector/C, so I removed it.

2. windows.h (via Connector/C) #defines min and max macros unless you 
suppress it via #define NOMINMAX.  This wasn't a problem before, but 
apparently changes to the Standard C++ library or C++ parsing in VC++ 
2013 causes a conflict.  So, #defininig NOMINMAX.  This in turn required 
a #include <algorithm> in one of the C++ files that was apparently 
getting away with using the windows.h definition.

3. On converting the vs2008/* files to VS2013 form, Visual Studio didn't 
prefix the linker paths with x64\.  This is probably the real reason 
your SCons file helps your local build.  Fixing this by hand is fairly 
tedious, and there is no way I can do this in the vs2008 output without 
breaking VS2008 compatibility.  What we need here is real VS2013 
support, not a half-um-butted conversion.

> This build script works with SCons which i recommend.

I've been considering switching away from Bakefile, since it has not yet 
gotten support for MSBuild style VS project files.

SCons was on the short list, as was CMake.

The mere fact of this contribution pushes me towards SCons.  Anyone know 
a reason I should disregard the contribution and consider CMake instead?

> Please consider adding this script

Thanks for writing this!

I won't just add it to the repository, as that would create a parallel 
development problem.  I will instead consider replacing mysql++.bkl.

There's a bunch of extensions that will have to be made to your 
contribution before I can do that:

- support MinGW, Xcode, and Autotools

- add examples/*.cpp build targets

- add documentation build targets

- add test build targets

- add ctags convenience target

- add ssqls.h and querydef.h build targets

- add abicheck convenience target

- add dist tarball, RPM and ebuild creation targets
scons build on windowsAlex.Burton6 Jan
  • Re: scons build on windowsMickael Wolff6 Jan
    • Re: scons build on windowsWarren Young6 Jan
      • Re: scons build on windowsMickael Wolff7 Jan
        • Re: scons build on windowsWarren Young7 Jan
  • Re: scons build on windowsWarren Young6 Jan
  • RE: scons build on windowsAlex.Burton7 Jan