Created
December 14, 2014 12:56
-
-
Save strezh/59e3421fe3666efec9ea to your computer and use it in GitHub Desktop.
some gists for CMake
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Switch between compilers | |
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") | |
# using Clang | |
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") | |
# using GCC | |
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") | |
# using Intel C++ | |
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") | |
# using Visual Studio C++ | |
endif() | |
#For CUDA and GCC/MSVC | |
if(CUDA_FOUND AND ((MSVC AND WIN32) OR (UNIX AND CMAKE_COMPILER_IS_GNUCC ))) | |
set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS};-O3 -gencode arch=compute_20,code=sm_21) | |
cuda_add_executable(${PROJECT_NAME} ${SRC_LIST} ${CUDAHEADERS} ${CUDASOURCES}) | |
target_link_libraries(${PROJECT_NAME} ${CUDA_LIBRARIES}) | |
else(CUDA_FOUND) | |
add_executable(${PROJECT_NAME} ${SRC_LIST}) | |
endif() | |
#GTest on GCC and MSVC | |
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") | |
set(GTEST_MAIN_LIBRARY "${GTEST_ROOT}/bin/libgtest_main.a") | |
set(GTEST_LIBRARY "${GTEST_ROOT}/bin/libgtest.a") | |
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") | |
message(${CMAKE_BUILD_TYPE}) | |
if(${CMAKE_BUILD_TYPE} STREQUAL "Release") | |
set(GTEST_MAIN_LIBRARY "${GTEST_ROOT}/bin/gtest_main-md.lib") | |
set(GTEST_LIBRARY "${GTEST_ROOT}/bin/gtest.lib") | |
else() | |
set(GTEST_MAIN_LIBRARY "${GTEST_ROOT}/bin/gtest_main-mdd.lib") | |
set(GTEST_LIBRARY "${GTEST_ROOT}/bin/gtestd.lib") | |
endif() | |
endif() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Variables:
http://www.cmake.org/Wiki/CMake_Useful_Variables