1
+ # Configuration can be used as a template for custom project, read comments
1
2
cmake_minimum_required (VERSION 3.6 )
2
- project (gdexample )
3
+ project (gdexample LANGUAGES CXX )
4
+
5
+ set (CMAKE_CONFIGURATION_TYPES "Debug;Release;RelWithDebInfo;MinSizeRel" )
6
+ set (GODOT_CPP_PATH ../ ) # path to godot-cpp repository
3
7
4
8
add_subdirectory (
5
- ../ # path to godot-cpp
9
+ ${GODOT_CPP_PATH}
6
10
${CMAKE_CURRENT_BINARY_DIR} /godot-cpp # needed because godot-cpp is top directory
7
11
)
8
12
9
13
# Get Sources
10
14
file (GLOB_RECURSE SOURCES src/*.c** )
11
- file (GLOB_RECURSE HEADERS include /*.h** )
15
+ file (GLOB_RECURSE HEADERS src /*.h** )
12
16
13
17
# Define our godot-cpp library
14
18
if (${PLATFORM} STREQUAL "WEB" )
@@ -18,6 +22,7 @@ if(${PLATFORM} STREQUAL "WEB")
18
22
PROPERTIES
19
23
PREFIX "lib"
20
24
SUFFIX ".wasm"
25
+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
21
26
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
22
27
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
23
28
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
@@ -41,20 +46,21 @@ endif()
41
46
42
47
target_link_libraries (${PROJECT_NAME} PUBLIC godot-cpp )
43
48
44
- get_directory_property (GODOT_CC_FLAGS DIRECTORY ../ DEFINITION GODOT_CC_FLAGS )
45
- get_directory_property (GODOT_CXX_FLAGS DIRECTORY ../ DEFINITION GODOT_CXX_FLAGS )
49
+ get_directory_property (GODOT_CC_FLAGS DIRECTORY ${GODOT_CPP_PATH} DEFINITION GODOT_CC_FLAGS )
50
+ get_directory_property (GODOT_CXX_FLAGS DIRECTORY ${GODOT_CPP_PATH} DEFINITION GODOT_CXX_FLAGS )
46
51
target_compile_options (${PROJECT_NAME} PRIVATE
47
52
${GODOT_CC_FLAGS}
48
53
${GODOT_CXX_FLAGS}
49
54
)
50
55
51
- get_directory_property (GODOT_LINK_FLAGS DIRECTORY ../ DEFINITION GODOT_LINK_FLAGS )
56
+ get_directory_property (GODOT_LINK_FLAGS DIRECTORY ${GODOT_CPP_PATH} DEFINITION GODOT_LINK_FLAGS )
52
57
target_link_options (${PROJECT_NAME} PRIVATE ${GODOT_LINK_FLAGS} )
53
58
54
59
55
- get_directory_property (LIBRARY_SUFFIX DIRECTORY ../ DEFINITION LIBRARY_SUFFIX )
60
+ get_directory_property (LIBRARY_SUFFIX DIRECTORY ${GODOT_CPP_PATH} DEFINITION LIBRARY_SUFFIX )
56
61
set_target_properties (${PROJECT_NAME}
57
62
PROPERTIES
63
+ LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
58
64
LIBRARY_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
59
65
LIBRARY_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
60
66
LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR} /project/bin"
0 commit comments