-
Notifications
You must be signed in to change notification settings - Fork 1
/
CMakeLists.txt
64 lines (48 loc) · 1.84 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#/**********************************************************\
#Original Author: Richard Bateman (taxilian)
#...
#\**********************************************************/
cmake_minimum_required (VERSION 2.6)
set (CMAKE_BACKWARDS_COMPATIBILITY 2.6)
# Determine FB_ROOT
get_filename_component(FB_ROOT ${CMAKE_CURRENT_LIST_FILE} PATH)
Project (FireBreath)
option(FB_AUTO_GIT "Enable automatic git operations." ON)
include(${FB_ROOT}/cmake/common.cmake)
set(FB_EXPORT_FILE ${CMAKE_BINARY_DIR}/FireBreath_Exports.cmake)
file(REMOVE ${FB_EXPORT_FILE})
add_subdirectory(${FB_ROOT}/cmake ${CMAKE_CURRENT_BINARY_DIR}/cmake_common)
if (APPLE)
clear_xcode_patches()
add_definitions(-D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0)
endif()
fb_check_boost()
if (UNIX AND NOT APPLE)
find_package(Threads REQUIRED)
endif()
if (WITH_SYSTEM_BOOST)
if (APPLE OR WIN32)
SET(Boost_USE_STATIC_LIBS ON)
endif()
if (WIN32)
SET(Boost_USE_STATIC_RUNTIME ${WITH_DYNAMIC_MSVC_RUNTIME})
endif()
endif()
add_boost_library(thread system)
if (UNIX AND NOT APPLE)
add_boost_library(regex)
endif()
if (Boost_MAJOR_VERSION GREATER 0 AND Boost_MINOR_VERSION GREATER 47)
add_boost_library(chrono)
endif()
# Common core projects
add_subdirectory(${FB_ROOT}/src/ScriptingCore ${CMAKE_CURRENT_BINARY_DIR}/ScriptingCore)
add_subdirectory(${FB_ROOT}/src/PluginCore ${CMAKE_CURRENT_BINARY_DIR}/PluginCore)
add_subdirectory(${FB_ROOT}/src/NpapiCore ${CMAKE_CURRENT_BINARY_DIR}/NpapiCore)
add_subdirectory(${FB_ROOT}/src/FireWyrm ${CMAKE_CURRENT_BINARY_DIR}/FireWyrm)
if (WIN32)
add_subdirectory(${FB_ROOT}/src/ActiveXCore ${CMAKE_CURRENT_BINARY_DIR}/ActiveXCore)
endif()
add_subdirectory(${FB_ROOT}/src/NativeMessageHost ${CMAKE_CURRENT_BINARY_DIR}/NativeMessageHost)
message("Boost includes: ${Boost_INCLUDE_DIRS}")
export_project_dependencies()