[CMake] CMake equivalent to Boost.Build site-config.jam oruser-config.jam

Lectem lectem at gmail.com
Tue Aug 8 15:31:11 EDT 2017


I think that you are looking for the toolchain files :
https://cmake.org/cmake/help/v3.0/manual/cmake-toolchains.7.html

The other option is to use a cmake script to specify your variables which includes CMakelists.txt (or the other way around if you can modify the CMakelists.txt). This would be quite similar to ctests scripts.
Some good examples are in Daniel Pfeifer’s « Effective cmake » talk https://github.com/boostcon/cppnow_presentations_2017/blob/master/05-19-2017_friday/effective_cmake__daniel_pfeifer__cppnow_05-19-2017.pdf


De : Brian Davis
Envoyé le :mardi 8 août 2017 20:09
À : cmake Mailing List
Objet :[CMake] CMake equivalent to Boost.Build site-config.jam oruser-config.jam


Is there a CMake equivalent to a site-config.jam or user-config.jam

http://www.boost.org/build/doc/html/bbv2/recipies/site-config.html
basically a CMake file the user can put in a project directory that CMake will read first when using cmake-gui that allows user to specify stuff they don't want to have to keep specifying in cmake-gui each "delete cache"
such as 
set( CMAKE_INSTALL_PREFIX ${CURRENT_LIST_DIR}/install CACHE STRING "" FORCE)
set( CMAKE_DEBUG_POSTFIX d CACHE STRING "" FORCE )

There is cmake.exe

-C <initial-cache> 
but requires command line
come to think of it would be nice if 
set( CMAKE_GENERATOR_PLATFORM "Visual Studio 12 2013 Win64" )
in desired user config file and CMake would just "make it so" on clicking Generate.
I can do this with my own projects, by implementing it myself, but when checking out 3rd party projs they can be all over the map on config allowing a user-config.cmake would provide mechanism to tame the config problems.
Desired workflow
1) Checkout 3rd party proj
2) put a CMakeUser.txt or whatever file per project
3) Run CMake GUI Generate
4) Click Open Project
5) Change whatever manual bits in in gui
6) Update project suing git witch branches versions
7) Delete Cache
8) Return to 3
9) Doopy doopy doo whatever else



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20170808/edb21b72/attachment.html>


More information about the CMake mailing list