wordreference/CMakeLists.txt
King_DuckZ f307656bda Added the --version switch;
The project now embeds the git sha1 of the source it's built from (this implies a cmake regen of wordref if the current sha1 changes)
2013-08-22 12:07:38 +02:00

33 lines
1.4 KiB
CMake

cmake_minimum_required (VERSION 2.6 FATAL_ERROR)
set(CMAKE_CONFIGURATION_TYPES "Debug;Release;Final" CACHE STRING "possible configurations" FORCE)
list(FIND CMAKE_CONFIGURATION_TYPES "${CMAKE_BUILD_TYPE}" BuildTypeCurr)
if ("${BuildTypeCurr}" LESS "0")
set(CMAKE_BUILD_TYPE "Final" CACHE STRING "Build type defaults to Final" FORCE)
endif()
unset(BuildTypeCurr)
set_property (GLOBAL PROPERTY DEBUG_CONFIGURATIONS "Debug;Release")
project (WordReference CXX)
message(STATUS "Configuring ${PROJECT_NAME} for ${CMAKE_BUILD_TYPE}")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/includes/")
add_definitions("-DUNICODE")
set (${PROJECT_NAME}_Version_Major 0)
set (${PROJECT_NAME}_Version_Minor 1)
set (${PROJECT_NAME}_App_Name "\"${PROJECT_NAME}\"")
string (TOUPPER ${PROJECT_NAME} PROJECT_NAME_UPPER)
set (${PROJECT_NAME}_SourceCodeVar "\"\$${PROJECT_NAME_UPPER}_SOURCE_PATH\"")
set (GNU_COMMON_C_FLAGS "-Werror")
set (GNU_COMMON_CXX_FLAGS "-std=gnu++11 -Werror -fexceptions")
foreach (ConfigType ${CMAKE_CONFIGURATION_TYPES})
string(TOUPPER ${ConfigType} ConfigTypeUpper)
set(CMAKE_CXX_FLAGS_${ConfigTypeUpper} "${CMAKE_CXX_FLAGS_${ConfigTypeUpper}} ${GNU_COMMON_CXX_FLAGS} -DDUCK_${ConfigTypeUpper}")
set(CMAKE_C_FLAGS_${ConfigTypeUpper} "${CMAKE_C_FLAGS_${ConfigTypeUpper}} ${GNU_COMMON_C_FLAGS} -DDUCK_${ConfigTypeUpper}")
endforeach()
set(CMAKE_CXX_FLAGS_FINAL "${CMAKE_CXX_FLAGS_FINAL} -DNDEBUG")
add_subdirectory(libjson)
add_subdirectory(wordref)