@@ -10,6 +10,7 @@ project(OpenTomb)
10
10
list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR} /cmake )
11
11
12
12
option (FORCE_SYSTEM_FREETYPE "Use system-provided FreeType instead of internal library." OFF )
13
+ option (FORCE_SYSTEM_BULLET "Use system-provided BULLET instead of internal library." OFF )
13
14
14
15
# Detect system FreeType
15
16
@@ -27,11 +28,30 @@ endif ()
27
28
28
29
if (OPENTOMB_INTERNAL_FREETYPE )
29
30
add_subdirectory (extern/freetype2 )
30
- set (FREETYPE_INCLUDE_DIRS "" )
31
+ set (FREETYPE_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR} /extern/freetype2 " )
31
32
set (FREETYPE_LIBRARIES freetype2 )
32
33
endif ()
33
34
34
- add_subdirectory (extern/bullet )
35
+ # Detect system BULLET
36
+
37
+ if (FORCE_SYSTEM_BULLET )
38
+ find_package (Bullet QUIET )
39
+ if (NOT BULLET_FOUND )
40
+ message (WARNING "BULLET not found. Enabling internal BULLET support." )
41
+ set (OPENTOMB_INTERNAL_BULLET ON )
42
+ else ()
43
+ set (OPENTOMB_INTERNAL_BULLET OFF )
44
+ endif ()
45
+ else ()
46
+ set (OPENTOMB_INTERNAL_BULLET ON )
47
+ endif ()
48
+
49
+ if (OPENTOMB_INTERNAL_BULLET )
50
+ add_subdirectory (extern/bullet )
51
+ set (BULLET_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR} /extern/bullet" )
52
+ set (BULLET_LIBRARIES bullet )
53
+ endif ()
54
+
35
55
add_subdirectory (extern/lua )
36
56
37
57
set (OPENTOMB_SRCS
@@ -259,6 +279,7 @@ set_target_properties(${PROJECT_NAME} PROPERTIES C_STANDARD 99 CXX_STANDARD 11)
259
279
target_include_directories (
260
280
${PROJECT_NAME} PRIVATE
261
281
${FREETYPE_INCLUDE_DIRS}
282
+ ${BULLET_INCLUDE_DIRS}
262
283
${PNG_INCLUDE_DIRS}
263
284
${ZLIB_INCLUDE_DIRS}
264
285
${SDL2_INCLUDE_DIR}
@@ -268,8 +289,8 @@ target_include_directories(
268
289
269
290
target_link_libraries (
270
291
${PROJECT_NAME}
271
- bullet
272
292
${FREETYPE_LIBRARIES}
293
+ ${BULLET_LIBRARIES}
273
294
lua5.3
274
295
${PNG_LIBRARIES}
275
296
${OPENAL_LIBRARY}
0 commit comments