LEFT | RIGHT |
| 1 # -*- mode: cmake; indent-tabs-mode: t; -*- |
1 # ***** BEGIN GPL LICENSE BLOCK ***** | 2 # ***** BEGIN GPL LICENSE BLOCK ***** |
2 # | 3 # |
3 # This program is free software; you can redistribute it and/or | 4 # This program is free software; you can redistribute it and/or |
4 # modify it under the terms of the GNU General Public License | 5 # modify it under the terms of the GNU General Public License |
5 # as published by the Free Software Foundation; either version 2 | 6 # as published by the Free Software Foundation; either version 2 |
6 # of the License, or (at your option) any later version. | 7 # of the License, or (at your option) any later version. |
7 # | 8 # |
8 # This program is distributed in the hope that it will be useful, | 9 # This program is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
(...skipping 21 matching lines...) Expand all Loading... |
32 ../blender/blenloader | 33 ../blender/blenloader |
33 ../blender/editors/include | 34 ../blender/editors/include |
34 ../blender/makesrna | 35 ../blender/makesrna |
35 ../blender/imbuf | 36 ../blender/imbuf |
36 ../blender/render/extern/include | 37 ../blender/render/extern/include |
37 ../blender/makesdna | 38 ../blender/makesdna |
38 ../blender/gpu | 39 ../blender/gpu |
39 ../blender/windowmanager | 40 ../blender/windowmanager |
40 ) | 41 ) |
41 | 42 |
42 if(WIN32) | |
43 blender_include_dirs(../../intern/utfconv) | |
44 endif() | |
45 | |
46 if(WITH_LIBMV) | 43 if(WITH_LIBMV) |
47 blender_include_dirs(../../extern/libmv) | 44 blender_include_dirs(../../extern/libmv) |
48 add_definitions(-DWITH_LIBMV) | 45 add_definitions(-DWITH_LIBMV) |
49 endif() | 46 endif() |
50 | 47 |
51 if(WITH_CODEC_FFMPEG) | |
52 add_definitions(-DWITH_FFMPEG) | |
53 endif() | |
54 | |
55 if(WITH_PYTHON) | 48 if(WITH_PYTHON) |
56 blender_include_dirs(../blender/python) | 49 blender_include_dirs(../blender/python) |
57 add_definitions(-DWITH_PYTHON) | 50 add_definitions(-DWITH_PYTHON) |
58 | 51 |
59 if(WITH_PYTHON_SECURITY) | 52 if(WITH_PYTHON_SECURITY) |
60 add_definitions(-DWITH_PYTHON_SECURITY) | 53 add_definitions(-DWITH_PYTHON_SECURITY) |
61 endif() | 54 endif() |
62 endif() | 55 endif() |
63 | 56 |
64 if(WITH_HEADLESS) | 57 if(WITH_HEADLESS) |
65 add_definitions(-DWITH_HEADLESS) | 58 add_definitions(-DWITH_HEADLESS) |
66 endif() | 59 endif() |
67 | 60 |
68 if(WITH_GAMEENGINE) | 61 if(WITH_GAMEENGINE) |
69 blender_include_dirs(../gameengine/BlenderRoutines) | 62 blender_include_dirs(../gameengine/BlenderRoutines) |
70 | 63 |
71 add_definitions(-DWITH_GAMEENGINE) | 64 add_definitions(-DWITH_GAMEENGINE) |
72 endif() | 65 endif() |
73 | 66 |
74 if(WITH_SDL) | 67 if(WITH_SDL) |
75 add_definitions(-DWITH_SDL) | 68 add_definitions(-DWITH_SDL) |
76 endif() | 69 endif() |
77 | 70 |
78 if(WITH_BINRELOC) | 71 if(WITH_BINRELOC) |
79 add_definitions(-DWITH_BINRELOC) | 72 add_definitions(-DWITH_BINRELOC) |
80 blender_include_dirs(${BINRELOC_INCLUDE_DIRS}) | 73 blender_include_dirs(${BINRELOC_INCLUDE_DIRS}) |
81 endif() | |
82 | |
83 if(WITH_FREESTYLE) | |
84 add_definitions(-DWITH_FREESTYLE) | |
85 blender_include_dirs(../blender/freestyle) | |
86 endif() | 74 endif() |
87 | 75 |
88 # Setup the exe sources and buildinfo | 76 # Setup the exe sources and buildinfo |
89 set(SRC | 77 set(SRC |
90 creator.c | 78 creator.c |
91 ) | 79 ) |
92 | 80 |
93 # MSVC 2010 gives linking errors with the manifest | 81 # MSVC 2010 gives linking errors with the manifest |
94 if(WIN32 AND NOT UNIX) | 82 if(WIN32 AND NOT UNIX) |
95 string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1) | 83 string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1) |
(...skipping 28 matching lines...) Expand all Loading... |
124 add_definitions(-DWITH_BUILDINFO) | 112 add_definitions(-DWITH_BUILDINFO) |
125 # ----------------------------------------------------------------------
---- | 113 # ----------------------------------------------------------------------
---- |
126 # These defines could all be moved into the header below | 114 # These defines could all be moved into the header below |
127 string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}") | 115 string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}") |
128 string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}") | 116 string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}") |
129 string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}") | 117 string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}") |
130 add_definitions( | 118 add_definitions( |
131 # # define in header now, else these get out of date on rebuilds
. | 119 # # define in header now, else these get out of date on rebuilds
. |
132 # -DBUILD_DATE="${BUILD_DATE}" | 120 # -DBUILD_DATE="${BUILD_DATE}" |
133 # -DBUILD_TIME="${BUILD_TIME}" | 121 # -DBUILD_TIME="${BUILD_TIME}" |
134 » » # -DBUILD_CHANGE="${BUILD_CHANGE}" | 122 » » # -DBUILD_REV="${BUILD_REV}" |
135 » » # -DBUILD_HASH="${BUILD_HASH}" | |
136 » » # -DBUILD_BRANCH="${BUILD_BRANCH}" | |
137 -DWITH_BUILDINFO_HEADER # alternative to lines above | 123 -DWITH_BUILDINFO_HEADER # alternative to lines above |
138 -DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}" | 124 -DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}" |
139 -DBUILD_TYPE="${CMAKE_BUILD_TYPE}" | 125 -DBUILD_TYPE="${CMAKE_BUILD_TYPE}" |
140 -DBUILD_CFLAGS="${BUILDINFO_CFLAGS}" | 126 -DBUILD_CFLAGS="${BUILDINFO_CFLAGS}" |
141 -DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}" | 127 -DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}" |
142 -DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}" | 128 -DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}" |
143 -DBUILD_SYSTEM="CMake" | 129 -DBUILD_SYSTEM="CMake" |
144 ) | 130 ) |
145 | 131 |
146 # ----------------------------------------------------------------------
---- | 132 # ----------------------------------------------------------------------
---- |
(...skipping 25 matching lines...) Expand all Loading... |
172 list(APPEND SRC | 158 list(APPEND SRC |
173 buildinfo.c | 159 buildinfo.c |
174 ) | 160 ) |
175 endif() | 161 endif() |
176 | 162 |
177 # message(STATUS "Configuring blender") | 163 # message(STATUS "Configuring blender") |
178 if(WITH_PYTHON_MODULE) | 164 if(WITH_PYTHON_MODULE) |
179 add_definitions(-DWITH_PYTHON_MODULE) | 165 add_definitions(-DWITH_PYTHON_MODULE) |
180 | 166 |
181 # creates ./bin/bpy.so which can be imported as a python module. | 167 # creates ./bin/bpy.so which can be imported as a python module. |
182 » # | 168 » add_library(blender SHARED ${SRC}) |
183 » # note that 'SHARED' works on Linux and Windows, | |
184 » # but not OSX which _must_ be 'MODULE' | |
185 » add_library(blender MODULE ${SRC}) | |
186 set_target_properties( | 169 set_target_properties( |
187 blender | 170 blender |
188 PROPERTIES | 171 PROPERTIES |
189 PREFIX "" | 172 PREFIX "" |
190 OUTPUT_NAME bpy | 173 OUTPUT_NAME bpy |
191 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin | 174 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin |
192 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only
needed on windows | 175 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only
needed on windows |
193 ) | 176 ) |
194 | 177 |
195 if(APPLE) | |
196 set_target_properties( | |
197 blender | |
198 PROPERTIES | |
199 LINK_FLAGS_RELEASE "${PLATFORM_LINKFLAGS}" | |
200 LINK_FLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG}" | |
201 ) | |
202 endif() | |
203 | |
204 if(WIN32) | 178 if(WIN32) |
205 # python modules use this | 179 # python modules use this |
206 set_target_properties( | 180 set_target_properties( |
207 blender | 181 blender |
208 PROPERTIES | 182 PROPERTIES |
209 SUFFIX ".pyd" | 183 SUFFIX ".pyd" |
210 ) | 184 ) |
211 endif() | 185 endif() |
212 | 186 |
213 else() | 187 else() |
(...skipping 15 matching lines...) Expand all Loading... |
229 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE}) | 203 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE}) |
230 else() | 204 else() |
231 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}) | 205 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}) |
232 endif() | 206 endif() |
233 | 207 |
234 set(BLENDER_TEXT_FILES | 208 set(BLENDER_TEXT_FILES |
235 ${CMAKE_SOURCE_DIR}/release/text/GPL-license.txt | 209 ${CMAKE_SOURCE_DIR}/release/text/GPL-license.txt |
236 ${CMAKE_SOURCE_DIR}/release/text/Python-license.txt | 210 ${CMAKE_SOURCE_DIR}/release/text/Python-license.txt |
237 ${CMAKE_SOURCE_DIR}/release/text/copyright.txt | 211 ${CMAKE_SOURCE_DIR}/release/text/copyright.txt |
238 ${CMAKE_SOURCE_DIR}/release/text/readme.html | 212 ${CMAKE_SOURCE_DIR}/release/text/readme.html |
239 ${CMAKE_SOURCE_DIR}/release/datafiles/LICENSE-bfont.ttf.txt | |
240 ) | 213 ) |
241 | 214 |
242 if(WITH_INTERNATIONAL) | |
243 list(APPEND BLENDER_TEXT_FILES | |
244 ${CMAKE_SOURCE_DIR}/release/datafiles/LICENSE-droidsans.ttf.txt | |
245 ${CMAKE_SOURCE_DIR}/release/datafiles/LICENSE-bmonofont-i18n.ttf
.txt | |
246 ) | |
247 endif() | |
248 | |
249 | 215 |
250 # ----------------------------------------------------------------------------- | 216 # ----------------------------------------------------------------------------- |
251 # Platform Specific Var: TARGETDIR_VER | 217 # Platform Spesific Var: TARGETDIR_VER |
252 | 218 |
253 if(UNIX AND NOT APPLE) | 219 if(UNIX AND NOT APPLE) |
254 if(WITH_INSTALL_PORTABLE) | 220 if(WITH_INSTALL_PORTABLE) |
255 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION}) | 221 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION}) |
256 else() | 222 else() |
257 if(WITH_PYTHON_MODULE) | 223 if(WITH_PYTHON_MODULE) |
258 set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSI
ON}/site-packages/${BLENDER_VERSION}) | 224 set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSI
ON}/site-packages/${BLENDER_VERSION}) |
259 else() | 225 else() |
260 set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/
${BLENDER_VERSION}) | 226 set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/
${BLENDER_VERSION}) |
261 endif() | 227 endif() |
262 endif() | 228 endif() |
263 | 229 |
264 elseif(WIN32) | 230 elseif(WIN32) |
265 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION}) | 231 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION}) |
266 | 232 |
267 elseif(APPLE) | 233 elseif(APPLE) |
268 » if(WITH_PYTHON_MODULE) | 234 » set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERS
ION}) |
269 » » set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION}) | |
270 » else() | |
271 » » set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLEN
DER_VERSION}) | |
272 » endif() | |
273 | 235 |
274 endif() | 236 endif() |
275 | 237 |
276 | 238 |
277 # ----------------------------------------------------------------------------- | 239 # ----------------------------------------------------------------------------- |
278 # Install Targets (Generic, All Platforms) | 240 # Install Targets (Generic, All Platforms) |
279 | 241 |
280 | 242 |
281 # important to make a clean install each time, else old scripts get loaded. | 243 # important to make a clean install each time, else old scripts get loaded. |
282 install( | 244 install( |
283 CODE | 245 CODE |
284 "file(REMOVE_RECURSE ${TARGETDIR_VER})" | 246 "file(REMOVE_RECURSE ${TARGETDIR_VER})" |
285 ) | 247 ) |
286 | 248 |
287 if(WITH_PYTHON) | 249 if(WITH_PYTHON) |
288 # install(CODE "message(\"copying blender scripts...\")") | 250 # install(CODE "message(\"copying blender scripts...\")") |
289 ········ | 251 ········ |
290 # exclude addons_contrib if release | 252 # exclude addons_contrib if release |
291 if("${BLENDER_VERSION_CYCLE}" STREQUAL "release") | 253 if("${BLENDER_VERSION_CYCLE}" STREQUAL "release") |
292 set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*") | 254 set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*") |
293 else() | 255 else() |
294 set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, won
t do anything | 256 set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, won
t do anything |
295 endif() | 257 endif() |
296 | 258 |
297 # do not install freestyle dir if disabled | |
298 if(NOT WITH_FREESTYLE) | |
299 set(FREESTYLE_EXCLUDE_CONDITIONAL "freestyle/*") | |
300 else() | |
301 set(FREESTYLE_EXCLUDE_CONDITIONAL "_freestyle/*") # dummy, wont
do anything | |
302 endif() | |
303 | |
304 install( | 259 install( |
305 DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts | 260 DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts |
306 DESTINATION ${TARGETDIR_VER} | 261 DESTINATION ${TARGETDIR_VER} |
307 PATTERN ".svn" EXCLUDE | 262 PATTERN ".svn" EXCLUDE |
308 PATTERN "__pycache__" EXCLUDE | 263 PATTERN "__pycache__" EXCLUDE |
309 PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE | 264 PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE |
310 PATTERN "${FREESTYLE_EXCLUDE_CONDITIONAL}" EXCLUDE | |
311 ) | 265 ) |
312 ········ | 266 ········ |
313 unset(ADDON_EXCLUDE_CONDITIONAL) | 267 unset(ADDON_EXCLUDE_CONDITIONAL) |
314 unset(FREESTYLE_EXCLUDE_CONDITIONAL) | |
315 endif() | 268 endif() |
316 | 269 |
317 # localization | 270 # localization |
318 if(WITH_INTERNATIONAL) | 271 if(WITH_INTERNATIONAL) |
319 install( | 272 install( |
320 DIRECTORY | 273 DIRECTORY |
| 274 ${CMAKE_SOURCE_DIR}/release/datafiles/locale |
321 ${CMAKE_SOURCE_DIR}/release/datafiles/fonts | 275 ${CMAKE_SOURCE_DIR}/release/datafiles/fonts |
322 DESTINATION ${TARGETDIR_VER}/datafiles | |
323 PATTERN ".svn" EXCLUDE | |
324 ) | |
325 | |
326 set(_locale_dir "${CMAKE_SOURCE_DIR}/release/datafiles/locale") | |
327 | |
328 if(EXISTS "${_locale_dir}/po") | |
329 set(_locale_target_dir ${TARGETDIR_VER}/datafiles/locale) | |
330 | |
331 file(GLOB _po_files "${_locale_dir}/po/*.po") | |
332 foreach(_po_file ${_po_files}) | |
333 msgfmt_simple(${_po_file} _all_mo_files) | |
334 endforeach() | |
335 | |
336 # Create a custom target which will compile all po to mo | |
337 add_custom_target( | |
338 locales | |
339 DEPENDS ${_all_mo_files}) | |
340 | |
341 add_dependencies(blender locales) | |
342 | |
343 # Generate INSTALL rules | |
344 install( | |
345 FILES ${_locale_dir}/languages | |
346 DESTINATION ${_locale_target_dir} | |
347 ) | |
348 | |
349 foreach(_mo_file ${_all_mo_files}) | |
350 get_filename_component(_locale_name ${_mo_file} NAME_WE) | |
351 install( | |
352 FILES ${_mo_file} | |
353 DESTINATION ${_locale_target_dir}/${_locale_name
}/LC_MESSAGES | |
354 RENAME blender.mo | |
355 ) | |
356 unset(_locale_name) | |
357 endforeach() | |
358 | |
359 unset(_all_mo_files) | |
360 unset(_po_files) | |
361 unset(_po_file) | |
362 unset(_mo_file) | |
363 unset(_locale_target_dir) | |
364 else() | |
365 install( | |
366 DIRECTORY | |
367 ${_locale_dir} | |
368 DESTINATION ${TARGETDIR_VER}/datafiles | |
369 PATTERN ".svn" EXCLUDE | |
370 ) | |
371 endif() | |
372 | |
373 unset(_locale_dir) | |
374 endif() | |
375 | |
376 # color management | |
377 if(WITH_OPENCOLORIO) | |
378 install( | |
379 DIRECTORY ${CMAKE_SOURCE_DIR}/release/datafiles/colormanagement | |
380 DESTINATION ${TARGETDIR_VER}/datafiles | 276 DESTINATION ${TARGETDIR_VER}/datafiles |
381 PATTERN ".svn" EXCLUDE | 277 PATTERN ".svn" EXCLUDE |
382 ) | 278 ) |
383 endif() | 279 endif() |
384 | 280 |
385 # helpful tip when using make | 281 # helpful tip when using make |
386 if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*") | 282 if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*") |
387 # message after building. | 283 # message after building. |
388 add_custom_command( | 284 add_custom_command( |
389 TARGET blender POST_BUILD MAIN_DEPENDENCY blender | 285 TARGET blender POST_BUILD MAIN_DEPENDENCY blender |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
469 install( | 365 install( |
470 FILES ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1 | 366 FILES ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1 |
471 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1 | 367 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1 |
472 ) | 368 ) |
473 install( | 369 install( |
474 FILES ${BLENDER_TEXT_FILES} | 370 FILES ${BLENDER_TEXT_FILES} |
475 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender | 371 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender |
476 ) | 372 ) |
477 endif() | 373 endif() |
478 | 374 |
| 375 # plugins in blender 2.5 don't work at the moment. |
| 376 # |
| 377 # install( |
| 378 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins |
| 379 # DESTINATION ${TARGETDIR_VER} |
| 380 # PATTERN ".svn" EXCLUDE |
| 381 # ) |
| 382 |
479 if(WITH_PYTHON) | 383 if(WITH_PYTHON) |
480 if(WITH_PYTHON_INSTALL) | 384 if(WITH_PYTHON_INSTALL) |
481 # on some platforms (like openSUSE) Python is linked | |
482 # to be used from lib64 folder. | |
483 # determine this from Python's libraries path | |
484 # | |
485 # ugh, its possible 'lib64' is just a symlink to 'lib' w
hich causes incorrect use of 'lib64' | |
486 get_filename_component(_pypath_real ${PYTHON_LIBPATH} RE
ALPATH) | |
487 if(${_pypath_real} MATCHES "lib64$") | |
488 set(_target_LIB "lib64") | |
489 else() | |
490 set(_target_LIB "lib") | |
491 endif() | |
492 unset(_pypath_real) | |
493 | |
494 # Copy the systems python into the install directory | 385 # Copy the systems python into the install directory |
495 # Scons copy in tools/Blender.py | 386 # Scons copy in tools/Blender.py |
496 # install(CODE "message(\"copying a subset of the system
s python...\")") | 387 # install(CODE "message(\"copying a subset of the system
s python...\")") |
497 install( | 388 install( |
498 DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSI
ON} | 389 DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSI
ON} |
499 » » » » DESTINATION ${TARGETDIR_VER}/python/${_target_LI
B} | 390 » » » » DESTINATION ${TARGETDIR_VER}/python/lib |
500 PATTERN ".svn" EXCLUDE | 391 PATTERN ".svn" EXCLUDE |
501 PATTERN "__pycache__" EXCLUDE # *
any cache * | 392 PATTERN "__pycache__" EXCLUDE # *
any cache * |
502 PATTERN "distutils" EXCLUDE # ./
distutils | 393 PATTERN "distutils" EXCLUDE # ./
distutils |
503 PATTERN "lib2to3" EXCLUDE # ./
lib2to3 | 394 PATTERN "lib2to3" EXCLUDE # ./
lib2to3 |
504 PATTERN "config" EXCLUDE # ./
config | 395 PATTERN "config" EXCLUDE # ./
config |
505 PATTERN "config-*" EXCLUDE # ./
config-* | 396 PATTERN "config-*" EXCLUDE # ./
config-* |
506 PATTERN "site-packages/*" EXCLUDE # ./
site-packages/* | 397 PATTERN "site-packages/*" EXCLUDE # ./
site-packages/* |
507 PATTERN "tkinter" EXCLUDE # ./
tkinter | 398 PATTERN "tkinter" EXCLUDE # ./
tkinter |
508 PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./
lib-dynload/_tkinter.co | 399 PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./
lib-dynload/_tkinter.co |
509 PATTERN "idlelib" EXCLUDE # ./
idlelib | 400 PATTERN "idlelib" EXCLUDE # ./
idlelib |
510 PATTERN "test" EXCLUDE # ./
test | 401 PATTERN "test" EXCLUDE # ./
test |
511 PATTERN "turtledemo" EXCLUDE # ./
turtledemo | 402 PATTERN "turtledemo" EXCLUDE # ./
turtledemo |
512 PATTERN "turtle.py" EXCLUDE
# ./turtle.py | 403 PATTERN "turtle.py" EXCLUDE
# ./turtle.py |
513 ) | 404 ) |
514 | 405 |
515 # # doesnt work, todo | 406 # # doesnt work, todo |
516 # install(CODE "execute_process(COMMAND find ${TARGETDIR
}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')") | 407 # install(CODE "execute_process(COMMAND find ${TARGETDIR
}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')") |
517 ························ | |
518 if(WITH_PYTHON_INSTALL_NUMPY) | |
519 install( | |
520 DIRECTORY ${PYTHON_NUMPY_PATH}/numpy | |
521 DESTINATION ${TARGETDIR_VER}/python/${_t
arget_LIB}/python${PYTHON_VERSION}/site-packages | |
522 PATTERN ".svn" EXCLUDE | |
523 PATTERN "__pycache__" EXCLUDE
# * any cache * | |
524 PATTERN "*.pyc" EXCLUDE
# * any cache * | |
525 PATTERN "*.pyo" EXCLUDE
# * any cache * | |
526 PATTERN "distutils" EXCLUDE
# ./distutils | |
527 PATTERN "oldnumeric" EXCLUDE
# ./oldnumeric | |
528 PATTERN "doc" EXCLUDE
# ./doc | |
529 PATTERN "tests" EXCLUDE
# ./tests | |
530 PATTERN "f2py" EXCLUDE
# ./f2py - fortran/python interface code, not fun for blender devs. | |
531 PATTERN "include" EXCLUDE
# include dirs all over, we wont use NumPy/CAPI | |
532 PATTERN "*.h" EXCLUDE
# some includes are not in include dirs | |
533 PATTERN "*.a" EXCLUDE
# ./core/lib/libnpymath.a - for linking, we dont need. | |
534 ) | |
535 endif() | |
536 ························ | |
537 unset(_target_LIB) | |
538 ························ | |
539 endif() | 408 endif() |
540 endif() | 409 endif() |
541 elseif(WIN32) | 410 elseif(WIN32) |
542 | 411 |
543 install( | 412 install( |
544 FILES ${BLENDER_TEXT_FILES} | 413 FILES ${BLENDER_TEXT_FILES} |
545 DESTINATION ${TARGETDIR} | 414 DESTINATION ${TARGETDIR} |
546 ) | 415 ) |
547 | 416 |
| 417 if(WITH_INTERNATIONAL) |
| 418 install( |
| 419 FILES ${LIBDIR}/gettext/lib/gnu_gettext.dll |
| 420 DESTINATION ${TARGETDIR} |
| 421 ) |
| 422 |
| 423 if(NOT CMAKE_CL_64) |
| 424 install( |
| 425 FILES ${LIBDIR}/iconv/lib/iconv.dll |
| 426 DESTINATION ${TARGETDIR} |
| 427 ) |
| 428 endif() |
| 429 endif() |
| 430 |
| 431 # plugins in blender 2.5 don't work at the moment. |
| 432 # |
| 433 # install( |
| 434 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins |
| 435 # DESTINATION ${TARGETDIR_VER} |
| 436 # PATTERN ".svn" EXCLUDE |
| 437 # ) |
| 438 |
548 if(WITH_PYTHON) | 439 if(WITH_PYTHON) |
549 » » string(REPLACE "." "" _PYTHON_VERSION_NO_DOTS ${PYTHON_VERSION}) | 440 » » set_lib_path(PYLIB "python/lib") |
550 | 441 » » install( |
551 » » install( | 442 » » » FILES ${PYLIB}/python32.dll |
552 » » » FILES ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DO
TS}.dll | |
553 DESTINATION ${TARGETDIR} | 443 DESTINATION ${TARGETDIR} |
554 CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel | 444 CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel |
555 ) | 445 ) |
556 | 446 |
557 install( | 447 install( |
558 » » » FILES ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DO
TS}_d.dll | 448 » » » FILES ${PYLIB}/python32_d.dll |
559 DESTINATION ${TARGETDIR} | 449 DESTINATION ${TARGETDIR} |
560 CONFIGURATIONS Debug | 450 CONFIGURATIONS Debug |
561 ) | 451 ) |
562 | 452 |
563 if(WITH_PYTHON_INSTALL) | 453 if(WITH_PYTHON_INSTALL) |
564 # note, as far as python is concerned 'RelWithDebInfo' i
s not debug since its without debug flags. | 454 # note, as far as python is concerned 'RelWithDebInfo' i
s not debug since its without debug flags. |
565 | 455 |
566 # create the directory in multiple steps, so it actually
gets created when it doesn't exist yet | 456 # create the directory in multiple steps, so it actually
gets created when it doesn't exist yet |
567 install( | 457 install( |
568 CODE | 458 CODE |
569 " | 459 " |
570 message(\"creating ${TARGETDIR_VER}/python/lib\"
) | 460 message(\"creating ${TARGETDIR_VER}/python/lib\"
) |
571 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\") | 461 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\") |
572 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/li
b\") | 462 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/li
b\") |
573 message(\"done creating dir\") | 463 message(\"done creating dir\") |
574 " | 464 " |
575 ) | 465 ) |
576 | 466 |
577 install( | 467 install( |
578 CODE | 468 CODE |
579 " | 469 " |
580 if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"
Debug\") | 470 if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"
Debug\") |
581 execute_process(COMMAND \"${CMAKE_COMMAN
D}\" -E chdir \"${TARGETDIR_VER}/python/lib\" | 471 execute_process(COMMAND \"${CMAKE_COMMAN
D}\" -E chdir \"${TARGETDIR_VER}/python/lib\" |
582 » » » » » » \"${CMAKE_COMMAND}\" -E tar xzfv
\"${LIBDIR}/release/python${_PYTHON_VERSION_NO_DOTS}_d.tar.gz\") | 472 » » » » » » \"${CMAKE_COMMAND}\" -E tar xzfv
\"${LIBDIR}/release/python32_d.tar.gz\") |
583 else() | 473 else() |
584 execute_process(COMMAND \"${CMAKE_COMMAN
D}\" -E chdir \"${TARGETDIR_VER}/python/lib\" | 474 execute_process(COMMAND \"${CMAKE_COMMAN
D}\" -E chdir \"${TARGETDIR_VER}/python/lib\" |
585 » » » » » » \"${CMAKE_COMMAND}\" -E tar xzfv
\"${LIBDIR}/release/python${_PYTHON_VERSION_NO_DOTS}.tar.gz\") | 475 » » » » » » \"${CMAKE_COMMAND}\" -E tar xzfv
\"${LIBDIR}/release/python32.tar.gz\") |
586 endif() | 476 endif() |
587 " | 477 " |
588 ) | 478 ) |
589 | 479 |
590 # doesnt work, todo | 480 # doesnt work, todo |
591 # install(CODE "execute_process(COMMAND find ${TARGETDIR
}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')") | 481 # install(CODE "execute_process(COMMAND find ${TARGETDIR
}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')") |
592 endif() | 482 endif() |
593 | 483 » endif() |
594 » » unset(_PYTHON_VERSION_NO_DOTS) | 484 |
| 485 » if(CMAKE_CL_64) |
| 486 » » # gettext and png are statically linked on win64 |
| 487 » » install( |
| 488 » » » FILES ${LIBDIR}/zlib/lib/zlib.dll |
| 489 » » » DESTINATION ${TARGETDIR} |
| 490 » » ) |
| 491 » else() |
| 492 » » install( |
| 493 » » » FILES |
| 494 » » » » ${LIBDIR}/zlib/lib/zlib.dll |
| 495 » » » DESTINATION ${TARGETDIR} |
| 496 » » ) |
595 endif() | 497 endif() |
596 | 498 |
597 if(MSVC) | 499 if(MSVC) |
598 install( | 500 install( |
599 FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll | 501 FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll |
600 DESTINATION ${TARGETDIR} | 502 DESTINATION ${TARGETDIR} |
601 ) | 503 ) |
602 else() | 504 else() |
603 » » #MinGW64 comes with own version. For portable builds it will pro
baly have to be copied to work | 505 » » install( |
604 » » if(NOT WITH_MINGW64) | 506 » » » FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll |
605 » » » install( | 507 » » » DESTINATION ${TARGETDIR} |
606 » » » » FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll | 508 » » ) |
607 » » » » DESTINATION ${TARGETDIR} | |
608 » » » ) | |
609 » » elseif(WITH_MINGW64) | |
610 » » » install( | |
611 » » » » FILES· | |
612 » » » » » ${LIBDIR}/binaries/libgcc_s_sjlj-1.dll | |
613 » » » » » ${LIBDIR}/binaries/libwinpthread-1.dll | |
614 » » » » » ${LIBDIR}/binaries/libstdc++-6.dll | |
615 » » » » DESTINATION ${TARGETDIR} | |
616 » » » ) | |
617 » » »······· | |
618 » » » if(WITH_OPENMP) | |
619 » » » » install( | |
620 » » » » » FILES· | |
621 » » » » » ${LIBDIR}/binaries/libgomp-1.dll | |
622 » » » » » DESTINATION ${TARGETDIR} | |
623 » » » » ) | |
624 » » » endif() | |
625 » » endif() | |
626 endif() | 509 endif() |
627 | 510 |
628 if(WITH_CODEC_FFMPEG) | 511 if(WITH_CODEC_FFMPEG) |
629 if(MSVC11) | |
630 install( | |
631 FILES | |
632 ${LIBDIR}/ffmpeg/lib/avcodec-54.dll | |
633 ${LIBDIR}/ffmpeg/lib/avformat-54.dll | |
634 ${LIBDIR}/ffmpeg/lib/avdevice-54.dll | |
635 ${LIBDIR}/ffmpeg/lib/avutil-52.dll | |
636 ${LIBDIR}/ffmpeg/lib/avfilter-3.dll | |
637 ${LIBDIR}/ffmpeg/lib/swresample-0.dll | |
638 ${LIBDIR}/ffmpeg/lib/swscale-2.dll | |
639 DESTINATION ${TARGETDIR} | |
640 ) | |
641 else() | |
642 install( | |
643 FILES | |
644 ${LIBDIR}/ffmpeg/lib/avcodec-53.dll | |
645 ${LIBDIR}/ffmpeg/lib/avformat-53.dll | |
646 ${LIBDIR}/ffmpeg/lib/avdevice-53.dll | |
647 ${LIBDIR}/ffmpeg/lib/avutil-51.dll | |
648 ${LIBDIR}/ffmpeg/lib/swscale-2.dll | |
649 DESTINATION ${TARGETDIR} | |
650 ) | |
651 endif() | |
652 if(WITH_MINGW64) | |
653 install( | 512 install( |
654 FILES | 513 FILES |
655 » » » » ${LIBDIR}/ffmpeg/lib/swresample-0.dll | 514 » » » » ${LIBDIR}/ffmpeg/lib/avcodec-53.dll |
656 » » » » ${LIBDIR}/ffmpeg/lib/xvidcore.dll | 515 » » » » ${LIBDIR}/ffmpeg/lib/avformat-53.dll |
657 » » » DESTINATION ${TARGETDIR} | 516 » » » » ${LIBDIR}/ffmpeg/lib/avdevice-53.dll |
658 » » ) | 517 » » » » ${LIBDIR}/ffmpeg/lib/avutil-51.dll |
659 » » endif() | 518 » » » » ${LIBDIR}/ffmpeg/lib/swscale-2.dll |
| 519 » » » DESTINATION ${TARGETDIR} |
| 520 » » ) |
| 521 |
660 endif() | 522 endif() |
661 | 523 |
662 if(WITH_CODEC_SNDFILE) | 524 if(WITH_CODEC_SNDFILE) |
663 install( | 525 install( |
664 FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll | 526 FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll |
665 DESTINATION ${TARGETDIR} | 527 DESTINATION ${TARGETDIR} |
666 ) | 528 ) |
667 endif() | 529 endif() |
668 | 530 |
669 if(WITH_OPENAL) | 531 if(WITH_OPENAL) |
670 » » if(MSVC11) | 532 » » install( |
671 » » » install( | 533 » » » FILES |
672 » » » » FILES | 534 » » » » ${LIBDIR}/openal/lib/OpenAL32.dll |
673 » » » » » ${LIBDIR}/openal/lib/OpenAL32.dll | 535 » » » DESTINATION ${TARGETDIR} |
674 » » » » DESTINATION ${TARGETDIR} | 536 » » ) |
675 » » » ) | 537 » endif() |
676 » » else() | |
677 » » » install( | |
678 » » » » FILES | |
679 » » » » » ${LIBDIR}/openal/lib/OpenAL32.dll | |
680 » » » » » ${LIBDIR}/openal/lib/wrap_oal.dll | |
681 » » » » DESTINATION ${TARGETDIR} | |
682 » » » ) | |
683 » » endif() | |
684 » endif() | |
685 | |
686 #» if(WITH_JACK AND MSVC11) | |
687 #» » if(CMAKE_CL_64) | |
688 #» » » install( | |
689 #» » » » FILES | |
690 #» » » » » ${LIBDIR}/jack/lib/libjack64.dll | |
691 #» » » » DESTINATION ${TARGETDIR} | |
692 #» » » ) | |
693 #» » else() | |
694 #» » » install( | |
695 #» » » » FILES | |
696 #» » » » » ${LIBDIR}/jack/lib/libjack.dll | |
697 #» » » » DESTINATION ${TARGETDIR} | |
698 #» » » ) | |
699 #» » endif() | |
700 #» endif() | |
701 | 538 |
702 if(WITH_SDL) | 539 if(WITH_SDL) |
703 if(NOT CMAKE_CL_64) | 540 if(NOT CMAKE_CL_64) |
704 install( | 541 install( |
705 FILES ${LIBDIR}/sdl/lib/SDL.dll | 542 FILES ${LIBDIR}/sdl/lib/SDL.dll |
706 DESTINATION ${TARGETDIR} | 543 DESTINATION ${TARGETDIR} |
707 ) | 544 ) |
708 endif() | 545 endif() |
709 endif() | 546 endif() |
710 | 547 |
711 if(NOT CMAKE_CL_64) | 548 if(NOT CMAKE_CL_64) |
712 install( | 549 install( |
713 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll | 550 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll |
714 DESTINATION ${TARGETDIR} | 551 DESTINATION ${TARGETDIR} |
715 ) | 552 ) |
716 endif() | 553 endif() |
717 ················ | 554 ················ |
718 install( # x86 builds can run on x64 Windows, so this is required at all
times | 555 install( # x86 builds can run on x64 Windows, so this is required at all
times |
719 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll | 556 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll |
720 DESTINATION ${TARGETDIR} | 557 DESTINATION ${TARGETDIR} |
721 » ) | 558 » )»······ |
722 | 559 |
723 » if(WITH_OPENCOLORIO) | 560 » if(WITH_OPENIMAGEIO) |
724 » » set(OCIOBIN ${LIBDIR}/opencolorio/bin) | 561 » » set_lib_path(OIIOBIN "openimageio/bin") |
725 » » if(NOT MINGW) | 562 » » install( |
726 » » » install( | 563 » » » FILES |
727 » » » » FILES | 564 » » » » ${OIIOBIN}/OpenImageIO.dll |
728 » » » » » ${OCIOBIN}/OpenColorIO.dll | 565 » » » DESTINATION ${TARGETDIR} |
729 » » » » DESTINATION ${TARGETDIR} | 566 » » ) |
730 » » » ) | |
731 » » else() | |
732 » » » install( | |
733 » » » » FILES | |
734 » » » » » ${OCIOBIN}/libOpenColorIO.dll | |
735 » » » » DESTINATION ${TARGETDIR} | |
736 » » » ) | |
737 » » endif() | |
738 endif() | 567 endif() |
739 | 568 |
740 elseif(APPLE) | 569 elseif(APPLE) |
741 | 570 |
742 # handy install macro to exclude files, we use \$ escape for the "to" | 571 # handy install macro to exclude files, we use \$ escape for the "to" |
743 # argument when calling so ${BUILD_TYPE} does not get expanded | 572 # argument when calling so ${BUILD_TYPE} does not get expanded |
744 macro(install_dir from to) | 573 macro(install_dir from to) |
745 install( | 574 install( |
746 DIRECTORY ${from} | 575 DIRECTORY ${from} |
747 DESTINATION ${to} | 576 DESTINATION ${to} |
748 PATTERN ".svn" EXCLUDE | 577 PATTERN ".svn" EXCLUDE |
749 PATTERN "*.pyc" EXCLUDE | 578 PATTERN "*.pyc" EXCLUDE |
750 PATTERN "*.pyo" EXCLUDE | 579 PATTERN "*.pyo" EXCLUDE |
751 PATTERN "*.orig" EXCLUDE | 580 PATTERN "*.orig" EXCLUDE |
752 PATTERN "*.rej" EXCLUDE | 581 PATTERN "*.rej" EXCLUDE |
753 PATTERN "__pycache__" EXCLUDE | 582 PATTERN "__pycache__" EXCLUDE |
754 PATTERN "__MACOSX" EXCLUDE | 583 PATTERN "__MACOSX" EXCLUDE |
755 PATTERN ".DS_Store" EXCLUDE | 584 PATTERN ".DS_Store" EXCLUDE |
756 ) | 585 ) |
757 endmacro() | 586 endmacro() |
758 | 587 |
759 » set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/release/darwin/blender.app) | 588 » set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blender.app) |
760 | 589 |
761 # setup Info.plist | 590 # setup Info.plist |
762 execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OU
TPUT_STRIP_TRAILING_WHITESPACE) | 591 execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OU
TPUT_STRIP_TRAILING_WHITESPACE) |
763 | 592 |
764 set_target_properties(blender PROPERTIES | 593 set_target_properties(blender PROPERTIES |
765 MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plis
t | 594 MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plis
t |
766 MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION} | 595 MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION} |
767 MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_
DATE}") | 596 MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_
DATE}") |
768 | 597 |
769 | 598 |
770 # install release and app files | 599 # install release and app files |
771 install( | 600 install( |
772 FILES ${BLENDER_TEXT_FILES} | 601 FILES ${BLENDER_TEXT_FILES} |
773 DESTINATION ${TARGETDIR} | 602 DESTINATION ${TARGETDIR} |
774 ) | 603 ) |
775 | 604 |
776 install( | 605 install( |
777 FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo | 606 FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo |
778 DESTINATION ${TARGETDIR}/blender.app/Contents | 607 DESTINATION ${TARGETDIR}/blender.app/Contents |
779 ) | 608 ) |
780 | 609 |
781 install_dir( | 610 install_dir( |
782 ${OSX_APP_SOURCEDIR}/Contents/Resources | 611 ${OSX_APP_SOURCEDIR}/Contents/Resources |
783 \${TARGETDIR}/blender.app/Contents/ | 612 \${TARGETDIR}/blender.app/Contents/ |
784 ) | 613 ) |
785 | 614 |
786 # python | 615 # python |
787 » if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK) | 616 » if(WITH_PYTHON) |
788 # the python zip is first extract as part of the build process, | 617 # the python zip is first extract as part of the build process, |
789 # and then later installed as part of make install. this is much | 618 # and then later installed as part of make install. this is much |
790 # quicker, and means we can easily exclude files on copy | 619 # quicker, and means we can easily exclude files on copy |
791 # Not needed for PYTHON_MODULE or WEB_PLUGIN due uses Pyhon fra
mework | |
792 add_custom_target( | 620 add_custom_target( |
793 extractpyzip | 621 extractpyzip |
794 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python) | 622 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python) |
795 | 623 |
796 set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip") | 624 set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip") |
797 | 625 |
798 add_custom_command( | 626 add_custom_command( |
799 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python | 627 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python |
800 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/ | 628 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/ |
801 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/ | 629 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/ |
802 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CM
AKE_CURRENT_BINARY_DIR}/python/ | 630 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CM
AKE_CURRENT_BINARY_DIR}/python/ |
803 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP}) | 631 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP}) |
804 | 632 |
805 add_dependencies(blender extractpyzip) | 633 add_dependencies(blender extractpyzip) |
806 | 634 |
807 # copy extracted python files | 635 # copy extracted python files |
808 install_dir( | 636 install_dir( |
809 ${CMAKE_CURRENT_BINARY_DIR}/python | 637 ${CMAKE_CURRENT_BINARY_DIR}/python |
810 \${TARGETDIR_VER} | 638 \${TARGETDIR_VER} |
811 ) | 639 ) |
812 | 640 |
813 endif() | 641 endif() |
814 » | 642 |
815 # install blenderplayer bundle - copy of blender.app above. re-using mac
ros et al | 643 # install blenderplayer bundle - copy of blender.app above. re-using mac
ros et al |
816 # note we are using OSX Bundle as base and copying Blender dummy bundle
on top of it | 644 # note we are using OSX Bundle as base and copying Blender dummy bundle
on top of it |
817 if(WITH_GAMEENGINE AND WITH_PLAYER) | 645 if(WITH_GAMEENGINE AND WITH_PLAYER) |
818 » » set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/release/darwin/
blenderplayer.app) | 646 » » set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/b
lenderplayer.app) |
819 set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.
plist) | 647 set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.
plist) |
820 set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents
/MacOS/${BLENDER_VERSION}) | 648 set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents
/MacOS/${BLENDER_VERSION}) |
821 | 649 |
822 | 650 |
| 651 # important to make a clean install each time else old scripts
get loaded. |
| 652 install( |
| 653 CODE |
| 654 "file(REMOVE_RECURSE ${PLAYER_TARGETDIR_VER})" |
| 655 ) |
| 656 |
| 657 install( |
| 658 FILES ${OSX_APP_PLAYER_SOURCEDIR}/Contents/PkgInfo |
| 659 DESTINATION ${TARGETDIR}/blenderplayer.app/Contents |
| 660 ) |
| 661 |
| 662 install_dir( |
| 663 ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Resources |
| 664 \${TARGETDIR}/blenderplayer.app/Contents/ |
| 665 ) |
| 666 |
| 667 # python |
| 668 if(WITH_PYTHON) |
| 669 add_custom_command( |
| 670 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python |
| 671 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/pytho
n/ |
| 672 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python
/ |
| 673 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP}
-d ${CMAKE_CURRENT_BINARY_DIR}/python/ |
| 674 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP}) |
| 675 |
| 676 # copy extracted python files |
| 677 install_dir( |
| 678 ${CMAKE_CURRENT_BINARY_DIR}/python |
| 679 \${PLAYER_TARGETDIR_VER} |
| 680 ) |
| 681 endif() |
| 682 |
| 683 endif() |
| 684 endif() |
| 685 |
| 686 # ----------------------------------------------------------------------------- |
| 687 # Generic Install, for all targets |
| 688 |
| 689 |
| 690 |
| 691 # install more files specified elsewhere |
| 692 delayed_do_install(${TARGETDIR_VER}) |
| 693 |
| 694 unset(BLENDER_TEXT_FILES) |
| 695 |
| 696 |
| 697 # ----------------------------------------------------------------------------- |
| 698 # Setup link libs |
| 699 |
| 700 add_dependencies(blender makesdna) |
| 701 |
| 702 get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS) |
| 703 |
| 704 set(BLENDER_LINK_LIBS |
| 705 ${BLENDER_LINK_LIBS} |
| 706 bf_windowmanager |
| 707 bf_render |
| 708 ) |
| 709 |
| 710 if(WITH_MOD_FLUID) |
| 711 list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem) |
| 712 endif() |
| 713 |
| 714 if(WITH_CYCLES) |
| 715 list(APPEND BLENDER_LINK_LIBS |
| 716 cycles_render |
| 717 cycles_bvh |
| 718 cycles_device |
| 719 cycles_kernel |
| 720 cycles_util |
| 721 cycles_subd) |
| 722 endif() |
| 723 |
| 724 #if(UNIX) |
| 725 # Sort libraries |
| 726 set(BLENDER_SORTED_LIBS |
| 727 bf_windowmanager |
| 728 |
| 729 bf_editor_space_api |
| 730 bf_editor_space_action |
| 731 bf_editor_space_buttons |
| 732 bf_editor_space_console |
| 733 bf_editor_space_file |
| 734 bf_editor_space_graph |
| 735 bf_editor_space_image |
| 736 bf_editor_space_info |
| 737 bf_editor_space_logic |
| 738 bf_editor_space_nla |
| 739 bf_editor_space_node |
| 740 bf_editor_space_outliner |
| 741 bf_editor_space_script |
| 742 bf_editor_space_sequencer |
| 743 bf_editor_space_time |
| 744 bf_editor_space_userpref |
| 745 bf_editor_space_view3d |
| 746 bf_editor_space_clip |
| 747 |
| 748 bf_editor_text |
| 749 bf_editor_transform |
| 750 bf_editor_util |
| 751 bf_editor_uvedit |
| 752 bf_editor_curve |
| 753 bf_editor_armature |
| 754 bf_editor_gpencil |
| 755 bf_editor_interface |
| 756 bf_editor_mesh |
| 757 bf_editor_metaball |
| 758 bf_editor_object |
| 759 bf_editor_physics |
| 760 bf_editor_render |
| 761 bf_editor_screen |
| 762 bf_editor_sculpt_paint |
| 763 bf_editor_sound |
| 764 bf_editor_animation |
| 765 bf_editor_datafiles |
| 766 |
| 767 bf_render |
| 768 bf_intern_opennl |
| 769 bf_python |
| 770 bf_python_ext |
| 771 bf_python_mathutils |
| 772 bf_ikplugin |
| 773 bf_modifiers |
| 774 bf_blenkernel |
| 775 bf_nodes |
| 776 bf_gpu |
| 777 bf_blenloader |
| 778 bf_imbuf |
| 779 bf_blenlib |
| 780 bf_intern_ghost |
| 781 bf_intern_string |
| 782 bf_blenpluginapi |
| 783 bf_avi |
| 784 bf_imbuf_cineon |
| 785 bf_imbuf_openexr |
| 786 bf_imbuf_dds |
| 787 bf_collada |
| 788 bf_intern_bsp |
| 789 bf_intern_bop |
| 790 bf_intern_decimate |
| 791 bf_intern_elbeem |
| 792 bf_intern_ik |
| 793 bf_intern_memutil |
| 794 bf_intern_guardedalloc |
| 795 bf_intern_ctr |
| 796 ge_blen_routines |
| 797 ge_converter |
| 798 ge_phys_dummy |
| 799 ge_phys_bullet |
| 800 bf_intern_smoke |
| 801 extern_minilzo |
| 802 extern_lzma |
| 803 extern_colamd |
| 804 ge_logic_ketsji |
| 805 extern_recastnavigation |
| 806 ge_phys_common |
| 807 ge_logic |
| 808 ge_rasterizer |
| 809 ge_oglrasterizer |
| 810 ge_logic_expressions |
| 811 ge_scenegraph |
| 812 ge_logic_network |
| 813 ge_logic_ngnetwork |
| 814 extern_bullet |
| 815 ge_logic_loopbacknetwork |
| 816 bf_intern_moto |
| 817 extern_openjpeg |
| 818 extern_redcode |
| 819 ge_videotex |
| 820 bf_rna |
| 821 bf_dna |
| 822 bf_blenfont |
823 bf_blenfont | 823 bf_blenfont |
824 bf_intern_audaspace | 824 bf_intern_audaspace |
825 bf_intern_mikktspace | 825 bf_intern_mikktspace |
826 bf_intern_cycles | 826 bf_intern_cycles |
827 cycles_render | 827 cycles_render |
828 cycles_bvh | 828 cycles_bvh |
LEFT | RIGHT |