diff options
author | Manoj Srivastava <srivasta@debian.org> | 2016-01-27 13:11:31 -0800 |
---|---|---|
committer | Manoj Srivastava <srivasta@debian.org> | 2016-01-27 13:11:31 -0800 |
commit | 02819db3483514d49df7ec3f7e372b5aeb831466 (patch) | |
tree | 6a86adac74beac293bc688dafcfa1709a6476901 /CMakeLists.txt | |
parent | 2a61dffe127e22c1aaf955db6f085ac2eefbebba (diff) | |
parent | 6f6de67c70fd98815088ce49f046f48f88ea35bd (diff) |
Merge branch 'upstream'
Signed-off-by: Manoj Srivastava <srivasta@debian.org>
# Conflicts:
# src/CMakeLists.txt
# src/config.h
# src/lua/llimits.h
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 59 |
1 files changed, 54 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 72cd53ec..853c01fe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,20 +1,69 @@ # Project definition. PROJECT (tome2) -CMAKE_MINIMUM_REQUIRED (VERSION 2.6) +CMAKE_MINIMUM_REQUIRED (VERSION 2.8) # We want a readable feature summary. INCLUDE(FeatureSummary) -# Default flags. +# pkg-config support +INCLUDE(FindPkgConfig) + +# +# Basic common compiler flags. +# +SET(COMMON_COMPILER_FLAGS "-pipe -Wall -Wno-unused-value -fsanitize=undefined -fsanitize=address") + +# +# GCC/G++ flags +# IF(CMAKE_COMPILER_IS_GNUCC) # Let's set sensible options. - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pipe -Wall -Wno-unused-value") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_COMPILER_FLAGS}") + SET(CMAKE_C_FLAGS_RELEASE "-O2") + SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMMON_COMPILER_FLAGS} --std=c++11 -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC") + SET(CMAKE_CXX_FLAGS_RELEASE "-O2") + SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") +ENDIF() + +# +# Clang flags +# +IF("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_COMPILER_FLAGS}") SET(CMAKE_C_FLAGS_RELEASE "-O2") SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") ENDIF() +IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMMON_COMPILER_FLAGS} --std=c++11 -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC") + SET(CMAKE_CXX_FLAGS_RELEASE "-O2") + SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") +ENDIF() + +# Add standard math library +SET(LIBS ${LIBS} m) -# Add definitions. -ADD_DEFINITIONS(-DUSE_PRECISE_CMOVIE) +# +# JSON support +# +PKG_CHECK_MODULES(JANSSON REQUIRED jansson) +IF(JANSSON_FOUND) + ADD_DEFINITIONS(${JANSSON_CFLAGS}) + INCLUDE_DIRECTORIES(${JANSSON_INCLUDE_DIRS}) + LINK_DIRECTORIES(${JANSSON_LIBRARY_DIRS}) + SET(LIBS ${LIBS} ${JANSSON_LIBRARIES}) +ENDIF() + +# +# BOOST +# +FIND_PACKAGE(Boost 1.54.0 REQUIRED COMPONENTS system filesystem) + +IF(Boost_FOUND) + ADD_DEFINITIONS(-DBOOST_FILESYSTEM_NO_DEPRECATED) + INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) + SET(LIBS ${LIBS} ${Boost_LIBRARIES} ${Boost_SYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY}) +ENDIF() # # X11 support (OPTIONAL) |