Hello,

For the simple case of three directories and two projects - /root, /root/p1, and /root/p2 - I would like to set some common flags for both projects and then other flags should be independent. For instance, p1 should be compiled with "-std=c99 -Os" and p2 should be compiled with "-std=c99 -O1". The first flag, -std=c99, is common to all projects and the second, -Os, might be changed from project to project. How do I do this?

I thought I could create MyRulesOverride.cmake with the content:

   set(CMAKE_C_FLAGS_INIT "-std=c99")

And that would be the end of it, but apparently not. The CMakeLists.txt files in each project have a line such as " set(CMAKE_C_FLAGS "-Os")" which is apparently overwriting the cached value from CMakeCInformation.cmake. I can't write a line like "set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Os")" because then the result is "-std=c99 -std=c99 -Os" for the second project.

Any help would be greatly appreciated.

David
-- 

Powered by www.kitware.com

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

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

Reply via email to