1
# -*- mode: cmake; indent-tabs-mode: t; -*-
2
# ***** BEGIN GPL LICENSE BLOCK *****
4
# This program is free software; you can redistribute it and/or
5
# modify it under the terms of the GNU General Public License
6
# as published by the Free Software Foundation; either version 2
7
# of the License, or (at your option) any later version.
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
# GNU General Public License for more details.
14
# You should have received a copy of the GNU General Public License
15
# along with this program; if not, write to the Free Software Foundation,
16
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18
# The Original Code is Copyright (C) 2006, Blender Foundation
19
# All rights reserved.
21
# The Original Code is: all of this file.
23
# Contributor(s): Jacques Beaurain.
25
# ***** END GPL LICENSE BLOCK *****
30
../../intern/guardedalloc
34
../blender/editors/include
37
../blender/render/extern/include
40
../blender/windowmanager
44
blender_include_dirs(../../intern/utfconv)
48
blender_include_dirs(../../extern/libmv)
49
add_definitions(-DWITH_LIBMV)
53
add_definitions(-DWITH_FFMPEG)
57
blender_include_dirs(../blender/python)
58
add_definitions(-DWITH_PYTHON)
60
if(WITH_PYTHON_SECURITY)
61
add_definitions(-DWITH_PYTHON_SECURITY)
66
add_definitions(-DWITH_HEADLESS)
70
blender_include_dirs(../gameengine/BlenderRoutines)
72
add_definitions(-DWITH_GAMEENGINE)
76
add_definitions(-DWITH_SDL)
80
add_definitions(-DWITH_BINRELOC)
81
blender_include_dirs(${BINRELOC_INCLUDE_DIRS})
84
# Setup the exe sources and buildinfo
89
# MSVC 2010 gives linking errors with the manifest
90
if(WIN32 AND NOT UNIX)
91
string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1)
92
string(SUBSTRING ${BLENDER_VERSION} 2 1 bver2)
93
string(SUBSTRING ${BLENDER_VERSION} 3 1 bver3)
97
-DBLEN_VER_RC_STR_M=${BLENDER_VERSION}
98
-DBLEN_VER_RC_1=${bver1}
99
-DBLEN_VER_RC_2=${bver2}
100
-DBLEN_VER_RC_3=${bver3}
105
-DBLEN_VER_RC_STR=${BLENDER_VERSION}
106
-DBLEN_VER_RC_1=${bver1}
107
-DBLEN_VER_RC_2=${bver2}
108
-DBLEN_VER_RC_3=${bver3}
115
../icons/winblender.rc
120
add_definitions(-DWITH_BUILDINFO)
121
# --------------------------------------------------------------------------
122
# These defines could all be moved into the header below
123
string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}")
124
string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}")
125
string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}")
127
# # define in header now, else these get out of date on rebuilds.
128
# -DBUILD_DATE="${BUILD_DATE}"
129
# -DBUILD_TIME="${BUILD_TIME}"
130
# -DBUILD_REV="${BUILD_REV}"
131
-DWITH_BUILDINFO_HEADER # alternative to lines above
132
-DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}"
133
-DBUILD_TYPE="${CMAKE_BUILD_TYPE}"
134
-DBUILD_CFLAGS="${BUILDINFO_CFLAGS}"
135
-DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}"
136
-DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}"
137
-DBUILD_SYSTEM="CMake"
140
# --------------------------------------------------------------------------
141
# write header for values that change each build
142
# note, generaed file is in build dir's source/creator
143
# except when used as an include path.
145
# include the output directory, where the buildinfo.h file is generated
146
include_directories(${CMAKE_BINARY_DIR}/source/creator)
148
# a custom target that is always built
149
add_custom_target(buildinfo ALL
150
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h)
152
# creates svnheader.h using cmake script
153
add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
154
COMMAND ${CMAKE_COMMAND}
155
-DSOURCE_DIR=${CMAKE_SOURCE_DIR}
156
-P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
158
# buildinfo.h is a generated file
159
set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
160
PROPERTIES GENERATED TRUE
161
HEADER_FILE_ONLY TRUE)
163
# add deps below, after adding blender
164
# -------------- done with header values.
171
# message(STATUS "Configuring blender")
172
if(WITH_PYTHON_MODULE)
173
add_definitions(-DWITH_PYTHON_MODULE)
175
# creates ./bin/bpy.so which can be imported as a python module.
177
# note that 'SHARED' works on Linux and Windows,
178
# but not OSX which _must_ be 'MODULE'
179
add_library(blender MODULE ${SRC})
180
set_target_properties(
185
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
186
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only needed on windows
190
set_target_properties(
193
LINK_FLAGS_RELEASE "${PLATFORM_LINKFLAGS}"
194
LINK_FLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG}"
199
# python modules use this
200
set_target_properties(
208
add_executable(blender ${EXETYPE} ${SRC})
212
# explicitly say that the executable depends on the buildinfo
213
add_dependencies(blender buildinfo)
216
# Post build steps for bundling/packaging.
220
# ${CMAKE_CFG_INTDIR} should replace \${BUILD_TYPE} when using add_command
221
set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
223
set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
225
set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH})
228
set(BLENDER_TEXT_FILES
229
${CMAKE_SOURCE_DIR}/release/text/copyright.txt
230
${CMAKE_SOURCE_DIR}/release/text/readme.html
234
# -----------------------------------------------------------------------------
235
# Platform Specific Var: TARGETDIR_VER
237
if(UNIX AND NOT APPLE)
238
if(WITH_INSTALL_PORTABLE)
239
set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
241
if(WITH_PYTHON_MODULE)
242
set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${BLENDER_VERSION})
244
set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/${BLENDER_VERSION})
249
set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
252
if(WITH_PYTHON_MODULE)
253
set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
255
set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERSION})
261
# -----------------------------------------------------------------------------
262
# Install Targets (Generic, All Platforms)
265
# important to make a clean install each time, else old scripts get loaded.
268
"file(REMOVE_RECURSE ${TARGETDIR_VER})"
272
# install(CODE "message(\"copying blender scripts...\")")
274
# exclude addons_contrib if release
275
if("${BLENDER_VERSION_CYCLE}" STREQUAL "release")
276
set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*")
278
set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, wont do anything
282
DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts/
283
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/blender/scripts/
284
PATTERN ".svn" EXCLUDE
285
PATTERN "__pycache__" EXCLUDE
286
PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE
289
unset(ADDON_EXCLUDE_CONDITIONAL)
293
if(WITH_INTERNATIONAL)
296
${CMAKE_SOURCE_DIR}/release/datafiles/locale/
297
${CMAKE_SOURCE_DIR}/release/datafiles/fonts
298
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/locale
299
PATTERN ".svn" EXCLUDE
303
# helpful tip when using make
304
if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*")
305
# message after building.
307
TARGET blender POST_BUILD MAIN_DEPENDENCY blender
308
COMMAND ${CMAKE_COMMAND} -E echo 'now run: \"make install\" to copy runtime files and scripts to ${TARGETDIR_VER}'
313
# -----------------------------------------------------------------------------
314
# Install Targets (Platform Specific)
316
if(UNIX AND NOT APPLE)
318
# there are a few differences between portable and system install
319
if(WITH_INSTALL_PORTABLE)
322
${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
323
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
324
${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
325
${CMAKE_SOURCE_DIR}/doc/manpage/blenderplayer.1
326
DESTINATION ${TARGETDIR}
331
${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
332
DESTINATION ${TARGETDIR}
336
FILES ${BLENDER_TEXT_FILES}
337
DESTINATION ${TARGETDIR}
341
# main blender binary
342
if(WITH_PYTHON_MODULE)
346
DESTINATION ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages
350
PROGRAMS ${TARGETDIR}/blender
351
DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
356
if(WITH_GAMEENGINE AND WITH_PLAYER)
358
PROGRAMS ${TARGETDIR}/blenderplayer
359
DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
365
FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
366
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications
370
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/16x16
371
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/22x22
372
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/24x24
373
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/32x32
374
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/48x48
375
${CMAKE_SOURCE_DIR}/release/freedesktop/icons/256x256
376
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor
377
PATTERN ".svn" EXCLUDE
378
PATTERN "*.svg" EXCLUDE
381
FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
382
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps
385
PROGRAMS ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
386
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/blender/scripts
390
${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
391
${CMAKE_SOURCE_DIR}/doc/manpage/blenderplayer.1
392
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1
395
FILES ${BLENDER_TEXT_FILES}
396
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender
400
# plugins in blender 2.6 don't work at the moment.
403
# DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
404
# DESTINATION ${TARGETDIR_VER}
405
# PATTERN ".svn" EXCLUDE
409
if(WITH_PYTHON_INSTALL)
410
# on some platforms (like openSUSE) Python is linked
411
# to be used from lib64 folder.
412
# determine this from Python's libraries path
413
if(${PYTHON_LIBPATH} MATCHES "lib64$")
414
set(_target_LIB "lib64")
416
set(_target_LIB "lib")
419
# Copy the systems python into the install directory
420
# Scons copy in tools/Blender.py
421
# install(CODE "message(\"copying a subset of the systems python...\")")
423
DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSION}
424
DESTINATION ${TARGETDIR_VER}/python/${_target_LIB}
425
PATTERN ".svn" EXCLUDE
426
PATTERN "__pycache__" EXCLUDE # * any cache *
427
PATTERN "distutils" EXCLUDE # ./distutils
428
PATTERN "lib2to3" EXCLUDE # ./lib2to3
429
PATTERN "config" EXCLUDE # ./config
430
PATTERN "config-*" EXCLUDE # ./config-*
431
PATTERN "site-packages/*" EXCLUDE # ./site-packages/*
432
PATTERN "tkinter" EXCLUDE # ./tkinter
433
PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./lib-dynload/_tkinter.co
434
PATTERN "idlelib" EXCLUDE # ./idlelib
435
PATTERN "test" EXCLUDE # ./test
436
PATTERN "turtledemo" EXCLUDE # ./turtledemo
437
PATTERN "turtle.py" EXCLUDE # ./turtle.py
440
# # doesnt work, todo
441
# install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
448
FILES ${BLENDER_TEXT_FILES}
449
DESTINATION ${TARGETDIR}
452
if(WITH_INTERNATIONAL AND (NOT WITH_MINGW64))
454
FILES ${LIBDIR}/gettext/lib/gnu_gettext.dll
455
DESTINATION ${TARGETDIR}
460
FILES ${LIBDIR}/iconv/lib/iconv.dll
461
DESTINATION ${TARGETDIR}
466
# plugins in blender 2.6 don't work at the moment.
469
# DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
470
# DESTINATION ${TARGETDIR_VER}
471
# PATTERN ".svn" EXCLUDE
475
set_lib_path(PYLIB "python/lib")
477
FILES ${PYLIB}/python32.dll
478
DESTINATION ${TARGETDIR}
479
CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel
483
FILES ${PYLIB}/python32_d.dll
484
DESTINATION ${TARGETDIR}
488
if(WITH_PYTHON_INSTALL)
489
# note, as far as python is concerned 'RelWithDebInfo' is not debug since its without debug flags.
491
# create the directory in multiple steps, so it actually gets created when it doesn't exist yet
495
message(\"creating ${TARGETDIR_VER}/python/lib\")
496
file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\")
497
file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/lib\")
498
message(\"done creating dir\")
505
if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"Debug\")
506
execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
507
\"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32_d.tar.gz\")
509
execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
510
\"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32.tar.gz\")
516
# install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
521
# gettext and png are statically linked on win64
523
FILES ${LIBDIR}/zlib/lib/zlib.dll
524
DESTINATION ${TARGETDIR}
527
#not needed since we link statically, maybe also unneeded for MinGW?
531
${LIBDIR}/zlib/lib/zlib.dll
532
DESTINATION ${TARGETDIR}
539
FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll
540
DESTINATION ${TARGETDIR}
543
#MinGW64 comes with own version. For portable builds it will probaly have to be copied to work
546
FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll
547
DESTINATION ${TARGETDIR}
552
if(WITH_CODEC_FFMPEG)
555
${LIBDIR}/ffmpeg/lib/avcodec-53.dll
556
${LIBDIR}/ffmpeg/lib/avformat-53.dll
557
${LIBDIR}/ffmpeg/lib/avdevice-53.dll
558
${LIBDIR}/ffmpeg/lib/avutil-51.dll
559
${LIBDIR}/ffmpeg/lib/swscale-2.dll
560
DESTINATION ${TARGETDIR}
565
if(WITH_CODEC_SNDFILE)
567
FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll
568
DESTINATION ${TARGETDIR}
575
${LIBDIR}/openal/lib/OpenAL32.dll
576
${LIBDIR}/openal/lib/wrap_oal.dll
577
DESTINATION ${TARGETDIR}
584
FILES ${LIBDIR}/sdl/lib/SDL.dll
585
DESTINATION ${TARGETDIR}
592
FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll
593
DESTINATION ${TARGETDIR}
597
install( # x86 builds can run on x64 Windows, so this is required at all times
598
FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll
599
DESTINATION ${TARGETDIR}
604
set_lib_path(OIIOBIN "openimageio/bin")
607
${OIIOBIN}/OpenImageIO.dll
608
DESTINATION ${TARGETDIR}
615
# handy install macro to exclude files, we use \$ escape for the "to"
616
# argument when calling so ${BUILD_TYPE} does not get expanded
617
macro(install_dir from to)
621
PATTERN ".svn" EXCLUDE
622
PATTERN "*.pyc" EXCLUDE
623
PATTERN "*.pyo" EXCLUDE
624
PATTERN "*.orig" EXCLUDE
625
PATTERN "*.rej" EXCLUDE
626
PATTERN "__pycache__" EXCLUDE
627
PATTERN "__MACOSX" EXCLUDE
628
PATTERN ".DS_Store" EXCLUDE
632
set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blender.app)
635
execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
637
set_target_properties(blender PROPERTIES
638
MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plist
639
MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION}
640
MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_DATE}")
643
# install release and app files
645
FILES ${BLENDER_TEXT_FILES}
646
DESTINATION ${TARGETDIR}
650
FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo
651
DESTINATION ${TARGETDIR}/blender.app/Contents
655
${OSX_APP_SOURCEDIR}/Contents/Resources
656
\${TARGETDIR}/blender.app/Contents/
660
if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE)
661
# the python zip is first extract as part of the build process,
662
# and then later installed as part of make install. this is much
663
# quicker, and means we can easily exclude files on copy
664
# Not needed for PYTHON_MODULE or WEB_PLUGIN due uses Pyhon framework
667
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python)
669
set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip")
672
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
673
COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
674
COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
675
COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
676
DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
678
add_dependencies(blender extractpyzip)
680
# copy extracted python files
682
${CMAKE_CURRENT_BINARY_DIR}/python
688
# install blenderplayer bundle - copy of blender.app above. re-using macros et al
689
# note we are using OSX Bundle as base and copying Blender dummy bundle on top of it
690
if(WITH_GAMEENGINE AND WITH_PLAYER)
691
set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blenderplayer.app)
692
set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.plist)
693
set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents/MacOS/${BLENDER_VERSION})
696
# important to make a clean install each time else old scripts get loaded.
699
"file(REMOVE_RECURSE ${PLAYER_TARGETDIR_VER})"
703
FILES ${OSX_APP_PLAYER_SOURCEDIR}/Contents/PkgInfo
704
DESTINATION ${TARGETDIR}/blenderplayer.app/Contents
708
${OSX_APP_PLAYER_SOURCEDIR}/Contents/Resources
709
\${TARGETDIR}/blenderplayer.app/Contents/
715
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
716
COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
717
COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
718
COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
719
DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
721
# copy extracted python files
723
${CMAKE_CURRENT_BINARY_DIR}/python
724
\${PLAYER_TARGETDIR_VER}
731
# -----------------------------------------------------------------------------
732
# Generic Install, for all targets
736
# install more files specified elsewhere
737
delayed_do_install(${TARGETDIR_VER})
739
unset(BLENDER_TEXT_FILES)
742
# -----------------------------------------------------------------------------
745
add_dependencies(blender makesdna)
747
get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS)
749
set(BLENDER_LINK_LIBS
756
list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem)
760
list(APPEND BLENDER_LINK_LIBS
771
set(BLENDER_SORTED_LIBS
775
bf_editor_space_action
776
bf_editor_space_buttons
777
bf_editor_space_console
779
bf_editor_space_graph
780
bf_editor_space_image
782
bf_editor_space_logic
785
bf_editor_space_outliner
786
bf_editor_space_script
787
bf_editor_space_sequencer
789
bf_editor_space_userpref
790
bf_editor_space_view3d
807
bf_editor_sculpt_paint
841
bf_intern_guardedalloc
853
extern_recastnavigation
863
ge_logic_loopbacknetwork
884
list(APPEND BLENDER_SORTED_LIBS extern_libmv)
887
if(WITH_MOD_CLOTH_ELTOPO)
888
list(APPEND BLENDER_SORTED_LIBS extern_eltopo)
891
if(WITH_BUILTIN_GLEW)
892
list(APPEND BLENDER_SORTED_LIBS extern_glew)
896
list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
899
if(WITH_CXX_GUARDEDALLOC)
900
list(APPEND BLENDER_SORTED_LIBS bf_intern_guardedalloc_cpp)
904
list(APPEND BLENDER_SORTED_LIBS bf_intern_itasc)
907
if(WITH_CODEC_QUICKTIME)
908
list(APPEND BLENDER_SORTED_LIBS bf_quicktime)
912
list(APPEND BLENDER_SORTED_LIBS extern_carve)
916
list(APPEND BLENDER_SORTED_LIBS extern_xdnd)
919
foreach(SORTLIB ${BLENDER_SORTED_LIBS})
920
set(REMLIB ${SORTLIB})
921
foreach(SEARCHLIB ${BLENDER_LINK_LIBS})
922
if(${SEARCHLIB} STREQUAL ${SORTLIB})
927
# message(STATUS "Removing library ${REMLIB} from blender linking because: not configured")
928
list(APPEND REM_MSG ${REMLIB})
929
list(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
934
message(STATUS "Blender Skipping: (${REM_MSG})")
936
target_link_libraries(blender ${BLENDER_SORTED_LIBS})
944
# target_link_libraries(blender ${BLENDER_LINK_LIBS})
947
setup_liblinks(blender)