1 # Set default build flags
3 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
4 SET(CMAKE_BUILD_TYPE "Release")
7 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -g -Werror -Wno-deprecated-declarations")
8 SET(CMAKE_C_FLAGS_DEBUG "-O0")
9 SET(CMAKE_C_FLAGS_RELEASE "-O2")
11 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
12 SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--as-needed")
13 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed")
15 MESSAGE(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
16 MESSAGE(STATUS "Compile flags: ${CMAKE_C_FLAGS}")
17 MESSAGE(STATUS "Exe linker flags: ${CMAKE_EXE_LINKER_FLAGS}")
18 MESSAGE(STATUS "Module linker flags: ${CMAKE_MODULE_LINKER_FLAGS}")
19 MESSAGE(STATUS "Shared linker flags: ${CMAKE_SHARED_LINKER_FLAGS}")
21 IF("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
22 ADD_DEFINITIONS("-DDEBUG")
25 MACRO(get_version _file _ver _ver_maj)
26 FILE(STRINGS ${_file} __log LIMIT_COUNT 1 REGEX "(.*)")
27 STRING(REGEX REPLACE ".*\\(\([0-9]+:\)*\([0-9a-zA-Z.]*\).*\\).*" "\\2" __ver ${__log})
28 STRING(REGEX REPLACE "^\([0-9]+\)\\..*" "\\1" __ver_maj ${__ver})
30 SET(${_ver_maj} ${__ver_maj})