odyssey/CMakeLists.txt

51 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 2.8)
project(machinarium)
if ("${CMAKE_BUILD_TYPE}" STREQUAL "")
set(CMAKE_BUILD_TYPE "Debug")
endif()
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
set(CMAKE_C_FLAGS "-std=gnu99 -fPIC -g -O2 -D_GNU_SOURCE")
elseif("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
set(CMAKE_C_FLAGS "-std=gnu99 -fPIC -g -O0 -D_GNU_SOURCE")
endif()
include_directories("${PROJECT_SOURCE_DIR}/src")
include_directories("${PROJECT_BINARY_DIR}/src")
option(BUILD_SHARED "Enable SHARED" OFF)
option(BUILD_VALGRIND "Enable VALGRIND" ON)
add_custom_target(build_libs)
set(mm_libraries "")
# valgrind
if (BUILD_VALGRIND)
find_path(VALGRIND_INCLUDE_PATH "valgrind/valgrind.h"
"/usr/include"
"/usr/local/include")
if (${VALGRIND_INCLUDE_PATH} STREQUAL "VALGRIND_INCLUDE_PATH-NOTFOUND")
else()
set(HAVE_VALGRIND 1)
endif()
endif()
# openssl
find_package(OpenSSL)
if (NOT OPENSSL_FOUND)
endif()
set(mm_libraries "${mm_libraries} ${OPENSSL_LIBRARIES}")
include_directories("${OPENSSL_INCLUDE_DIR}")
add_subdirectory(src)
message (STATUS "")
message (STATUS "machinarium: cooperative multitasking library.")
message (STATUS "")
message (STATUS "BUILD_SHARED: ${BUILD_SHARED}")
message (STATUS "BUILD_VALGRIND: ${BUILD_VALGRIND}")
message (STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
message (STATUS "")