2008/12/4 Bill Hoffman <[EMAIL PROTECTED]>: > Hugo Heden wrote: >> >> Good day all, >> >> I am looking for a way within a CMakeLists.txt make sure that: >> >> -- at *build* time >> >> -- cmake is invoked on a *separate* project, and then also the >> "all"-target is invoked >> >> How do I do that? >> >> The following is a first rough sketch (that is not good enough, I >> believe): >> >> ADD_CUSTOM_TARGET( >> build_separate_project >> WORKING_DIRECTORY separate_project/build >> COMMAND ${CMAKE_COMMAND} ../src >> COMMAND ${CMAKE_BUILD_TOOL} all >> ) >> >> -- The above only works for a ${CMAKE_BUILD_TOOL} that happens to >> accept a commandline that contains a target and nothing else (like >> GNU-make does). >> >> So is there a more *generic* way to, at build time, invoke cmake and >> then the "all"-target on a separate project? >> >> (The following is a bit of background: We have a project called "FOO" >> that generates source code that eventually also needs to be compiled. >> The generated source files end up in a *directory* that is known >> CMake-time, but the *filenames* are not known until *build*-time. Thus >> there is no way with in project "FOO" to create a target to compile >> the generated source-code. (Doing FILE(GLOB...) within project FOO >> will not work, because the globbing will take place at cmake-time, at >> which time there are no files there). Therefore, together with the >> generated source files we generate a CMakeLists.txt that defines a >> *separate* project called "BAR" that contains a target to compile the >> generated source code. Hence the question above -- how do I invoke the >> all target in the BAR project in a way that works for all build-tools, >> not only GNU-make?) >> > > You should look at ctest --build-and-test. It can do what you want, and > invoke all build systems supported by CMake. It is used in the testing of > CMake. See CMake/Tests/CMakeLists.txt, and ctest --help for information. >
Aha, yes, that's it! Thank you! /Hugo Heden _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake