[CMake] compiler independent compiler flags

Nagy-Egri Máté Ferenc csiga.biga at aol.com
Wed Feb 17 05:23:20 EST 2016


Hi Jan,

Unfortunately, I cannot help you in this regard, though I am surprised how little attention this question gained. I too feel that CMake could do better both in this regard. While ABI detection is very well done, BUILD_TYPE seems to be the only compiler agnostic option available. I do not know how to set warning levels for eg. in a compiler agnostic manner. Aside from this, there are dozens of other options that are common to all C++ compilers and it would rock if I need not look up the exact params for all of them.

Sorry I could not help, but I do feel the struggle.

Cheers,
Máté

Feladó: 🐋 Jan Hegewald
Elküldve: 2016. február 5., péntek 11:36
Címzett: cmake at cmake.org
Tárgy: [CMake] compiler independent compiler flags

Dear all,
do you know a best practice on how to specify compiler flags without knowing in advance which compiler will be used?
Its about Fortran projects, where I e.g. want to explicitly enable the preprocessor, or make all default real values 8 byte wide. This could be done as such:
if(${CMAKE_Fortran_COMPILER_ID} STREQUAL "Intel")
  set(CMAKE_Fortran_FLAGS "-fpp -r8")
elseif(${CMAKE_Fortran_COMPILER_ID} STREQUAL "GNU")
  set(CMAKE_Fortran_FLAGS "-cpp -fdefault-real-8")
endif()

Cmake has the cmake-compile-features and I though maybe some similar mechanism exists for above mentioned compiler switches. So I could say
target_compile_features(mylib PRIVATE f_preprocessor f_real_8)

Thanks for sharing your advise,
Jan


-- 

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

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


More information about the CMake mailing list