From: <he...@us...> - 2015-09-12 01:48:33
|
Revision: 400 http://sourceforge.net/p/simspark/svn/400 Author: hedayat Date: 2015-09-12 01:48:31 +0000 (Sat, 12 Sep 2015) Log Message: ----------- Fix cmake error when Carbon library is not found * Enable C++11 support only when Carbon is found. If C++11 support is enabled, compilation will fail with currently released simspark library versions. For the next release, C++11 support will be always enabled. Modified Paths: -------------- trunk/rcssserver3d/CMakeLists.txt Added Paths: ----------- trunk/rcssserver3d/cmake/EnableCXX11.cmake Modified: trunk/rcssserver3d/CMakeLists.txt =================================================================== --- trunk/rcssserver3d/CMakeLists.txt 2015-09-12 01:48:23 UTC (rev 399) +++ trunk/rcssserver3d/CMakeLists.txt 2015-09-12 01:48:31 UTC (rev 400) @@ -42,16 +42,17 @@ add_definitions(-DHAVE_CONFIG_H ${ODE_CFLAGS}) include_directories(${CMAKE_BINARY_DIR} ${Boost_INCLUDE_DIRS} ${ODE_INCLUDE_DIR} ${SPARK_INCLUDE_DIR} ${SALT_INCLUDE_DIR} ${ZEITGEIST_INCLUDE_DIR} - ${OXYGEN_INCLUDE_DIR} ${KEROSIN_INCLUDE_DIR} ${CARBON_INCLUDE_DIR}) + ${OXYGEN_INCLUDE_DIR} ${KEROSIN_INCLUDE_DIR}) + +if (CARBON_FOUND) + include(EnableCXX11) + include_directories(${CARBON_INCLUDE_DIR}) +endif (CARBON_FOUND) + link_directories(${Boost_LIBRARY_DIRS}) if (UNIX) - set(CMAKE_CXX_FLAGS $ENV{CXXFLAGS} "-std=gnu++11" CACHE - STRING "Common C++ compiler flags" FORCE) - set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -W -Wall -Woverloaded-virtual" CACHE - STRING "C++ compiler flags for Debug builds" FORCE) - set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE - STRING "C++ compiler flags for Release builds" FORCE) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W -Wall -Woverloaded-virtual") endif (UNIX) if(WIN32) Added: trunk/rcssserver3d/cmake/EnableCXX11.cmake =================================================================== --- trunk/rcssserver3d/cmake/EnableCXX11.cmake (rev 0) +++ trunk/rcssserver3d/cmake/EnableCXX11.cmake 2015-09-12 01:48:31 UTC (rev 400) @@ -0,0 +1,21 @@ +# - Use C++11 standard +# +# Author: +# Kevin M. Godby <ke...@go...> +# +# Hedayat: modified to support gnu++11/gnu++0x instead +# Note that Microsoft Visual C++ compiler enables C++11 by default + +if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR CMAKE_COMPILER_IS_GNUCXX) + include(CheckCXXCompilerFlag) + check_cxx_compiler_flag(-std=gnu++11 SUPPORTS_STD_GNUXX11) + check_cxx_compiler_flag(-std=gnu++0x SUPPORTS_STD_GNUXX0X) + if(SUPPORTS_STD_GNUXX11) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") + elseif(SUPPORTS_STD_GNUXX0X) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x") + else() + message(ERROR "Compiler does not support -std=gnu++11 or -std=gnu++0x.") + endif() +endif() + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |