Hi Máté, I'm glad you liked it.
As for multi-configuration builds, they are already supported. When using a multi-configuration generator such as MSVC, release binaries are placed in the Release directory and debug ones are placed in the Debug directory. You can also have separate out-of-tree builds with different settings for single-configuration CMake generators such as Makefile generator. Best regards, Victor On Tue, May 6, 2014 at 12:41 AM, Nagy-Egri Máté Ferenc < [email protected]> wrote: > Hi! > > > I have recently posted how nice it would be if NuGet or Chocolatey would > get some GNU loving, and GSL could be the first one. The CMake file you > created does show a lot of and great congrats. I managed to build the > libraries just fine, I would have just one comment: > > > It would be nice if the CMakeLists.txt file supported multi-configuration > builds without seperate install prefixes. For eg. if on Windows, where > building under lib/Debug and lib/Release is very common, it would be nice > if I wouldn’t have to always build and create the directory structure > myself, but have the makefile do it for me. > > > > Other than this, fantastic work! > > > Máté > > > > > > Feladó: Patrick Alken > Elküldve: kedd, 2014. április 29. 22:36 > Címzett: [email protected] > > > > > > Hi Victor, > > Thanks it looks like you did a lot of work on this. I was able to > build the current git repository easily with your script. I've added the > file in contrib/CMakeLists.txt so others can use it if they want. > > Thanks, > Patrick > > On 04/29/2014 02:23 PM, [email protected] wrote: > > Hi All, > > > > I've implemented CMake <http://www.cmake.org/> build support for GSL. As > > you probably know CMake is a popular alternative to autotools. It is used > > in many open-source projects including large ones such as KDE, LLVM and > > Blender (http://en.wikipedia.org/wiki/CMake#Notable_applications). I > won't > > go into details describing benefits of CMake, there is plenty of > > information on the web, e.g. this article < > http://lwn.net/Articles/188693/>. > > My particular interest was in building GSL with the Visual C++ compiler. > > > > The CMake build script for GSL is available at > > *https://github.com/ampl/gsl/blob/master/CMakeLists.txt > > <https://github.com/ampl/gsl/blob/master/CMakeLists.txt>*. It's just a > > single file that needs to be put in the top GSL directory. > > > > I've ported most of the autoconf platform checks to CMake and implemented > > extraction of various information such as version and lists of source > files > > from autoconf and automake files. This way the CMake script requires > little > > maintenance and can co-exist with the current GSL automake build system. > > Changes to the automake files like adding files and additional > > subdirectories holding convenience libraries don't require changes to > > CMake files > > unless there is a modification of the project structure. The config.h > file > > produced by CMake is identical to the one produced by the configure > script > > to make checking the consistency of platform checks easy. > > > > Out-of-tree builds and tests are supported. I've tested the script on > Linux > > and MacOS X with gcc and on Windows with Visual C++ (both nmake and > Visual > > Studio builds work). > > > > P.S. I sent this email to gsl-discuss some time ago, but it didn't come > > through, so I'm copying it here. > > > > Best regards, > > Victor >
