cmake_minimum_required (VERSION 2.6) project (MonRouter) set(CMAKE_SKIP_RPATH ON) if (SVN_REVISION) add_definitions(-DSVN_REVISION="${SVN_REVISION}") add_definitions(-DVERSION="${SVN_REVISION}") endif(SVN_REVISION) execute_process(COMMAND "date" "+%y%m%d" OUTPUT_VARIABLE BUILD_DATE) string(STRIP ${BUILD_DATE} BUILD_DATE) add_definitions(-DBUILD_DATE="${BUILD_DATE}") add_definitions(-DCHSM_MULTITHREADED) set(BOOST_ROOT "$ENV{BOOST_ROOT}") if (NOT DEFINED JPP_ROOT) set(JPP_ROOT "$ENV{JPP_ROOT}") endif (NOT DEFINED JPP_ROOT) if (NOT DEFINED CHSM_ROOT) set(CHSM_ROOT "$ENV{CHSM_ROOT}") endif (NOT DEFINED CHSM_ROOT) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/") find_package( Boost 1.53 REQUIRED COMPONENTS system program_options chrono ) find_package(CHSM REQUIRED) find_package(JPP REQUIRED) # Compiler flags set(GCC_COMPILE_FLAGS "-Wall -Wno-long-long -Wno-unused-local-typedefs -std=c++11 -O2") # Linker flags set(GCC_LINK_FLAGS "-pthread") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_COMPILE_FLAGS} ${GCC_LINK_FLAGS}") # Global include dirs include_directories("${PROJECT_SOURCE_DIR}") include_directories("${Boost_INCLUDE_DIRS}") # Install prefix set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/arch") # CHSM include dirs include_directories("${CHSM_INCLUDE_DIRS}") include_directories("${JPP_INCLUDE_DIR}") add_executable(monrouter src/monrouter.cpp) target_link_libraries(monrouter ${JPP_LIBRARIES} ${CHSM_LIBRARIES} ${Boost_LIBRARIES} ) install(TARGETS monrouter DESTINATION bin) add_custom_target(default DEPENDS monrouter)