Zitat von K?rlis Repsons <[email protected]>:

On Friday 30 April 2010 09:35:46 Michael Wild wrote:
On 30. Apr, 2010, at 11:16 , K?rlis Repsons wrote:
> Good day in here,
> I was trying to figure out how should CMake be used to automate building,
> which can happen on two or more platforms with some 4 compilers to be
> used in total, and should store the results in file tree like
> $platform/$compiler or $platform/$compilerEnvironment. Could you please
> suggest me how should it be done? Some example?
>
> (the idea is to store various builds with all of their intermediate files
> in parallel both to test code against wider set of compilers and
> platforms, some of which will be built with cross compiling environments)

Write a script that creates for each of the combinations a separate build
 tree and then invokes CMake as appropriate. If you want to, you can also
 use cache-initializer scripts (see the CMake documentation) to set common
 options in the cache. Since you are building on multiple platforms
 (presumably not cross-compiling), you'll want to write the script as a
 CMake script (or Ruby, Python, Lua, whichever suits you best).
I think, I got the idea, but how can these three be completely separated:
{sources and CMakeLists.txt files; CMake intermediate files and object files;
useful binaries and headers}?

sources and CMakeLists.txt files:
 -> same source directory

CMake intermediate files and object files:
 -> binary directory as defined by you

useful binaries and headers:
-> I guess you mean the ones for installation. You install them with any layout you want using "make install DESTDIR=<install-prefix>" for seperate trees or by using CMAKE_INSTALL_PREFIX for a common tree (or whatever scheme you want in the install() command).

HS



_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to