CMakeLists.txt
author Tero Marttila <terom@fixme.fi>
Sun, 02 Jun 2013 16:15:23 +0300
changeset 448 34bdf0783874
parent 397 13fa0546ef87
permissions -rw-r--r--
network: fix size_t compile errors
set(PROJECT_SHORT_NAME "kg")
set(PROJECT_LONG_NAME "Kisna Glista")

project(${PROJECT_SHORT_NAME})
cmake_minimum_required(VERSION 2.6)

# Avoid source tree pollution
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)
	message(FATAL_ERROR "In-source builds are not permitted. Make a separate folder for building:\nmkdir build; cd build; cmake ..\nBefore that, remove the files already created:\nrm -rf CMakeCache.txt CMakeFiles")
endif(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)

# Where to find project source code (hh+cc)
set(PROJECT_SOURCECODE_DIR "${CMAKE_SOURCE_DIR}/src")

# Where to install project data files
set(PROJECT_DATA_DIR "${CMAKE_INSTALL_PREFIX}/share/${PROJECT_SHORT_NAME}")

# Where to look for Find*.cmake and other modules
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")

# Add a sensible build type default and warning because empty means no optimization and no debug info.
if(NOT CMAKE_BUILD_TYPE)
	message("WARNING: CMAKE_BUILD_TYPE is not defined!\n         Defaulting to CMAKE_BUILD_TYPE=Release. Use ccmake to set a proper value.")
	set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
endif(NOT CMAKE_BUILD_TYPE)

# Compile-time version script
include ("cmake/BuildVersion.cmake")

# skip source code definitions if just building docs
if (NOT KG_DOC_ONLY)
    add_subdirectory(src)
    add_subdirectory(data)
endif (NOT KG_DOC_ONLY)

add_subdirectory(doc)