owlps/CMakeLists.txt

84 lines
1.8 KiB
CMake

cmake_minimum_required(VERSION 2.8)
project(OwlPS)
### Build paths ###
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
# Path for the generated header files
set(GENERATED_INCLUDE "${PROJECT_BINARY_DIR}/include")
include_directories("${GENERATED_INCLUDE}")
### OwlPS' version ###
# First, try to get it from the environment variable OWLPS_VERSION
if (NOT "$ENV{OWLPS_VERSION}" STREQUAL "")
add_definitions(-DOWLPS_VERSION="$ENV{OWLPS_VERSION}")
# Environment variable OWLPS_VERSION not set: try to get the version
# number from git describe
else()
execute_process(
COMMAND git describe
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
RESULT_VARIABLE RET
OUTPUT_VARIABLE OWLPS_VERSION
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE)
if (${RET} EQUAL 0)
add_definitions(-DOWLPS_VERSION="${OWLPS_VERSION}")
endif()
endif()
### Options ###
option (DEBUG
"Enable debug code"
on)
if (DEBUG)
add_definitions(-DDEBUG)
endif (DEBUG)
option (NDEBUG
"Enable no-debug mode (for assert() and others)"
off)
if (NDEBUG)
add_definitions(-DNDEBUG)
endif (NDEBUG)
### Libraries ###
add_subdirectory(libowlps)
include_directories(libowlps)
add_subdirectory(libowlps-client)
include_directories(libowlps-client)
add_subdirectory(libowlps-resultreader)
include_directories(libowlps-resultreader)
### Programs ###
add_subdirectory(owlps-aggregator)
add_subdirectory(owlps-client)
if (${CMAKE_SYSTEM_NAME} STREQUAL Linux)
add_subdirectory(owlps-listener)
else()
message(WARNING
"OwlPS Listener can be built only for Linux systems")
endif()
#add_subdirectory(owlps-positioner)
add_subdirectory(owlps-udp-to-http)