2017-01-11 09:26:20 +00:00
|
|
|
cmake_minimum_required(VERSION 2.8)
|
|
|
|
|
|
|
|
project(machinarium)
|
|
|
|
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
|
|
|
2017-02-07 15:00:27 +00:00
|
|
|
if ("${CMAKE_BUILD_TYPE}" STREQUAL "")
|
|
|
|
set(CMAKE_BUILD_TYPE "Debug")
|
|
|
|
endif()
|
2017-01-11 09:26:20 +00:00
|
|
|
|
|
|
|
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
|
2017-03-23 13:02:45 +00:00
|
|
|
set(CMAKE_C_FLAGS "-std=gnu99 -fPIC -g -O2 -D_GNU_SOURCE")
|
2017-01-11 09:26:20 +00:00
|
|
|
elseif("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
|
2017-03-23 13:02:45 +00:00
|
|
|
set(CMAKE_C_FLAGS "-std=gnu99 -fPIC -g -O0 -D_GNU_SOURCE")
|
2017-01-11 09:26:20 +00:00
|
|
|
endif()
|
|
|
|
|
2017-01-17 14:12:21 +00:00
|
|
|
include_directories("${PROJECT_SOURCE_DIR}/src")
|
|
|
|
include_directories("${PROJECT_BINARY_DIR}/src")
|
2017-01-11 09:26:20 +00:00
|
|
|
|
2017-03-01 13:21:08 +00:00
|
|
|
option(BUILD_STATIC "Enable Static" OFF)
|
|
|
|
|
2017-01-17 14:41:54 +00:00
|
|
|
add_custom_target(build_libs)
|
2017-01-11 09:26:20 +00:00
|
|
|
set(mm_libraries "")
|
|
|
|
|
2017-03-01 12:08:41 +00:00
|
|
|
# libuv
|
2017-01-17 14:41:54 +00:00
|
|
|
include(BuildLIBUV)
|
|
|
|
build_libuv()
|
2017-01-11 09:26:20 +00:00
|
|
|
set(mm_libraries ${mm_libraries} ${LIBUV_LIBRARIES})
|
|
|
|
include_directories(${LIBUV_INCLUDE_DIRS})
|
|
|
|
|
2017-03-01 13:21:08 +00:00
|
|
|
# libcoro
|
|
|
|
include_directories("${PROJECT_SOURCE_DIR}/lib/libcoro")
|
|
|
|
include_directories("${PROJECT_BINARY_DIR}/lib/libcoro")
|
2017-01-13 09:14:12 +00:00
|
|
|
|
2017-01-17 14:12:21 +00:00
|
|
|
add_subdirectory(src)
|
2017-01-11 09:26:20 +00:00
|
|
|
|
|
|
|
message (STATUS "")
|
|
|
|
message (STATUS "machinarium: cooperative multitasking library.")
|
|
|
|
message (STATUS "")
|
2017-02-07 15:00:27 +00:00
|
|
|
message (STATUS "BUILD_STATIC: ${BUILD_STATIC}")
|
|
|
|
message (STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
|
2017-01-13 09:14:12 +00:00
|
|
|
message (STATUS "")
|