@@ -56,6 +56,7 @@ if( MSVC )
56
56
57
57
endif ()
58
58
59
+ set ( VIZDOOM_OUTPUT_DIR ${CMAKE_BINARY_DIR} /bin )
59
60
60
61
# Targets
61
62
add_subdirectory ( vizdoom_src )
@@ -65,7 +66,7 @@ find_package(Threads REQUIRED)
65
66
66
67
set ( VIZDOOM_INCLUDE_DIR vizdoom_api_src )
67
68
68
- include_directories ( ${VIZDOOM_IrmNCLUDE_DIR } ${Boost_INCLUDE_DIR} )
69
+ include_directories ( ${VIZDOOM_INCLUDE_DIR } ${Boost_INCLUDE_DIR} )
69
70
70
71
set ( VIZDOOM_LIBS
71
72
${Boost_LIBRARIES}
@@ -90,11 +91,18 @@ target_link_libraries (vizdoomshared ${VIZDOOM_LIBS})
90
91
91
92
set_target_properties ( vizdoomstatic vizdoomshared
92
93
PROPERTIES
93
- ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin
94
- LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin
95
- RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin
94
+ ARCHIVE_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR}
95
+ ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR}
96
+ ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR}
97
+ LIBRARY_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR}
98
+ LIBRARY_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR}
99
+ LIBRARY_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR}
100
+ RUNTIME_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR}
101
+ RUNTIME_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR}
102
+ RUNTIME_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR}
96
103
OUTPUT_NAME vizdoom )
97
104
105
+ #Python binding
98
106
if (BUILD_PYTHON)
99
107
100
108
#set(Boost_USE_DEBUG_PYTHON OFF)
@@ -108,7 +116,7 @@ if(BUILD_PYTHON)
108
116
109
117
set ( VIZDOOM_PYTHON_LIBS
110
118
${VIZDOOM_LIBS}
111
- ${Boost_PYTHON_LIBRARY}
119
+ ${Boost_PYTHON_LIBRARY}
112
120
${PYTHON_LIBRARIES}
113
121
${NUMPY_LIBRARIES} )
114
122
@@ -130,15 +138,21 @@ if(BUILD_PYTHON)
130
138
131
139
set_target_properties ( vizdoompython
132
140
PROPERTIES
133
- ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/python
134
- LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/python
135
- RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/python
141
+ ARCHIVE_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /python
142
+ ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /python
143
+ ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /python
144
+ LIBRARY_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /python
145
+ LIBRARY_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /python
146
+ LIBRARY_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /python
147
+ RUNTIME_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /python
148
+ RUNTIME_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /python
149
+ RUNTIME_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /python
136
150
OUTPUT_NAME vizdoom )
137
151
138
152
if (UNIX )
139
153
ADD_CUSTOM_COMMAND (
140
154
TARGET vizdoompython
141
- COMMAND ln -sf ${PROJECT_SOURCE_DIR} /bin /python/vizdoom.so ${PROJECT_SOURCE_DIR} /examples/python/vizdoom.so
155
+ COMMAND ln -sf ${VIZDOOM_OUTPUT_DIR} /python/vizdoom.so ${PROJECT_SOURCE_DIR} /examples/python/vizdoom.so
142
156
COMMAND ln -sf ${PROJECT_SOURCE_DIR} /examples/config/bots.cfg ${PROJECT_SOURCE_DIR} /examples/python/bots.cfg
143
157
COMMENT "Adding symlinks to vizdoom.so and bots.cfg in examples/python."
144
158
)
@@ -147,6 +161,7 @@ if(BUILD_PYTHON)
147
161
148
162
endif ()
149
163
164
+ #Java binding
150
165
if (BUILD_JAVA)
151
166
152
167
if (NOT DEFINED ENV{JAVA_HOME})
@@ -160,8 +175,7 @@ if(BUILD_JAVA)
160
175
set ( VIZDOOM_JAVA_INCLUDE_DIR ${VIZDOOM_INCLUDE_DIR} vizdoom_api_bindings/java )
161
176
162
177
set ( VIZDOOM_JAVA_LIBS
163
- ${VIZDOOM_LIBS}
164
- ${Boost_LIBRARIES}
178
+ ${VIZDOOM_LIBS}
165
179
${Java_LIBRARIES}
166
180
${JNI_LIBRARIES} )
167
181
@@ -206,23 +220,31 @@ if(BUILD_JAVA)
206
220
./vizdoom_api_bindings/java/errors/SharedMemoryException.java
207
221
./vizdoom_api_bindings/java/GameState.java
208
222
./vizdoom_api_bindings/java/DoomGame.java
209
- OUTPUT_DIR ${PROJECT_SOURCE_DIR} /bin/java OUTPUT_NAME vizdoom)
223
+ OUTPUT_DIR ${VIZDOOM_OUTPUT_DIR} /java
224
+ OUTPUT_NAME vizdoom)
210
225
211
226
set_target_properties ( vizdoomjava
212
227
PROPERTIES
213
- ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/java
214
- LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/java
215
- RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /bin/java
228
+ ARCHIVE_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /java
229
+ ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /java
230
+ ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /java
231
+ LIBRARY_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /java
232
+ LIBRARY_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /java
233
+ LIBRARY_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /java
234
+ RUNTIME_OUTPUT_DIRECTORY ${VIZDOOM_OUTPUT_DIR} /java
235
+ RUNTIME_OUTPUT_DIRECTORY_DEBUG ${VIZDOOM_OUTPUT_DIR} /java
236
+ RUNTIME_OUTPUT_DIRECTORY_RELEASE ${VIZDOOM_OUTPUT_DIR} /java
216
237
OUTPUT_NAME vizdoom )
217
238
218
239
endif ()
219
240
220
-
221
- #message("-- Downloading Freedoom WADs")
222
- #message("-- Original Doom WADs can not be provided due to licences")
223
-
224
241
if ( WIN32 )
225
- file ( DOWNLOAD https://github.com/freedoom/freedoom/releases/download/v0.10.1/freedoom-0.10.1.zip ./scenarios/freedoom-0.10.1.zip SHOW_PROGRESS )
242
+ if (NOT EXISTS "${PROJECT_SOURCE_DIR} /scenarios/freedoom.zip" )
243
+ message ("-- Downloading Freedoom WADs" )
244
+ message ("-- Original Doom WADs can not be provided due to licences" )
245
+
246
+ file ( DOWNLOAD https://github.com/freedoom/freedoom/releases/download/v0.10.1/freedoom-0.10.1.zip ${PROJECT_SOURCE_DIR} /scenarios/freedoom.zip SHOW_PROGRESS )
247
+ endif ()
226
248
endif ()
227
249
228
250
if (UNIX )
0 commit comments