Cleanup: use 2 space indentation for CMake
This commit is contained in:
1766
CMakeLists.txt
1766
CMakeLists.txt
@@ -24,20 +24,20 @@
|
|||||||
# build the libs and objects in it.
|
# build the libs and objects in it.
|
||||||
|
|
||||||
if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
|
if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
|
||||||
if(NOT DEFINED WITH_IN_SOURCE_BUILD)
|
if(NOT DEFINED WITH_IN_SOURCE_BUILD)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"CMake generation for blender is not allowed within the source directory!"
|
"CMake generation for blender is not allowed within the source directory!"
|
||||||
"\n Remove \"${CMAKE_SOURCE_DIR}/CMakeCache.txt\" and try again from another folder, e.g.:"
|
"\n Remove \"${CMAKE_SOURCE_DIR}/CMakeCache.txt\" and try again from another folder, e.g.:"
|
||||||
"\n "
|
"\n "
|
||||||
"\n rm CMakeCache.txt"
|
"\n rm CMakeCache.txt"
|
||||||
"\n cd .."
|
"\n cd .."
|
||||||
"\n mkdir cmake-make"
|
"\n mkdir cmake-make"
|
||||||
"\n cd cmake-make"
|
"\n cd cmake-make"
|
||||||
"\n cmake ../blender"
|
"\n cmake ../blender"
|
||||||
"\n "
|
"\n "
|
||||||
"\n Alternately define WITH_IN_SOURCE_BUILD to force this option (not recommended!)"
|
"\n Alternately define WITH_IN_SOURCE_BUILD to force this option (not recommended!)"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.5)
|
cmake_minimum_required(VERSION 3.5)
|
||||||
@@ -46,13 +46,13 @@ cmake_minimum_required(VERSION 3.5)
|
|||||||
# platforms which don't hare GLVND yet. Only do it if preference was not set
|
# platforms which don't hare GLVND yet. Only do it if preference was not set
|
||||||
# externally.
|
# externally.
|
||||||
if(NOT DEFINED OpenGL_GL_PREFERENCE)
|
if(NOT DEFINED OpenGL_GL_PREFERENCE)
|
||||||
set(OpenGL_GL_PREFERENCE "LEGACY")
|
set(OpenGL_GL_PREFERENCE "LEGACY")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT EXECUTABLE_OUTPUT_PATH)
|
if(NOT EXECUTABLE_OUTPUT_PATH)
|
||||||
set(FIRST_RUN TRUE)
|
set(FIRST_RUN TRUE)
|
||||||
else()
|
else()
|
||||||
set(FIRST_RUN FALSE)
|
set(FIRST_RUN FALSE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# this starts out unset
|
# this starts out unset
|
||||||
@@ -61,12 +61,12 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/build_files/cmake/platform")
|
|||||||
|
|
||||||
# avoid having empty buildtype
|
# avoid having empty buildtype
|
||||||
if(NOT DEFINED CMAKE_BUILD_TYPE_INIT)
|
if(NOT DEFINED CMAKE_BUILD_TYPE_INIT)
|
||||||
set(CMAKE_BUILD_TYPE_INIT "Release")
|
set(CMAKE_BUILD_TYPE_INIT "Release")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Omit superfluous "Up-to-date" messages.
|
# Omit superfluous "Up-to-date" messages.
|
||||||
if(NOT DEFINED CMAKE_INSTALL_MESSAGE)
|
if(NOT DEFINED CMAKE_INSTALL_MESSAGE)
|
||||||
set(CMAKE_INSTALL_MESSAGE "LAZY")
|
set(CMAKE_INSTALL_MESSAGE "LAZY")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# quiet output for Makefiles, 'make -s' helps too
|
# quiet output for Makefiles, 'make -s' helps too
|
||||||
@@ -74,10 +74,10 @@ endif()
|
|||||||
|
|
||||||
# global compile definitions since add_definitions() adds for all.
|
# global compile definitions since add_definitions() adds for all.
|
||||||
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
|
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
|
||||||
$<$<CONFIG:Debug>:DEBUG;_DEBUG>
|
$<$<CONFIG:Debug>:DEBUG;_DEBUG>
|
||||||
$<$<CONFIG:Release>:NDEBUG>
|
$<$<CONFIG:Release>:NDEBUG>
|
||||||
$<$<CONFIG:MinSizeRel>:NDEBUG>
|
$<$<CONFIG:MinSizeRel>:NDEBUG>
|
||||||
$<$<CONFIG:RelWithDebInfo>:NDEBUG>
|
$<$<CONFIG:RelWithDebInfo>:NDEBUG>
|
||||||
)
|
)
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -118,9 +118,9 @@ enable_testing()
|
|||||||
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE INTERNAL "" FORCE)
|
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE INTERNAL "" FORCE)
|
||||||
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE INTERNAL "" FORCE)
|
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE INTERNAL "" FORCE)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/$<CONFIG>/ CACHE INTERNAL "" FORCE)
|
set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/$<CONFIG>/ CACHE INTERNAL "" FORCE)
|
||||||
else()
|
else()
|
||||||
set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/ CACHE INTERNAL "" FORCE)
|
set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/ CACHE INTERNAL "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -137,55 +137,55 @@ set(_init_vars)
|
|||||||
|
|
||||||
# initialize to ON
|
# initialize to ON
|
||||||
macro(option_defaults_init)
|
macro(option_defaults_init)
|
||||||
foreach(_var ${ARGV})
|
foreach(_var ${ARGV})
|
||||||
set(${_var} ON)
|
set(${_var} ON)
|
||||||
list(APPEND _init_vars "${_var}")
|
list(APPEND _init_vars "${_var}")
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(_var)
|
unset(_var)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# remove from namespace
|
# remove from namespace
|
||||||
macro(option_defaults_clear)
|
macro(option_defaults_clear)
|
||||||
foreach(_var ${_init_vars})
|
foreach(_var ${_init_vars})
|
||||||
unset(${_var})
|
unset(${_var})
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(_var)
|
unset(_var)
|
||||||
unset(_init_vars)
|
unset(_init_vars)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
# values to initialize WITH_****
|
# values to initialize WITH_****
|
||||||
option_defaults_init(
|
option_defaults_init(
|
||||||
_init_BUILDINFO
|
_init_BUILDINFO
|
||||||
_init_CODEC_FFMPEG
|
_init_CODEC_FFMPEG
|
||||||
_init_CYCLES_OSL
|
_init_CYCLES_OSL
|
||||||
_init_IMAGE_OPENEXR
|
_init_IMAGE_OPENEXR
|
||||||
_init_INPUT_NDOF
|
_init_INPUT_NDOF
|
||||||
_init_JACK
|
_init_JACK
|
||||||
_init_OPENCOLLADA
|
_init_OPENCOLLADA
|
||||||
_init_OPENCOLORIO
|
_init_OPENCOLORIO
|
||||||
_init_SDL
|
_init_SDL
|
||||||
_init_FFTW3
|
_init_FFTW3
|
||||||
_init_OPENSUBDIV
|
_init_OPENSUBDIV
|
||||||
)
|
)
|
||||||
|
|
||||||
# customize...
|
# customize...
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
# some of these libraries are problematic on Linux
|
# some of these libraries are problematic on Linux
|
||||||
# disable less important dependencies by default
|
# disable less important dependencies by default
|
||||||
set(_init_CODEC_FFMPEG OFF)
|
set(_init_CODEC_FFMPEG OFF)
|
||||||
set(_init_CYCLES_OSL OFF)
|
set(_init_CYCLES_OSL OFF)
|
||||||
set(_init_IMAGE_OPENEXR OFF)
|
set(_init_IMAGE_OPENEXR OFF)
|
||||||
set(_init_JACK OFF)
|
set(_init_JACK OFF)
|
||||||
set(_init_OPENCOLLADA OFF)
|
set(_init_OPENCOLLADA OFF)
|
||||||
set(_init_OPENCOLORIO OFF)
|
set(_init_OPENCOLORIO OFF)
|
||||||
set(_init_SDL OFF)
|
set(_init_SDL OFF)
|
||||||
set(_init_FFTW3 OFF)
|
set(_init_FFTW3 OFF)
|
||||||
set(_init_OPENSUBDIV OFF)
|
set(_init_OPENSUBDIV OFF)
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
set(_init_JACK OFF)
|
set(_init_JACK OFF)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
set(_init_JACK OFF)
|
set(_init_JACK OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -194,7 +194,7 @@ endif()
|
|||||||
|
|
||||||
# First platform specific non-cached vars
|
# First platform specific non-cached vars
|
||||||
if(UNIX AND NOT (APPLE OR HAIKU))
|
if(UNIX AND NOT (APPLE OR HAIKU))
|
||||||
set(WITH_X11 ON)
|
set(WITH_X11 ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Blender internal features
|
# Blender internal features
|
||||||
@@ -212,13 +212,13 @@ option(WITH_PYTHON_SAFETY "Enable internal API error checking to track invalid d
|
|||||||
mark_as_advanced(WITH_PYTHON_SAFETY)
|
mark_as_advanced(WITH_PYTHON_SAFETY)
|
||||||
option(WITH_PYTHON_MODULE "Enable building as a python module which runs without a user interface, like running regular blender in background mode (experimental, only enable for development), installs to PYTHON_SITE_PACKAGES (or CMAKE_INSTALL_PREFIX if WITH_INSTALL_PORTABLE is enabled)." OFF)
|
option(WITH_PYTHON_MODULE "Enable building as a python module which runs without a user interface, like running regular blender in background mode (experimental, only enable for development), installs to PYTHON_SITE_PACKAGES (or CMAKE_INSTALL_PREFIX if WITH_INSTALL_PORTABLE is enabled)." OFF)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
option(WITH_PYTHON_FRAMEWORK "Enable building using the Python available in the framework (OSX only)" OFF)
|
option(WITH_PYTHON_FRAMEWORK "Enable building using the Python available in the framework (OSX only)" OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_BUILDINFO "Include extra build details (only disable for development & faster builds)" ${_init_BUILDINFO})
|
option(WITH_BUILDINFO "Include extra build details (only disable for development & faster builds)" ${_init_BUILDINFO})
|
||||||
if(${CMAKE_VERSION} VERSION_LESS 2.8.8)
|
if(${CMAKE_VERSION} VERSION_LESS 2.8.8)
|
||||||
# add_library OBJECT arg unsupported
|
# add_library OBJECT arg unsupported
|
||||||
set(WITH_BUILDINFO OFF)
|
set(WITH_BUILDINFO OFF)
|
||||||
endif()
|
endif()
|
||||||
set(BUILDINFO_OVERRIDE_DATE "" CACHE STRING "Use instead of the current date for reproducible builds (empty string disables this option)")
|
set(BUILDINFO_OVERRIDE_DATE "" CACHE STRING "Use instead of the current date for reproducible builds (empty string disables this option)")
|
||||||
set(BUILDINFO_OVERRIDE_TIME "" CACHE STRING "Use instead of the current time for reproducible builds (empty string disables this option)")
|
set(BUILDINFO_OVERRIDE_TIME "" CACHE STRING "Use instead of the current time for reproducible builds (empty string disables this option)")
|
||||||
@@ -253,7 +253,7 @@ option(WITH_GHOST_SDL "Enable building Blender against SDL for windowing rath
|
|||||||
mark_as_advanced(WITH_GHOST_SDL)
|
mark_as_advanced(WITH_GHOST_SDL)
|
||||||
|
|
||||||
if(WITH_X11)
|
if(WITH_X11)
|
||||||
option(WITH_GHOST_XDND "Enable drag'n'drop support on X11 using XDND protocol" ON)
|
option(WITH_GHOST_XDND "Enable drag'n'drop support on X11 using XDND protocol" ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Misc...
|
# Misc...
|
||||||
@@ -266,34 +266,34 @@ mark_as_advanced(WITH_AUDASPACE)
|
|||||||
mark_as_advanced(WITH_SYSTEM_AUDASPACE)
|
mark_as_advanced(WITH_SYSTEM_AUDASPACE)
|
||||||
|
|
||||||
if(NOT WITH_AUDASPACE)
|
if(NOT WITH_AUDASPACE)
|
||||||
set(WITH_SYSTEM_AUDASPACE OFF)
|
set(WITH_SYSTEM_AUDASPACE OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" ON)
|
option(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" ON)
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_OPENMP_STATIC "Link OpenMP statically (only used by the release environment)" OFF)
|
option(WITH_OPENMP_STATIC "Link OpenMP statically (only used by the release environment)" OFF)
|
||||||
mark_as_advanced(WITH_OPENMP_STATIC)
|
mark_as_advanced(WITH_OPENMP_STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_X11)
|
if(WITH_X11)
|
||||||
option(WITH_X11_XINPUT "Enable X11 Xinput (tablet support and unicode input)" ON)
|
option(WITH_X11_XINPUT "Enable X11 Xinput (tablet support and unicode input)" ON)
|
||||||
option(WITH_X11_XF86VMODE "Enable X11 video mode switching" ON)
|
option(WITH_X11_XF86VMODE "Enable X11 video mode switching" ON)
|
||||||
option(WITH_X11_XFIXES "Enable X11 XWayland cursor warping workaround" ON)
|
option(WITH_X11_XFIXES "Enable X11 XWayland cursor warping workaround" ON)
|
||||||
option(WITH_X11_ALPHA "Enable X11 transparent background" ON)
|
option(WITH_X11_ALPHA "Enable X11 transparent background" ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
|
option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
|
||||||
option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system" ON)
|
option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system" ON)
|
||||||
else()
|
else()
|
||||||
# not an option for other OS's
|
# not an option for other OS's
|
||||||
set(WITH_SYSTEM_GLEW OFF)
|
set(WITH_SYSTEM_GLEW OFF)
|
||||||
set(WITH_SYSTEM_GLES OFF)
|
set(WITH_SYSTEM_GLES OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
|
option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -332,17 +332,17 @@ option(WITH_SDL "Enable SDL for sound and joystick support" ${_init_SD
|
|||||||
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
||||||
option(WITH_JACK "Enable JACK Support (http://www.jackaudio.org)" ${_init_JACK})
|
option(WITH_JACK "Enable JACK Support (http://www.jackaudio.org)" ${_init_JACK})
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_JACK_DYNLOAD "Enable runtime dynamic JACK libraries loading" OFF)
|
option(WITH_JACK_DYNLOAD "Enable runtime dynamic JACK libraries loading" OFF)
|
||||||
endif()
|
endif()
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_SDL_DYNLOAD "Enable runtime dynamic SDL libraries loading" OFF)
|
option(WITH_SDL_DYNLOAD "Enable runtime dynamic SDL libraries loading" OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Compression
|
# Compression
|
||||||
option(WITH_LZO "Enable fast LZO compression (used for pointcache)" ON)
|
option(WITH_LZO "Enable fast LZO compression (used for pointcache)" ON)
|
||||||
option(WITH_LZMA "Enable best LZMA compression, (used for pointcache)" ON)
|
option(WITH_LZMA "Enable best LZMA compression, (used for pointcache)" ON)
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_SYSTEM_LZO "Use the system LZO library" OFF)
|
option(WITH_SYSTEM_LZO "Use the system LZO library" OFF)
|
||||||
endif()
|
endif()
|
||||||
option(WITH_DRACO "Enable Draco mesh compression Python module (used for glTF)" ON)
|
option(WITH_DRACO "Enable Draco mesh compression Python module (used for glTF)" ON)
|
||||||
|
|
||||||
@@ -362,65 +362,65 @@ option(WITH_FREESTYLE "Enable Freestyle (advanced edges rendering)" ON)
|
|||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
option(WITH_INPUT_IME "Enable Input Method Editor (IME) for complex Asian character input" ON)
|
option(WITH_INPUT_IME "Enable Input Method Editor (IME) for complex Asian character input" ON)
|
||||||
endif()
|
endif()
|
||||||
option(WITH_INPUT_NDOF "Enable NDOF input devices (SpaceNavigator and friends)" ${_init_INPUT_NDOF})
|
option(WITH_INPUT_NDOF "Enable NDOF input devices (SpaceNavigator and friends)" ${_init_INPUT_NDOF})
|
||||||
option(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
|
option(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
|
option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
|
||||||
option(WITH_STATIC_LIBS "Try to link with static libraries, as much as possible, to make blender more portable across distributions" OFF)
|
option(WITH_STATIC_LIBS "Try to link with static libraries, as much as possible, to make blender more portable across distributions" OFF)
|
||||||
if(WITH_STATIC_LIBS)
|
if(WITH_STATIC_LIBS)
|
||||||
option(WITH_BOOST_ICU "Boost uses ICU library (required for linking with static Boost built with libicu)." OFF)
|
option(WITH_BOOST_ICU "Boost uses ICU library (required for linking with static Boost built with libicu)." OFF)
|
||||||
mark_as_advanced(WITH_BOOST_ICU)
|
mark_as_advanced(WITH_BOOST_ICU)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_PYTHON_INSTALL "Copy system python into the blender install folder" ON)
|
option(WITH_PYTHON_INSTALL "Copy system python into the blender install folder" ON)
|
||||||
if(WIN32 OR APPLE)
|
if(WIN32 OR APPLE)
|
||||||
# Windows and macOS have this bundled with Python libraries.
|
# Windows and macOS have this bundled with Python libraries.
|
||||||
elseif(WITH_PYTHON_INSTALL OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
|
elseif(WITH_PYTHON_INSTALL OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
|
||||||
set(PYTHON_NUMPY_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'numpy' module")
|
set(PYTHON_NUMPY_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'numpy' module")
|
||||||
mark_as_advanced(PYTHON_NUMPY_PATH)
|
mark_as_advanced(PYTHON_NUMPY_PATH)
|
||||||
set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
|
set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
|
||||||
mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
|
mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_PYTHON_INSTALL)
|
if(WITH_PYTHON_INSTALL)
|
||||||
option(WITH_PYTHON_INSTALL_NUMPY "Copy system numpy into the blender install folder" ON)
|
option(WITH_PYTHON_INSTALL_NUMPY "Copy system numpy into the blender install folder" ON)
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_PYTHON_INSTALL_REQUESTS "Copy system requests into the blender install folder" ON)
|
option(WITH_PYTHON_INSTALL_REQUESTS "Copy system requests into the blender install folder" ON)
|
||||||
set(PYTHON_REQUESTS_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'requests' module")
|
set(PYTHON_REQUESTS_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'requests' module")
|
||||||
mark_as_advanced(PYTHON_REQUESTS_PATH)
|
mark_as_advanced(PYTHON_REQUESTS_PATH)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_CPU_SSE "Enable SIMD instruction if they're detected on the host machine" ON)
|
option(WITH_CPU_SSE "Enable SIMD instruction if they're detected on the host machine" ON)
|
||||||
mark_as_advanced(WITH_CPU_SSE)
|
mark_as_advanced(WITH_CPU_SSE)
|
||||||
|
|
||||||
# Cycles
|
# Cycles
|
||||||
option(WITH_CYCLES "Enable Cycles Render Engine" ON)
|
option(WITH_CYCLES "Enable Cycles Render Engine" ON)
|
||||||
option(WITH_CYCLES_STANDALONE "Build Cycles standalone application" OFF)
|
option(WITH_CYCLES_STANDALONE "Build Cycles standalone application" OFF)
|
||||||
option(WITH_CYCLES_STANDALONE_GUI "Build Cycles standalone with GUI" OFF)
|
option(WITH_CYCLES_STANDALONE_GUI "Build Cycles standalone with GUI" OFF)
|
||||||
option(WITH_CYCLES_OSL "Build Cycles with OSL support" ${_init_CYCLES_OSL})
|
option(WITH_CYCLES_OSL "Build Cycles with OSL support" ${_init_CYCLES_OSL})
|
||||||
option(WITH_CYCLES_EMBREE "Build Cycles with Embree support" OFF)
|
option(WITH_CYCLES_EMBREE "Build Cycles with Embree support" OFF)
|
||||||
option(WITH_CYCLES_CUDA_BINARIES "Build Cycles CUDA binaries" OFF)
|
option(WITH_CYCLES_CUDA_BINARIES "Build Cycles CUDA binaries" OFF)
|
||||||
option(WITH_CYCLES_CUBIN_COMPILER "Build cubins with nvrtc based compiler instead of nvcc" OFF)
|
option(WITH_CYCLES_CUBIN_COMPILER "Build cubins with nvrtc based compiler instead of nvcc" OFF)
|
||||||
option(WITH_CYCLES_CUDA_BUILD_SERIAL "Build cubins one after another (useful on machines with limited RAM)" OFF)
|
option(WITH_CYCLES_CUDA_BUILD_SERIAL "Build cubins one after another (useful on machines with limited RAM)" OFF)
|
||||||
mark_as_advanced(WITH_CYCLES_CUDA_BUILD_SERIAL)
|
mark_as_advanced(WITH_CYCLES_CUDA_BUILD_SERIAL)
|
||||||
set(CYCLES_CUDA_BINARIES_ARCH sm_30 sm_35 sm_37 sm_50 sm_52 sm_60 sm_61 sm_70 sm_75 CACHE STRING "CUDA architectures to build binaries for")
|
set(CYCLES_CUDA_BINARIES_ARCH sm_30 sm_35 sm_37 sm_50 sm_52 sm_60 sm_61 sm_70 sm_75 CACHE STRING "CUDA architectures to build binaries for")
|
||||||
mark_as_advanced(CYCLES_CUDA_BINARIES_ARCH)
|
mark_as_advanced(CYCLES_CUDA_BINARIES_ARCH)
|
||||||
unset(PLATFORM_DEFAULT)
|
unset(PLATFORM_DEFAULT)
|
||||||
option(WITH_CYCLES_LOGGING "Build Cycles with logging support" ON)
|
option(WITH_CYCLES_LOGGING "Build Cycles with logging support" ON)
|
||||||
option(WITH_CYCLES_DEBUG "Build Cycles with extra debug capabilities" OFF)
|
option(WITH_CYCLES_DEBUG "Build Cycles with extra debug capabilities" OFF)
|
||||||
option(WITH_CYCLES_NATIVE_ONLY "Build Cycles with native kernel only (which fits current CPU, use for development only)" OFF)
|
option(WITH_CYCLES_NATIVE_ONLY "Build Cycles with native kernel only (which fits current CPU, use for development only)" OFF)
|
||||||
mark_as_advanced(WITH_CYCLES_CUBIN_COMPILER)
|
mark_as_advanced(WITH_CYCLES_CUBIN_COMPILER)
|
||||||
mark_as_advanced(WITH_CYCLES_LOGGING)
|
mark_as_advanced(WITH_CYCLES_LOGGING)
|
||||||
mark_as_advanced(WITH_CYCLES_DEBUG)
|
mark_as_advanced(WITH_CYCLES_DEBUG)
|
||||||
mark_as_advanced(WITH_CYCLES_NATIVE_ONLY)
|
mark_as_advanced(WITH_CYCLES_NATIVE_ONLY)
|
||||||
|
|
||||||
option(WITH_CYCLES_DEVICE_CUDA "Enable Cycles CUDA compute support" ON)
|
option(WITH_CYCLES_DEVICE_CUDA "Enable Cycles CUDA compute support" ON)
|
||||||
option(WITH_CYCLES_DEVICE_OPENCL "Enable Cycles OpenCL compute support" ON)
|
option(WITH_CYCLES_DEVICE_OPENCL "Enable Cycles OpenCL compute support" ON)
|
||||||
option(WITH_CYCLES_NETWORK "Enable Cycles compute over network support (EXPERIMENTAL and unfinished)" OFF)
|
option(WITH_CYCLES_NETWORK "Enable Cycles compute over network support (EXPERIMENTAL and unfinished)" OFF)
|
||||||
mark_as_advanced(WITH_CYCLES_DEVICE_CUDA)
|
mark_as_advanced(WITH_CYCLES_DEVICE_CUDA)
|
||||||
mark_as_advanced(WITH_CYCLES_DEVICE_OPENCL)
|
mark_as_advanced(WITH_CYCLES_DEVICE_OPENCL)
|
||||||
mark_as_advanced(WITH_CYCLES_NETWORK)
|
mark_as_advanced(WITH_CYCLES_NETWORK)
|
||||||
@@ -429,11 +429,11 @@ option(WITH_CUDA_DYNLOAD "Dynamically load CUDA libraries at runtime" ON)
|
|||||||
mark_as_advanced(WITH_CUDA_DYNLOAD)
|
mark_as_advanced(WITH_CUDA_DYNLOAD)
|
||||||
|
|
||||||
# LLVM
|
# LLVM
|
||||||
option(WITH_LLVM "Use LLVM" OFF)
|
option(WITH_LLVM "Use LLVM" OFF)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
option(LLVM_STATIC "Link with LLVM static libraries" ON) # we prefer static llvm build on Apple, dyn build possible though
|
option(LLVM_STATIC "Link with LLVM static libraries" ON) # we prefer static llvm build on Apple, dyn build possible though
|
||||||
else()
|
else()
|
||||||
option(LLVM_STATIC "Link with LLVM static libraries" OFF)
|
option(LLVM_STATIC "Link with LLVM static libraries" OFF)
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(LLVM_STATIC)
|
mark_as_advanced(LLVM_STATIC)
|
||||||
|
|
||||||
@@ -452,7 +452,7 @@ mark_as_advanced(WITH_CXX_GUARDEDALLOC)
|
|||||||
option(WITH_ASSERT_ABORT "Call abort() when raising an assertion through BLI_assert()" ON)
|
option(WITH_ASSERT_ABORT "Call abort() when raising an assertion through BLI_assert()" ON)
|
||||||
mark_as_advanced(WITH_ASSERT_ABORT)
|
mark_as_advanced(WITH_ASSERT_ABORT)
|
||||||
|
|
||||||
option(WITH_BOOST "Enable features depending on boost" ON)
|
option(WITH_BOOST "Enable features depending on boost" ON)
|
||||||
|
|
||||||
# Unit testsing
|
# Unit testsing
|
||||||
option(WITH_GTESTS "Enable GTest unit testing" OFF)
|
option(WITH_GTESTS "Enable GTest unit testing" OFF)
|
||||||
@@ -462,7 +462,7 @@ option(WITH_OPENGL_DRAW_TESTS "Enable OpenGL UI drawing related unit testing (Ex
|
|||||||
|
|
||||||
# Documentation
|
# Documentation
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_DOC_MANPAGE "Create a manual page (Unix manpage)" OFF)
|
option(WITH_DOC_MANPAGE "Create a manual page (Unix manpage)" OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -474,39 +474,39 @@ option(WITH_GL_EGL "Use the EGL OpenGL system library instead of th
|
|||||||
option(WITH_GL_PROFILE_ES20 "Support using OpenGL ES 2.0. (thru either EGL or the AGL/WGL/XGL 'es20' profile)" OFF)
|
option(WITH_GL_PROFILE_ES20 "Support using OpenGL ES 2.0. (thru either EGL or the AGL/WGL/XGL 'es20' profile)" OFF)
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
WITH_OPENGL
|
WITH_OPENGL
|
||||||
WITH_GLEW_ES
|
WITH_GLEW_ES
|
||||||
WITH_GL_EGL
|
WITH_GL_EGL
|
||||||
WITH_GL_PROFILE_ES20
|
WITH_GL_PROFILE_ES20
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
option(WITH_GL_ANGLE "Link with the ANGLE library, an OpenGL ES 2.0 implementation based on Direct3D, instead of the system OpenGL library." OFF)
|
option(WITH_GL_ANGLE "Link with the ANGLE library, an OpenGL ES 2.0 implementation based on Direct3D, instead of the system OpenGL library." OFF)
|
||||||
mark_as_advanced(WITH_GL_ANGLE)
|
mark_as_advanced(WITH_GL_ANGLE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GLEW_ES AND WITH_SYSTEM_GLEW)
|
if(WITH_GLEW_ES AND WITH_SYSTEM_GLEW)
|
||||||
message(WARNING Ignoring WITH_SYSTEM_GLEW and using WITH_GLEW_ES)
|
message(WARNING Ignoring WITH_SYSTEM_GLEW and using WITH_GLEW_ES)
|
||||||
set(WITH_SYSTEM_GLEW OFF)
|
set(WITH_SYSTEM_GLEW OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
getDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
|
getDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
|
||||||
set(CPACK_INSTALL_PREFIX ${CMAKE_GENERIC_PROGRAM_FILES}/${})
|
set(CPACK_INSTALL_PREFIX ${CMAKE_GENERIC_PROGRAM_FILES}/${})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Compiler toolchain
|
# Compiler toolchain
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
option(WITH_LINKER_GOLD "Use ld.gold linker which is usually faster than ld.bfd" ON)
|
option(WITH_LINKER_GOLD "Use ld.gold linker which is usually faster than ld.bfd" ON)
|
||||||
mark_as_advanced(WITH_LINKER_GOLD)
|
mark_as_advanced(WITH_LINKER_GOLD)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
option(WITH_COMPILER_ASAN "Build and link against address sanitizer (only for Debug & RelWithDebInfo targets)." OFF)
|
option(WITH_COMPILER_ASAN "Build and link against address sanitizer (only for Debug & RelWithDebInfo targets)." OFF)
|
||||||
mark_as_advanced(WITH_COMPILER_ASAN)
|
mark_as_advanced(WITH_COMPILER_ASAN)
|
||||||
|
|
||||||
if(WITH_COMPILER_ASAN)
|
if(WITH_COMPILER_ASAN)
|
||||||
set(_asan_defaults "\
|
set(_asan_defaults "\
|
||||||
-fsanitize=address \
|
-fsanitize=address \
|
||||||
-fsanitize=bool \
|
-fsanitize=bool \
|
||||||
-fsanitize=bounds \
|
-fsanitize=bounds \
|
||||||
@@ -521,27 +521,27 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|||||||
-fno-sanitize=alignment \
|
-fno-sanitize=alignment \
|
||||||
")
|
")
|
||||||
|
|
||||||
if(NOT MSVC) # not all sanitizers are supported with clang-cl, these two however are very vocal about it
|
if(NOT MSVC) # not all sanitizers are supported with clang-cl, these two however are very vocal about it
|
||||||
set(_asan_defaults "${_asan_defaults} -fsanitize=leak -fsanitize=object-size" )
|
set(_asan_defaults "${_asan_defaults} -fsanitize=leak -fsanitize=object-size" )
|
||||||
endif()
|
endif()
|
||||||
set(COMPILER_ASAN_CFLAGS "${_asan_defaults}" CACHE STRING "C flags for address sanitizer")
|
set(COMPILER_ASAN_CFLAGS "${_asan_defaults}" CACHE STRING "C flags for address sanitizer")
|
||||||
mark_as_advanced(COMPILER_ASAN_CFLAGS)
|
mark_as_advanced(COMPILER_ASAN_CFLAGS)
|
||||||
set(COMPILER_ASAN_CXXFLAGS "${_asan_defaults}" CACHE STRING "C++ flags for address sanitizer")
|
set(COMPILER_ASAN_CXXFLAGS "${_asan_defaults}" CACHE STRING "C++ flags for address sanitizer")
|
||||||
mark_as_advanced(COMPILER_ASAN_CXXFLAGS)
|
mark_as_advanced(COMPILER_ASAN_CXXFLAGS)
|
||||||
|
|
||||||
unset(_asan_defaults)
|
unset(_asan_defaults)
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
find_library(COMPILER_ASAN_LIBRARY asan ${CMAKE_C_IMPLICIT_LINK_DIRECTORIES})
|
find_library(COMPILER_ASAN_LIBRARY asan ${CMAKE_C_IMPLICIT_LINK_DIRECTORIES})
|
||||||
else()
|
else()
|
||||||
find_library( COMPILER_ASAN_LIBRARY NAMES clang_rt.asan-x86_64
|
find_library( COMPILER_ASAN_LIBRARY NAMES clang_rt.asan-x86_64
|
||||||
PATHS
|
PATHS
|
||||||
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/7.0.0/lib/windows
|
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/7.0.0/lib/windows
|
||||||
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/6.0.0/lib/windows
|
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/6.0.0/lib/windows
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(COMPILER_ASAN_LIBRARY)
|
mark_as_advanced(COMPILER_ASAN_LIBRARY)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Dependency graph
|
# Dependency graph
|
||||||
@@ -549,24 +549,24 @@ option(WITH_LEGACY_DEPSGRAPH "Build Blender with legacy dependency graph" ON)
|
|||||||
mark_as_advanced(WITH_LEGACY_DEPSGRAPH)
|
mark_as_advanced(WITH_LEGACY_DEPSGRAPH)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Use hardcoded paths or find_package to find externals
|
# Use hardcoded paths or find_package to find externals
|
||||||
option(WITH_WINDOWS_FIND_MODULES "Use find_package to locate libraries" OFF)
|
option(WITH_WINDOWS_FIND_MODULES "Use find_package to locate libraries" OFF)
|
||||||
mark_as_advanced(WITH_WINDOWS_FIND_MODULES)
|
mark_as_advanced(WITH_WINDOWS_FIND_MODULES)
|
||||||
|
|
||||||
option(WITH_WINDOWS_CODESIGN "Use signtool to sign the final binary." OFF)
|
option(WITH_WINDOWS_CODESIGN "Use signtool to sign the final binary." OFF)
|
||||||
mark_as_advanced(WITH_WINDOWS_CODESIGN)
|
mark_as_advanced(WITH_WINDOWS_CODESIGN)
|
||||||
|
|
||||||
set(WINDOWS_CODESIGN_PFX CACHE FILEPATH "Path to pfx file to use for codesigning.")
|
set(WINDOWS_CODESIGN_PFX CACHE FILEPATH "Path to pfx file to use for codesigning.")
|
||||||
mark_as_advanced(WINDOWS_CODESIGN_PFX)
|
mark_as_advanced(WINDOWS_CODESIGN_PFX)
|
||||||
|
|
||||||
set(WINDOWS_CODESIGN_PFX_PASSWORD CACHE STRING "password for pfx file used for codesigning.")
|
set(WINDOWS_CODESIGN_PFX_PASSWORD CACHE STRING "password for pfx file used for codesigning.")
|
||||||
mark_as_advanced(WINDOWS_CODESIGN_PFX_PASSWORD)
|
mark_as_advanced(WINDOWS_CODESIGN_PFX_PASSWORD)
|
||||||
|
|
||||||
option(WINDOWS_USE_VISUAL_STUDIO_FOLDERS "Organize the visual studio project according to source folders." ON)
|
option(WINDOWS_USE_VISUAL_STUDIO_FOLDERS "Organize the visual studio project according to source folders." ON)
|
||||||
mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
|
mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
|
||||||
|
|
||||||
option(WINDOWS_PYTHON_DEBUG "Include the files needed for debugging python scripts with visual studio 2017+." OFF)
|
option(WINDOWS_PYTHON_DEBUG "Include the files needed for debugging python scripts with visual studio 2017+." OFF)
|
||||||
mark_as_advanced(WINDOWS_PYTHON_DEBUG)
|
mark_as_advanced(WINDOWS_PYTHON_DEBUG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# avoid using again
|
# avoid using again
|
||||||
@@ -579,15 +579,15 @@ option_defaults_clear()
|
|||||||
# By default we want to install to the directory we are compiling our executables
|
# By default we want to install to the directory we are compiling our executables
|
||||||
# unless specified otherwise, which we currently do not allow
|
# unless specified otherwise, which we currently do not allow
|
||||||
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
|
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
|
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
|
||||||
else()
|
else()
|
||||||
if(WITH_INSTALL_PORTABLE)
|
if(WITH_INSTALL_PORTABLE)
|
||||||
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH} CACHE PATH "default install path" FORCE)
|
set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH} CACHE PATH "default install path" FORCE)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -595,7 +595,7 @@ endif()
|
|||||||
# Apple
|
# Apple
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
include(platform_apple_xcode)
|
include(platform_apple_xcode)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -603,140 +603,140 @@ endif()
|
|||||||
# Check for conflicting/unsupported configurations
|
# Check for conflicting/unsupported configurations
|
||||||
|
|
||||||
if(NOT WITH_BLENDER AND NOT WITH_CYCLES_STANDALONE)
|
if(NOT WITH_BLENDER AND NOT WITH_CYCLES_STANDALONE)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"At least one of WITH_BLENDER or WITH_CYCLES_STANDALONE "
|
"At least one of WITH_BLENDER or WITH_CYCLES_STANDALONE "
|
||||||
"must be enabled, nothing to do!"
|
"must be enabled, nothing to do!"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WITH_AUDASPACE)
|
if(NOT WITH_AUDASPACE)
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
message(WARNING "WITH_OPENAL requires WITH_AUDASPACE which is disabled")
|
message(WARNING "WITH_OPENAL requires WITH_AUDASPACE which is disabled")
|
||||||
set(WITH_OPENAL OFF)
|
set(WITH_OPENAL OFF)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
message(WARNING "WITH_JACK requires WITH_AUDASPACE which is disabled")
|
message(WARNING "WITH_JACK requires WITH_AUDASPACE which is disabled")
|
||||||
set(WITH_JACK OFF)
|
set(WITH_JACK OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WITH_SDL AND WITH_GHOST_SDL)
|
if(NOT WITH_SDL AND WITH_GHOST_SDL)
|
||||||
message(FATAL_ERROR "WITH_GHOST_SDL requires WITH_SDL")
|
message(FATAL_ERROR "WITH_GHOST_SDL requires WITH_SDL")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# python module, needs some different options
|
# python module, needs some different options
|
||||||
if(WITH_PYTHON_MODULE AND WITH_PYTHON_INSTALL)
|
if(WITH_PYTHON_MODULE AND WITH_PYTHON_INSTALL)
|
||||||
message(FATAL_ERROR "WITH_PYTHON_MODULE requires WITH_PYTHON_INSTALL to be OFF")
|
message(FATAL_ERROR "WITH_PYTHON_MODULE requires WITH_PYTHON_INSTALL to be OFF")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# may as well build python module without a UI
|
# may as well build python module without a UI
|
||||||
if(WITH_PYTHON_MODULE)
|
if(WITH_PYTHON_MODULE)
|
||||||
set(WITH_HEADLESS ON)
|
set(WITH_HEADLESS ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WITH_PYTHON)
|
if(NOT WITH_PYTHON)
|
||||||
set(WITH_CYCLES OFF)
|
set(WITH_CYCLES OFF)
|
||||||
set(WITH_DRACO OFF)
|
set(WITH_DRACO OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
|
if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
|
||||||
message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
|
message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
|
||||||
set(WITH_DRACO OFF)
|
set(WITH_DRACO OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# enable boost for cycles, audaspace or i18n
|
# enable boost for cycles, audaspace or i18n
|
||||||
# otherwise if the user disabled
|
# otherwise if the user disabled
|
||||||
if(NOT WITH_BOOST)
|
if(NOT WITH_BOOST)
|
||||||
# Explicitly disabled. so disable all deps.
|
# Explicitly disabled. so disable all deps.
|
||||||
macro(set_and_warn
|
macro(set_and_warn
|
||||||
_setting _val)
|
_setting _val)
|
||||||
if(${${_setting}})
|
if(${${_setting}})
|
||||||
message(STATUS "'WITH_BOOST' is disabled: forcing 'set(${_setting} ${_val})'")
|
message(STATUS "'WITH_BOOST' is disabled: forcing 'set(${_setting} ${_val})'")
|
||||||
endif()
|
endif()
|
||||||
set(${_setting} ${_val})
|
set(${_setting} ${_val})
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
set_and_warn(WITH_CYCLES OFF)
|
set_and_warn(WITH_CYCLES OFF)
|
||||||
set_and_warn(WITH_INTERNATIONAL OFF)
|
set_and_warn(WITH_INTERNATIONAL OFF)
|
||||||
set_and_warn(WITH_OPENVDB OFF)
|
set_and_warn(WITH_OPENVDB OFF)
|
||||||
set_and_warn(WITH_OPENCOLORIO OFF)
|
set_and_warn(WITH_OPENCOLORIO OFF)
|
||||||
elseif(WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
elseif(WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
||||||
WITH_OPENVDB OR WITH_OPENCOLORIO)
|
WITH_OPENVDB OR WITH_OPENCOLORIO)
|
||||||
# Keep enabled
|
# Keep enabled
|
||||||
else()
|
else()
|
||||||
# Disable boost if not needed.
|
# Disable boost if not needed.
|
||||||
set(WITH_BOOST OFF)
|
set(WITH_BOOST OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# auto enable openimageio for cycles
|
# auto enable openimageio for cycles
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
set(WITH_OPENIMAGEIO ON)
|
set(WITH_OPENIMAGEIO ON)
|
||||||
|
|
||||||
# auto enable llvm for cycles_osl
|
# auto enable llvm for cycles_osl
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(WITH_LLVM ON CACHE BOOL "" FORCE)
|
set(WITH_LLVM ON CACHE BOOL "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_CYCLES_OSL OFF)
|
set(WITH_CYCLES_OSL OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# auto enable openimageio linking dependencies
|
# auto enable openimageio linking dependencies
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
set(WITH_IMAGE_OPENEXR ON)
|
set(WITH_IMAGE_OPENEXR ON)
|
||||||
set(WITH_IMAGE_TIFF ON)
|
set(WITH_IMAGE_TIFF ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# auto enable alembic linking dependencies
|
# auto enable alembic linking dependencies
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
set(WITH_IMAGE_OPENEXR ON)
|
set(WITH_IMAGE_OPENEXR ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# don't store paths to libs for portable distribution
|
# don't store paths to libs for portable distribution
|
||||||
if(WITH_INSTALL_PORTABLE)
|
if(WITH_INSTALL_PORTABLE)
|
||||||
set(CMAKE_SKIP_BUILD_RPATH TRUE)
|
set(CMAKE_SKIP_BUILD_RPATH TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GHOST_SDL OR WITH_HEADLESS)
|
if(WITH_GHOST_SDL OR WITH_HEADLESS)
|
||||||
set(WITH_X11 OFF)
|
set(WITH_X11 OFF)
|
||||||
set(WITH_X11_XINPUT OFF)
|
set(WITH_X11_XINPUT OFF)
|
||||||
set(WITH_X11_XF86VMODE OFF)
|
set(WITH_X11_XF86VMODE OFF)
|
||||||
set(WITH_X11_XFIXES OFF)
|
set(WITH_X11_XFIXES OFF)
|
||||||
set(WITH_X11_ALPHA OFF)
|
set(WITH_X11_ALPHA OFF)
|
||||||
set(WITH_GHOST_XDND OFF)
|
set(WITH_GHOST_XDND OFF)
|
||||||
set(WITH_INPUT_IME OFF)
|
set(WITH_INPUT_IME OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CPU_SSE)
|
if(WITH_CPU_SSE)
|
||||||
TEST_SSE_SUPPORT(COMPILER_SSE_FLAG COMPILER_SSE2_FLAG)
|
TEST_SSE_SUPPORT(COMPILER_SSE_FLAG COMPILER_SSE2_FLAG)
|
||||||
else()
|
else()
|
||||||
message(STATUS "SSE and SSE2 optimizations are DISABLED!")
|
message(STATUS "SSE and SSE2 optimizations are DISABLED!")
|
||||||
set(COMPILER_SSE_FLAG)
|
set(COMPILER_SSE_FLAG)
|
||||||
set(COMPILER_SSE2_FLAG)
|
set(COMPILER_SSE2_FLAG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BUILDINFO)
|
if(WITH_BUILDINFO)
|
||||||
find_package(Git)
|
find_package(Git)
|
||||||
if(NOT GIT_FOUND)
|
if(NOT GIT_FOUND)
|
||||||
message(WARNING "Git was not found, disabling WITH_BUILDINFO")
|
message(WARNING "Git was not found, disabling WITH_BUILDINFO")
|
||||||
set(WITH_BUILDINFO OFF)
|
set(WITH_BUILDINFO OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_AUDASPACE)
|
if(WITH_AUDASPACE)
|
||||||
if(NOT WITH_SYSTEM_AUDASPACE)
|
if(NOT WITH_SYSTEM_AUDASPACE)
|
||||||
set(AUDASPACE_C_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings/C" "${CMAKE_BINARY_DIR}/extern/audaspace")
|
set(AUDASPACE_C_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings/C" "${CMAKE_BINARY_DIR}/extern/audaspace")
|
||||||
set(AUDASPACE_PY_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings")
|
set(AUDASPACE_PY_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Auto-enable CUDA dynload if toolkit is not found.
|
# Auto-enable CUDA dynload if toolkit is not found.
|
||||||
if(NOT WITH_CUDA_DYNLOAD)
|
if(NOT WITH_CUDA_DYNLOAD)
|
||||||
find_package(CUDA)
|
find_package(CUDA)
|
||||||
if (NOT CUDA_FOUND)
|
if (NOT CUDA_FOUND)
|
||||||
message("CUDA toolkit not found, using dynamic runtime loading of libraries instead")
|
message("CUDA toolkit not found, using dynamic runtime loading of libraries instead")
|
||||||
set(WITH_CUDA_DYNLOAD ON)
|
set(WITH_CUDA_DYNLOAD ON)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -747,35 +747,35 @@ endif()
|
|||||||
# since uninitialized git submodules will give blank dirs
|
# since uninitialized git submodules will give blank dirs
|
||||||
|
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/datafiles/locale/languages")
|
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/datafiles/locale/languages")
|
||||||
message(WARNING
|
message(WARNING
|
||||||
"Translation path '${CMAKE_SOURCE_DIR}/release/datafiles/locale' is missing, "
|
"Translation path '${CMAKE_SOURCE_DIR}/release/datafiles/locale' is missing, "
|
||||||
"This is a 'git submodule', which are known not to work with bridges to other version "
|
"This is a 'git submodule', which are known not to work with bridges to other version "
|
||||||
"control systems, disabling 'WITH_INTERNATIONAL'."
|
"control systems, disabling 'WITH_INTERNATIONAL'."
|
||||||
)
|
)
|
||||||
set(WITH_INTERNATIONAL OFF)
|
set(WITH_INTERNATIONAL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
# While we have this as an '#error' in 'bpy_capi_utils.h',
|
# While we have this as an '#error' in 'bpy_capi_utils.h',
|
||||||
# upgrading Python tends to cause confusion for users who build.
|
# upgrading Python tends to cause confusion for users who build.
|
||||||
# Give the error message early to make this more obvious.
|
# Give the error message early to make this more obvious.
|
||||||
#
|
#
|
||||||
# Do this before main 'platform_*' checks,
|
# Do this before main 'platform_*' checks,
|
||||||
# because UNIX will search for the old Python paths which may not exist.
|
# because UNIX will search for the old Python paths which may not exist.
|
||||||
# giving errors about missing paths before this case is met.
|
# giving errors about missing paths before this case is met.
|
||||||
if(DEFINED PYTHON_VERSION AND "${PYTHON_VERSION}" VERSION_LESS "3.7")
|
if(DEFINED PYTHON_VERSION AND "${PYTHON_VERSION}" VERSION_LESS "3.7")
|
||||||
message(FATAL_ERROR "At least Python 3.7 is required to build")
|
message(FATAL_ERROR "At least Python 3.7 is required to build")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/scripts/addons/modules")
|
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/scripts/addons/modules")
|
||||||
message(WARNING
|
message(WARNING
|
||||||
"Addons path '${CMAKE_SOURCE_DIR}/release/scripts/addons' is missing, "
|
"Addons path '${CMAKE_SOURCE_DIR}/release/scripts/addons' is missing, "
|
||||||
"This is a 'git submodule', which are known not to work with bridges to other version "
|
"This is a 'git submodule', which are known not to work with bridges to other version "
|
||||||
"control systems: * CONTINUING WITHOUT ADDONS *"
|
"control systems: * CONTINUING WITHOUT ADDONS *"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -809,68 +809,68 @@ set(PLATFORM_LINKFLAGS "")
|
|||||||
set(PLATFORM_LINKFLAGS_DEBUG "")
|
set(PLATFORM_LINKFLAGS_DEBUG "")
|
||||||
|
|
||||||
if (NOT CMAKE_BUILD_TYPE MATCHES "Release")
|
if (NOT CMAKE_BUILD_TYPE MATCHES "Release")
|
||||||
if(WITH_COMPILER_ASAN)
|
if(WITH_COMPILER_ASAN)
|
||||||
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COMPILER_ASAN_CFLAGS}")
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COMPILER_ASAN_CFLAGS}")
|
||||||
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CFLAGS}")
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CFLAGS}")
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COMPILER_ASAN_CXXFLAGS}")
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COMPILER_ASAN_CXXFLAGS}")
|
||||||
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CXXFLAGS}")
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CXXFLAGS}")
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
|
set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
|
||||||
endif()
|
endif()
|
||||||
set(PLATFORM_LINKLIBS "${PLATFORM_LINKLIBS};${COMPILER_ASAN_LIBRARY}")
|
set(PLATFORM_LINKLIBS "${PLATFORM_LINKLIBS};${COMPILER_ASAN_LIBRARY}")
|
||||||
set(PLATFORM_LINKFLAGS "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
|
set(PLATFORM_LINKFLAGS "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
|
||||||
set(PLATFORM_LINKFLAGS_DEBUG "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
|
set(PLATFORM_LINKFLAGS_DEBUG "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
#Platform specifics
|
#Platform specifics
|
||||||
|
|
||||||
if(WITH_X11)
|
if(WITH_X11)
|
||||||
find_package(X11 REQUIRED)
|
find_package(X11 REQUIRED)
|
||||||
|
|
||||||
find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
|
find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
|
||||||
mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
|
mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
|
||||||
|
|
||||||
list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
|
list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
|
||||||
|
|
||||||
if(WITH_X11_XINPUT)
|
if(WITH_X11_XINPUT)
|
||||||
if(X11_Xinput_LIB)
|
if(X11_Xinput_LIB)
|
||||||
list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
|
||||||
else()
|
else()
|
||||||
set(WITH_X11_XINPUT OFF)
|
set(WITH_X11_XINPUT OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_X11_XF86VMODE)
|
if(WITH_X11_XF86VMODE)
|
||||||
# XXX, why doesn't cmake make this available?
|
# XXX, why doesn't cmake make this available?
|
||||||
find_library(X11_Xxf86vmode_LIB Xxf86vm ${X11_LIB_SEARCH_PATH})
|
find_library(X11_Xxf86vmode_LIB Xxf86vm ${X11_LIB_SEARCH_PATH})
|
||||||
mark_as_advanced(X11_Xxf86vmode_LIB)
|
mark_as_advanced(X11_Xxf86vmode_LIB)
|
||||||
if(X11_Xxf86vmode_LIB)
|
if(X11_Xxf86vmode_LIB)
|
||||||
list(APPEND PLATFORM_LINKLIBS ${X11_Xxf86vmode_LIB})
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xxf86vmode_LIB})
|
||||||
else()
|
else()
|
||||||
set(WITH_X11_XF86VMODE OFF)
|
set(WITH_X11_XF86VMODE OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_X11_XFIXES)
|
if(WITH_X11_XFIXES)
|
||||||
if(X11_Xfixes_LIB)
|
if(X11_Xfixes_LIB)
|
||||||
list(APPEND PLATFORM_LINKLIBS ${X11_Xfixes_LIB})
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xfixes_LIB})
|
||||||
else()
|
else()
|
||||||
set(WITH_X11_XFIXES OFF)
|
set(WITH_X11_XFIXES OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_X11_ALPHA)
|
if(WITH_X11_ALPHA)
|
||||||
find_library(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH})
|
find_library(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH})
|
||||||
mark_as_advanced(X11_Xrender_LIB)
|
mark_as_advanced(X11_Xrender_LIB)
|
||||||
if(X11_Xrender_LIB)
|
if(X11_Xrender_LIB)
|
||||||
list(APPEND PLATFORM_LINKLIBS ${X11_Xrender_LIB})
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xrender_LIB})
|
||||||
else()
|
else()
|
||||||
set(WITH_X11_ALPHA OFF)
|
set(WITH_X11_ALPHA OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -883,51 +883,51 @@ endif()
|
|||||||
# - APPLE
|
# - APPLE
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
include(platform_unix)
|
include(platform_unix)
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
include(platform_win32)
|
include(platform_win32)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
include(platform_apple)
|
include(platform_apple)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Common.
|
# Common.
|
||||||
|
|
||||||
if(NOT WITH_FFTW3 AND WITH_MOD_OCEANSIM)
|
if(NOT WITH_FFTW3 AND WITH_MOD_OCEANSIM)
|
||||||
message(FATAL_ERROR "WITH_MOD_OCEANSIM requires WITH_FFTW3 to be ON")
|
message(FATAL_ERROR "WITH_MOD_OCEANSIM requires WITH_FFTW3 to be ON")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
if(NOT WITH_OPENIMAGEIO)
|
if(NOT WITH_OPENIMAGEIO)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Cycles requires WITH_OPENIMAGEIO, the library may not have been found. "
|
"Cycles requires WITH_OPENIMAGEIO, the library may not have been found. "
|
||||||
"Configure OIIO or disable WITH_CYCLES"
|
"Configure OIIO or disable WITH_CYCLES"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(NOT WITH_BOOST)
|
if(NOT WITH_BOOST)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Cycles requires WITH_BOOST, the library may not have been found. "
|
"Cycles requires WITH_BOOST, the library may not have been found. "
|
||||||
"Configure BOOST or disable WITH_CYCLES"
|
"Configure BOOST or disable WITH_CYCLES"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
if(NOT WITH_LLVM)
|
if(NOT WITH_LLVM)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Cycles OSL requires WITH_LLVM, the library may not have been found. "
|
"Cycles OSL requires WITH_LLVM, the library may not have been found. "
|
||||||
"Configure LLVM or disable WITH_CYCLES_OSL"
|
"Configure LLVM or disable WITH_CYCLES_OSL"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
if(NOT WITH_BOOST)
|
if(NOT WITH_BOOST)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Internationalization requires WITH_BOOST, the library may not have been found. "
|
"Internationalization requires WITH_BOOST, the library may not have been found. "
|
||||||
"Configure BOOST or disable WITH_INTERNATIONAL"
|
"Configure BOOST or disable WITH_INTERNATIONAL"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# See TEST_SSE_SUPPORT() for how this is defined.
|
# See TEST_SSE_SUPPORT() for how this is defined.
|
||||||
@@ -935,53 +935,53 @@ endif()
|
|||||||
# Do it globally, SSE2 is required for quite some time now.
|
# Do it globally, SSE2 is required for quite some time now.
|
||||||
# Doing it now allows to use SSE/SSE2 in inline headers.
|
# Doing it now allows to use SSE/SSE2 in inline headers.
|
||||||
if(SUPPORT_SSE_BUILD)
|
if(SUPPORT_SSE_BUILD)
|
||||||
set(PLATFORM_CFLAGS " ${COMPILER_SSE_FLAG} ${PLATFORM_CFLAGS}")
|
set(PLATFORM_CFLAGS " ${COMPILER_SSE_FLAG} ${PLATFORM_CFLAGS}")
|
||||||
add_definitions(-D__SSE__ -D__MMX__)
|
add_definitions(-D__SSE__ -D__MMX__)
|
||||||
endif()
|
endif()
|
||||||
if(SUPPORT_SSE2_BUILD)
|
if(SUPPORT_SSE2_BUILD)
|
||||||
set(PLATFORM_CFLAGS " ${PLATFORM_CFLAGS} ${COMPILER_SSE2_FLAG}")
|
set(PLATFORM_CFLAGS " ${PLATFORM_CFLAGS} ${COMPILER_SSE2_FLAG}")
|
||||||
add_definitions(-D__SSE2__)
|
add_definitions(-D__SSE2__)
|
||||||
if(NOT SUPPORT_SSE_BUILD) # don't double up
|
if(NOT SUPPORT_SSE_BUILD) # don't double up
|
||||||
add_definitions(-D__MMX__)
|
add_definitions(-D__MMX__)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# set the endian define
|
# set the endian define
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# for some reason this fails on msvc
|
# for some reason this fails on msvc
|
||||||
add_definitions(-D__LITTLE_ENDIAN__)
|
add_definitions(-D__LITTLE_ENDIAN__)
|
||||||
|
|
||||||
# OSX-Note: as we do cross-compiling with specific set architecture,
|
# OSX-Note: as we do cross-compiling with specific set architecture,
|
||||||
# endianess-detection and auto-setting is counterproductive
|
# endianess-detection and auto-setting is counterproductive
|
||||||
# so we just set endianness according CMAKE_OSX_ARCHITECTURES
|
# so we just set endianness according CMAKE_OSX_ARCHITECTURES
|
||||||
|
|
||||||
elseif(CMAKE_OSX_ARCHITECTURES MATCHES i386 OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
|
elseif(CMAKE_OSX_ARCHITECTURES MATCHES i386 OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
|
||||||
add_definitions(-D__LITTLE_ENDIAN__)
|
add_definitions(-D__LITTLE_ENDIAN__)
|
||||||
elseif(CMAKE_OSX_ARCHITECTURES MATCHES ppc OR CMAKE_OSX_ARCHITECTURES MATCHES ppc64)
|
elseif(CMAKE_OSX_ARCHITECTURES MATCHES ppc OR CMAKE_OSX_ARCHITECTURES MATCHES ppc64)
|
||||||
add_definitions(-D__BIG_ENDIAN__)
|
add_definitions(-D__BIG_ENDIAN__)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
include(TestBigEndian)
|
include(TestBigEndian)
|
||||||
test_big_endian(_SYSTEM_BIG_ENDIAN)
|
test_big_endian(_SYSTEM_BIG_ENDIAN)
|
||||||
if(_SYSTEM_BIG_ENDIAN)
|
if(_SYSTEM_BIG_ENDIAN)
|
||||||
add_definitions(-D__BIG_ENDIAN__)
|
add_definitions(-D__BIG_ENDIAN__)
|
||||||
else()
|
else()
|
||||||
add_definitions(-D__LITTLE_ENDIAN__)
|
add_definitions(-D__LITTLE_ENDIAN__)
|
||||||
endif()
|
endif()
|
||||||
unset(_SYSTEM_BIG_ENDIAN)
|
unset(_SYSTEM_BIG_ENDIAN)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENJPEG)
|
if(WITH_IMAGE_OPENJPEG)
|
||||||
# Special handling of Windows platform where openjpeg is always static.
|
# Special handling of Windows platform where openjpeg is always static.
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENJPEG_DEFINES "-DOPJ_STATIC")
|
set(OPENJPEG_DEFINES "-DOPJ_STATIC")
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_DEFINES "")
|
set(OPENJPEG_DEFINES "")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WITH_SYSTEM_EIGEN3)
|
if(NOT WITH_SYSTEM_EIGEN3)
|
||||||
set(EIGEN3_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/Eigen3)
|
set(EIGEN3_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/Eigen3)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -991,224 +991,224 @@ find_package(OpenGL)
|
|||||||
blender_include_dirs_sys("${OPENGL_INCLUDE_DIR}")
|
blender_include_dirs_sys("${OPENGL_INCLUDE_DIR}")
|
||||||
|
|
||||||
if(WITH_OPENGL)
|
if(WITH_OPENGL)
|
||||||
add_definitions(-DWITH_OPENGL)
|
add_definitions(-DWITH_OPENGL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SYSTEM_GLES)
|
if(WITH_SYSTEM_GLES)
|
||||||
find_package_wrapper(OpenGLES)
|
find_package_wrapper(OpenGLES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_PROFILE_ES20)
|
if(WITH_GL_PROFILE_ES20)
|
||||||
if(WITH_SYSTEM_GLES)
|
if(WITH_SYSTEM_GLES)
|
||||||
if(NOT OPENGLES_LIBRARY)
|
if(NOT OPENGLES_LIBRARY)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Unable to find OpenGL ES libraries. "
|
"Unable to find OpenGL ES libraries. "
|
||||||
"Install them or disable WITH_SYSTEM_GLES."
|
"Install them or disable WITH_SYSTEM_GLES."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
list(APPEND BLENDER_GL_LIBRARIES OPENGLES_LIBRARY)
|
list(APPEND BLENDER_GL_LIBRARIES OPENGLES_LIBRARY)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(OPENGLES_LIBRARY "" CACHE FILEPATH "OpenGL ES 2.0 library file")
|
set(OPENGLES_LIBRARY "" CACHE FILEPATH "OpenGL ES 2.0 library file")
|
||||||
mark_as_advanced(OPENGLES_LIBRARY)
|
mark_as_advanced(OPENGLES_LIBRARY)
|
||||||
|
|
||||||
list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}")
|
list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}")
|
||||||
|
|
||||||
if(NOT OPENGLES_LIBRARY)
|
if(NOT OPENGLES_LIBRARY)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"To compile WITH_GL_EGL you need to set OPENGLES_LIBRARY "
|
"To compile WITH_GL_EGL you need to set OPENGLES_LIBRARY "
|
||||||
"to the file path of an OpenGL ES 2.0 library."
|
"to the file path of an OpenGL ES 2.0 library."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
|
# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
|
||||||
|
|
||||||
set(OPENGLES_DLL "" CACHE FILEPATH "OpenGL ES 2.0 redistributable DLL file")
|
set(OPENGLES_DLL "" CACHE FILEPATH "OpenGL ES 2.0 redistributable DLL file")
|
||||||
mark_as_advanced(OPENGLES_DLL)
|
mark_as_advanced(OPENGLES_DLL)
|
||||||
|
|
||||||
if(NOT OPENGLES_DLL)
|
if(NOT OPENGLES_DLL)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"To compile WITH_GL_PROFILE_ES20 you need to set OPENGLES_DLL to the file "
|
"To compile WITH_GL_PROFILE_ES20 you need to set OPENGLES_DLL to the file "
|
||||||
"path of an OpenGL ES 2.0 runtime dynamic link library (DLL)."
|
"path of an OpenGL ES 2.0 runtime dynamic link library (DLL)."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_ANGLE)
|
if(WITH_GL_ANGLE)
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_ANGLE)
|
list(APPEND GL_DEFINITIONS -DWITH_ANGLE)
|
||||||
|
|
||||||
set(D3DCOMPILER_DLL "" CACHE FILEPATH "Direct3D Compiler redistributable DLL file (needed by ANGLE)")
|
set(D3DCOMPILER_DLL "" CACHE FILEPATH "Direct3D Compiler redistributable DLL file (needed by ANGLE)")
|
||||||
|
|
||||||
get_filename_component(D3DCOMPILER_FILENAME "${D3DCOMPILER_DLL}" NAME)
|
get_filename_component(D3DCOMPILER_FILENAME "${D3DCOMPILER_DLL}" NAME)
|
||||||
list(APPEND GL_DEFINITIONS "-DD3DCOMPILER=\"\\\"${D3DCOMPILER_FILENAME}\\\"\"")
|
list(APPEND GL_DEFINITIONS "-DD3DCOMPILER=\"\\\"${D3DCOMPILER_FILENAME}\\\"\"")
|
||||||
|
|
||||||
mark_as_advanced(D3DCOMPILER_DLL)
|
mark_as_advanced(D3DCOMPILER_DLL)
|
||||||
|
|
||||||
if(D3DCOMPILER_DLL STREQUAL "")
|
if(D3DCOMPILER_DLL STREQUAL "")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"To compile WITH_GL_ANGLE you need to set D3DCOMPILER_DLL to the file "
|
"To compile WITH_GL_ANGLE you need to set D3DCOMPILER_DLL to the file "
|
||||||
"path of a copy of the DirectX redistributable DLL file: D3DCompiler_46.dll"
|
"path of a copy of the DirectX redistributable DLL file: D3DCompiler_46.dll"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
else()
|
else()
|
||||||
if(OpenGL_GL_PREFERENCE STREQUAL "LEGACY" AND OPENGL_gl_LIBRARY)
|
if(OpenGL_GL_PREFERENCE STREQUAL "LEGACY" AND OPENGL_gl_LIBRARY)
|
||||||
list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
|
list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
|
||||||
else()
|
else()
|
||||||
list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY})
|
list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_EGL)
|
if(WITH_GL_EGL)
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_GL_EGL)
|
list(APPEND GL_DEFINITIONS -DWITH_GL_EGL)
|
||||||
|
|
||||||
if(WITH_SYSTEM_GLES)
|
if(WITH_SYSTEM_GLES)
|
||||||
if(NOT OPENGLES_EGL_LIBRARY)
|
if(NOT OPENGLES_EGL_LIBRARY)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Unable to find OpenGL ES libraries. "
|
"Unable to find OpenGL ES libraries. "
|
||||||
"Install them or disable WITH_SYSTEM_GLES."
|
"Install them or disable WITH_SYSTEM_GLES."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
list(APPEND BLENDER_GL_LIBRARIES OPENGLES_EGL_LIBRARY)
|
list(APPEND BLENDER_GL_LIBRARIES OPENGLES_EGL_LIBRARY)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(OPENGLES_EGL_LIBRARY "" CACHE FILEPATH "EGL library file")
|
set(OPENGLES_EGL_LIBRARY "" CACHE FILEPATH "EGL library file")
|
||||||
mark_as_advanced(OPENGLES_EGL_LIBRARY)
|
mark_as_advanced(OPENGLES_EGL_LIBRARY)
|
||||||
|
|
||||||
list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}" "${OPENGLES_EGL_LIBRARY}")
|
list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}" "${OPENGLES_EGL_LIBRARY}")
|
||||||
|
|
||||||
if(NOT OPENGLES_EGL_LIBRARY)
|
if(NOT OPENGLES_EGL_LIBRARY)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"To compile WITH_GL_EGL you need to set OPENGLES_EGL_LIBRARY "
|
"To compile WITH_GL_EGL you need to set OPENGLES_EGL_LIBRARY "
|
||||||
"to the file path of an EGL library."
|
"to the file path of an EGL library."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
|
# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
|
||||||
|
|
||||||
set(OPENGLES_EGL_DLL "" CACHE FILEPATH "EGL redistributable DLL file")
|
set(OPENGLES_EGL_DLL "" CACHE FILEPATH "EGL redistributable DLL file")
|
||||||
mark_as_advanced(OPENGLES_EGL_DLL)
|
mark_as_advanced(OPENGLES_EGL_DLL)
|
||||||
|
|
||||||
if(NOT OPENGLES_EGL_DLL)
|
if(NOT OPENGLES_EGL_DLL)
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"To compile WITH_GL_EGL you need to set OPENGLES_EGL_DLL "
|
"To compile WITH_GL_EGL you need to set OPENGLES_EGL_DLL "
|
||||||
"to the file path of an EGL runtime dynamic link library (DLL)."
|
"to the file path of an EGL runtime dynamic link library (DLL)."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_PROFILE_ES20)
|
if(WITH_GL_PROFILE_ES20)
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_ES20)
|
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_ES20)
|
||||||
else()
|
else()
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
|
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_EGL)
|
if(WITH_GL_EGL)
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_EGL)
|
list(APPEND GL_DEFINITIONS -DWITH_EGL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure OpenMP.
|
# Configure OpenMP.
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
if(NOT OPENMP_CUSTOM)
|
if(NOT OPENMP_CUSTOM)
|
||||||
find_package(OpenMP)
|
find_package(OpenMP)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(OPENMP_FOUND)
|
if(OPENMP_FOUND)
|
||||||
if(NOT WITH_OPENMP_STATIC)
|
if(NOT WITH_OPENMP_STATIC)
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
|
||||||
else()
|
else()
|
||||||
# Typically avoid adding flags as defines but we can't
|
# Typically avoid adding flags as defines but we can't
|
||||||
# pass OpenMP flags to the linker for static builds, meaning
|
# pass OpenMP flags to the linker for static builds, meaning
|
||||||
# we can't add any OpenMP related flags to CFLAGS variables
|
# we can't add any OpenMP related flags to CFLAGS variables
|
||||||
# since they're passed to the linker as well.
|
# since they're passed to the linker as well.
|
||||||
add_definitions("${OpenMP_C_FLAGS}")
|
add_definitions("${OpenMP_C_FLAGS}")
|
||||||
|
|
||||||
find_library_static(OpenMP_LIBRARIES gomp ${CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES})
|
find_library_static(OpenMP_LIBRARIES gomp ${CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_OPENMP OFF)
|
set(WITH_OPENMP OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
OpenMP_C_FLAGS
|
OpenMP_C_FLAGS
|
||||||
OpenMP_CXX_FLAGS
|
OpenMP_CXX_FLAGS
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure GLEW
|
# Configure GLEW
|
||||||
|
|
||||||
if(WITH_SYSTEM_GLEW)
|
if(WITH_SYSTEM_GLEW)
|
||||||
find_package(GLEW)
|
find_package(GLEW)
|
||||||
|
|
||||||
# Note: There is an assumption here that the system GLEW is not a static library.
|
# Note: There is an assumption here that the system GLEW is not a static library.
|
||||||
|
|
||||||
if(NOT GLEW_FOUND)
|
if(NOT GLEW_FOUND)
|
||||||
message(FATAL_ERROR "GLEW is required to build Blender. Install it or disable WITH_SYSTEM_GLEW.")
|
message(FATAL_ERROR "GLEW is required to build Blender. Install it or disable WITH_SYSTEM_GLEW.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
|
set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
|
||||||
else()
|
else()
|
||||||
if(WITH_GLEW_ES)
|
if(WITH_GLEW_ES)
|
||||||
set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew-es/include")
|
set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew-es/include")
|
||||||
|
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_STATIC -DWITH_GLEW_ES)
|
list(APPEND GL_DEFINITIONS -DGLEW_STATIC -DWITH_GLEW_ES)
|
||||||
|
|
||||||
# These definitions remove APIs from glew.h, making GLEW smaller, and catching unguarded API usage
|
# These definitions remove APIs from glew.h, making GLEW smaller, and catching unguarded API usage
|
||||||
if(WITH_GL_PROFILE_ES20)
|
if(WITH_GL_PROFILE_ES20)
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_ES_ONLY)
|
list(APPEND GL_DEFINITIONS -DGLEW_ES_ONLY)
|
||||||
else()
|
else()
|
||||||
# No ES functions are needed
|
# No ES functions are needed
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
|
list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_PROFILE_ES20)
|
if(WITH_GL_PROFILE_ES20)
|
||||||
if(WITH_GL_EGL)
|
if(WITH_GL_EGL)
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_USE_LIB_ES20)
|
list(APPEND GL_DEFINITIONS -DGLEW_USE_LIB_ES20)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# ToDo: This is an experiment to eliminate ES 1 symbols,
|
# ToDo: This is an experiment to eliminate ES 1 symbols,
|
||||||
# GLEW doesn't really properly provide this level of control
|
# GLEW doesn't really properly provide this level of control
|
||||||
# (for example, without modification it eliminates too many symbols)
|
# (for example, without modification it eliminates too many symbols)
|
||||||
# so there are lots of modifications to GLEW to make this work,
|
# so there are lots of modifications to GLEW to make this work,
|
||||||
# and no attempt to make it work beyond Blender at this point.
|
# and no attempt to make it work beyond Blender at this point.
|
||||||
list(APPEND GL_DEFINITIONS -DGL_ES_VERSION_1_0=0 -DGL_ES_VERSION_CL_1_1=0 -DGL_ES_VERSION_CM_1_1=0)
|
list(APPEND GL_DEFINITIONS -DGL_ES_VERSION_1_0=0 -DGL_ES_VERSION_CL_1_1=0 -DGL_ES_VERSION_CM_1_1=0)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_EGL)
|
if(WITH_GL_EGL)
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_INC_EGL)
|
list(APPEND GL_DEFINITIONS -DGLEW_INC_EGL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(BLENDER_GLEW_LIBRARIES extern_glew_es bf_intern_glew_mx)
|
set(BLENDER_GLEW_LIBRARIES extern_glew_es bf_intern_glew_mx)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
|
set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
|
||||||
|
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_STATIC)
|
list(APPEND GL_DEFINITIONS -DGLEW_STATIC)
|
||||||
|
|
||||||
# This won't affect the non-experimental glew library,
|
# This won't affect the non-experimental glew library,
|
||||||
# but is used for conditional compilation elsewhere.
|
# but is used for conditional compilation elsewhere.
|
||||||
list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
|
list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
|
||||||
|
|
||||||
set(BLENDER_GLEW_LIBRARIES extern_glew)
|
set(BLENDER_GLEW_LIBRARIES extern_glew)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -1218,70 +1218,70 @@ list(APPEND GL_DEFINITIONS -DGLEW_NO_GLU)
|
|||||||
# Configure Bullet
|
# Configure Bullet
|
||||||
|
|
||||||
if(WITH_BULLET AND WITH_SYSTEM_BULLET)
|
if(WITH_BULLET AND WITH_SYSTEM_BULLET)
|
||||||
find_package(Bullet)
|
find_package(Bullet)
|
||||||
if(NOT BULLET_FOUND)
|
if(NOT BULLET_FOUND)
|
||||||
set(WITH_BULLET OFF)
|
set(WITH_BULLET OFF)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(BULLET_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/bullet2/src")
|
set(BULLET_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/bullet2/src")
|
||||||
# set(BULLET_LIBRARIES "")
|
# set(BULLET_LIBRARIES "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure Python.
|
# Configure Python.
|
||||||
|
|
||||||
if(WITH_PYTHON_MODULE)
|
if(WITH_PYTHON_MODULE)
|
||||||
add_definitions(-DPy_ENABLE_SHARED)
|
add_definitions(-DPy_ENABLE_SHARED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure GLog/GFlags
|
# Configure GLog/GFlags
|
||||||
|
|
||||||
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
||||||
if(WITH_SYSTEM_GFLAGS)
|
if(WITH_SYSTEM_GFLAGS)
|
||||||
find_package(Gflags)
|
find_package(Gflags)
|
||||||
if(NOT GFLAGS_FOUND)
|
if(NOT GFLAGS_FOUND)
|
||||||
message(FATAL_ERROR "System wide Gflags is requested but was not found")
|
message(FATAL_ERROR "System wide Gflags is requested but was not found")
|
||||||
endif()
|
endif()
|
||||||
# FindGflags does not define this, and we are not even sure what to use here.
|
# FindGflags does not define this, and we are not even sure what to use here.
|
||||||
set(GFLAGS_DEFINES)
|
set(GFLAGS_DEFINES)
|
||||||
else()
|
else()
|
||||||
set(GFLAGS_DEFINES
|
set(GFLAGS_DEFINES
|
||||||
-DGFLAGS_DLL_DEFINE_FLAG=
|
-DGFLAGS_DLL_DEFINE_FLAG=
|
||||||
-DGFLAGS_DLL_DECLARE_FLAG=
|
-DGFLAGS_DLL_DECLARE_FLAG=
|
||||||
-DGFLAGS_DLL_DECL=
|
-DGFLAGS_DLL_DECL=
|
||||||
)
|
)
|
||||||
set(GFLAGS_NAMESPACE "gflags")
|
set(GFLAGS_NAMESPACE "gflags")
|
||||||
set(GFLAGS_LIBRARIES extern_gflags)
|
set(GFLAGS_LIBRARIES extern_gflags)
|
||||||
set(GFLAGS_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/extern/gflags/src")
|
set(GFLAGS_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/extern/gflags/src")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SYSTEM_GLOG)
|
if(WITH_SYSTEM_GLOG)
|
||||||
find_package(Glog)
|
find_package(Glog)
|
||||||
if(NOT GLOG_FOUND)
|
if(NOT GLOG_FOUND)
|
||||||
message(FATAL_ERROR "System wide Glog is requested but was not found")
|
message(FATAL_ERROR "System wide Glog is requested but was not found")
|
||||||
endif()
|
endif()
|
||||||
# FindGlog does not define this, and we are not even sure what to use here.
|
# FindGlog does not define this, and we are not even sure what to use here.
|
||||||
set(GLOG_DEFINES)
|
set(GLOG_DEFINES)
|
||||||
else()
|
else()
|
||||||
set(GLOG_DEFINES
|
set(GLOG_DEFINES
|
||||||
-DGOOGLE_GLOG_DLL_DECL=
|
-DGOOGLE_GLOG_DLL_DECL=
|
||||||
)
|
)
|
||||||
set(GLOG_LIBRARIES extern_glog)
|
set(GLOG_LIBRARIES extern_glog)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows)
|
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows)
|
||||||
else()
|
else()
|
||||||
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/include)
|
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/include)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure Ceres
|
# Configure Ceres
|
||||||
|
|
||||||
if(WITH_LIBMV)
|
if(WITH_LIBMV)
|
||||||
# We always have C++11 which includes unordered_map.
|
# We always have C++11 which includes unordered_map.
|
||||||
set(CERES_DEFINES -DCERES_STD_UNORDERED_MAP)
|
set(CERES_DEFINES -DCERES_STD_UNORDERED_MAP)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -1289,259 +1289,259 @@ endif()
|
|||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_CAST_ALIGN -Wcast-align)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_CAST_ALIGN -Wcast-align)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
|
||||||
# system headers sometimes do this, disable for now, was: -Werror=strict-prototypes
|
# system headers sometimes do this, disable for now, was: -Werror=strict-prototypes
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES -Wstrict-prototypes)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES -Wstrict-prototypes)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_WRITE_STRINGS -Wwrite-strings)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_WRITE_STRINGS -Wwrite-strings)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_LOGICAL_OP -Wlogical-op)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_LOGICAL_OP -Wlogical-op)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNDEF -Wundef)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNDEF -Wundef)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_INIT_SELF -Winit-self) # needs -Wuninitialized
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_INIT_SELF -Winit-self) # needs -Wuninitialized
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_NULL -Wnonnull) # C only
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_NULL -Wnonnull) # C only
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_TYPE_LIMITS -Wtype-limits)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_TYPE_LIMITS -Wtype-limits)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_FORMAT_SIGN -Wformat-signedness)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_FORMAT_SIGN -Wformat-signedness)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_RESTRICT -Wrestrict)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_RESTRICT -Wrestrict)
|
||||||
|
|
||||||
# gcc 4.2 gives annoying warnings on every file with this
|
# gcc 4.2 gives annoying warnings on every file with this
|
||||||
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
|
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNINITIALIZED -Wuninitialized)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNINITIALIZED -Wuninitialized)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# versions before gcc4.6 give many BLI_math warnings
|
# versions before gcc4.6 give many BLI_math warnings
|
||||||
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.6")
|
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.6")
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_REDUNDANT_DECLS -Wredundant-decls)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_REDUNDANT_DECLS -Wredundant-decls)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_REDUNDANT_DECLS -Wredundant-decls)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_REDUNDANT_DECLS -Wredundant-decls)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# versions before gcc4.8 include global name-space.
|
# versions before gcc4.8 include global name-space.
|
||||||
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.8")
|
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.8")
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_SHADOW -Wshadow)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_SHADOW -Wshadow)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# disable because it gives warnings for printf() & friends.
|
# disable because it gives warnings for printf() & friends.
|
||||||
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_DOUBLE_PROMOTION -Wdouble-promotion -Wno-error=double-promotion)
|
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_DOUBLE_PROMOTION -Wdouble-promotion -Wno-error=double-promotion)
|
||||||
|
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_LOGICAL_OP -Wlogical-op)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_LOGICAL_OP -Wlogical-op)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_INIT_SELF -Winit-self) # needs -Wuninitialized
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_INIT_SELF -Winit-self) # needs -Wuninitialized
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_TYPE_LIMITS -Wtype-limits)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_TYPE_LIMITS -Wtype-limits)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_POINTER_ARITH -Wpointer-arith)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_POINTER_ARITH -Wpointer-arith)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_WRITE_STRINGS -Wwrite-strings)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_WRITE_STRINGS -Wwrite-strings)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_FORMAT_SIGN -Wformat-signedness)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_FORMAT_SIGN -Wformat-signedness)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_RESTRICT -Wrestrict)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_RESTRICT -Wrestrict)
|
||||||
|
|
||||||
# gcc 4.2 gives annoying warnings on every file with this
|
# gcc 4.2 gives annoying warnings on every file with this
|
||||||
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
|
if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNINITIALIZED -Wuninitialized)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNINITIALIZED -Wuninitialized)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# causes too many warnings
|
# causes too many warnings
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Use 'ATTR_FALLTHROUGH' macro to suppress.
|
# Use 'ATTR_FALLTHROUGH' macro to suppress.
|
||||||
if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
|
if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# flags to undo strict flags
|
# flags to undo strict flags
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_TYPE_LIMITS -Wno-type-limits)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_TYPE_LIMITS -Wno-type-limits)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_IN_BOOL_CONTEXT -Wno-int-in-bool-context)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_IN_BOOL_CONTEXT -Wno-int-in-bool-context)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_FORMAT -Wno-format)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_FORMAT -Wno-format)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_SWITCH -Wno-switch)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_SWITCH -Wno-switch)
|
||||||
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CLASS_MEMACCESS -Wno-class-memaccess)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CLASS_MEMACCESS -Wno-class-memaccess)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
|
||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
|
if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH -Wno-implicit-fallthrough)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH -Wno-implicit-fallthrough)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
|
|
||||||
# strange, clang complains these are not supported, but then uses them.
|
# strange, clang complains these are not supported, but then uses them.
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES -Wstrict-prototypes)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES -Wstrict-prototypes)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
|
||||||
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_OVERLOADED_VIRTUAL -Wno-overloaded-virtual) # we get a lot of these, if its a problem a dev needs to look into it.
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_OVERLOADED_VIRTUAL -Wno-overloaded-virtual) # we get a lot of these, if its a problem a dev needs to look into it.
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
||||||
|
|
||||||
# gives too many unfixable warnings
|
# gives too many unfixable warnings
|
||||||
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS -Wunused-macros)
|
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS -Wunused-macros)
|
||||||
# ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS -Wunused-macros)
|
# ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS -Wunused-macros)
|
||||||
|
|
||||||
# flags to undo strict flags
|
# flags to undo strict flags
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
|
||||||
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_VARIABLE_DECLARATIONS -Wno-missing-variable-declarations)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_VARIABLE_DECLARATIONS -Wno-missing-variable-declarations)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INCOMPAT_PTR_DISCARD_QUAL -Wno-incompatible-pointer-types-discards-qualifiers)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INCOMPAT_PTR_DISCARD_QUAL -Wno-incompatible-pointer-types-discards-qualifiers)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_TO_VOID_POINTER_CAST -Wno-int-to-void-pointer-cast)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_TO_VOID_POINTER_CAST -Wno-int-to-void-pointer-cast)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_PROTOTYPES -Wno-missing-prototypes)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_PROTOTYPES -Wno-missing-prototypes)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DUPLICATE_ENUM -Wno-duplicate-enum)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DUPLICATE_ENUM -Wno-duplicate-enum)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNDEF -Wno-undef)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNDEF -Wno-undef)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_NORETURN -Wno-missing-noreturn)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_NORETURN -Wno-missing-noreturn)
|
||||||
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_PRIVATE_FIELD -Wno-unused-private-field)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_PRIVATE_FIELD -Wno-unused-private-field)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CXX11_NARROWING -Wno-c++11-narrowing)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CXX11_NARROWING -Wno-c++11-narrowing)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_NON_VIRTUAL_DTOR -Wno-non-virtual-dtor)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_NON_VIRTUAL_DTOR -Wno-non-virtual-dtor)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_REORDER -Wno-reorder)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_REORDER -Wno-reorder)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
|
||||||
|
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
|
||||||
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
|
||||||
|
|
||||||
# disable numbered, false positives
|
# disable numbered, false positives
|
||||||
set(C_WARNINGS "${C_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
|
set(C_WARNINGS "${C_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
|
||||||
set(CXX_WARNINGS "${CXX_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
|
set(CXX_WARNINGS "${CXX_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
||||||
# most msvc warnings are C & C++
|
# most msvc warnings are C & C++
|
||||||
set(_WARNINGS
|
set(_WARNINGS
|
||||||
# warning level:
|
# warning level:
|
||||||
"/W3"
|
"/W3"
|
||||||
"/w34062" # switch statement contains 'default' but no 'case' labels
|
"/w34062" # switch statement contains 'default' but no 'case' labels
|
||||||
"/w34115" # 'type' : named type definition in parentheses
|
"/w34115" # 'type' : named type definition in parentheses
|
||||||
"/w34189" # local variable is initialized but not referenced
|
"/w34189" # local variable is initialized but not referenced
|
||||||
# disable:
|
# disable:
|
||||||
"/wd4018" # signed/unsigned mismatch
|
"/wd4018" # signed/unsigned mismatch
|
||||||
"/wd4146" # unary minus operator applied to unsigned type, result still unsigned
|
"/wd4146" # unary minus operator applied to unsigned type, result still unsigned
|
||||||
"/wd4065" # switch statement contains 'default' but no 'case' labels
|
"/wd4065" # switch statement contains 'default' but no 'case' labels
|
||||||
"/wd4127" # conditional expression is constant
|
"/wd4127" # conditional expression is constant
|
||||||
"/wd4181" # qualifier applied to reference type; ignored
|
"/wd4181" # qualifier applied to reference type; ignored
|
||||||
"/wd4200" # zero-sized array in struct/union
|
"/wd4200" # zero-sized array in struct/union
|
||||||
"/wd4244" # conversion from 'type1' to 'type2', possible loss of data
|
"/wd4244" # conversion from 'type1' to 'type2', possible loss of data
|
||||||
"/wd4267" # conversion from 'size_t' to 'type', possible loss of data
|
"/wd4267" # conversion from 'size_t' to 'type', possible loss of data
|
||||||
"/wd4305" # truncation from 'type1' to 'type2'
|
"/wd4305" # truncation from 'type1' to 'type2'
|
||||||
"/wd4800" # forcing value to bool 'true' or 'false'
|
"/wd4800" # forcing value to bool 'true' or 'false'
|
||||||
"/wd4828" # The file contains a character that is illegal
|
"/wd4828" # The file contains a character that is illegal
|
||||||
"/wd4996" # identifier was declared deprecated
|
"/wd4996" # identifier was declared deprecated
|
||||||
# errors:
|
# errors:
|
||||||
"/we4013" # 'function' undefined; assuming extern returning int
|
"/we4013" # 'function' undefined; assuming extern returning int
|
||||||
"/we4133" # incompatible pointer types
|
"/we4133" # incompatible pointer types
|
||||||
"/we4431" # missing type specifier - int assumed
|
"/we4431" # missing type specifier - int assumed
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC_VERSION GREATER_EQUAL 1911)
|
if(MSVC_VERSION GREATER_EQUAL 1911)
|
||||||
# see https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5038?view=vs-2017
|
# see https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5038?view=vs-2017
|
||||||
set(_WARNINGS "${_WARNINGS} /w35038") #order of initialisation in c++ constructors
|
set(_WARNINGS "${_WARNINGS} /w35038") #order of initialisation in c++ constructors
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
|
string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
|
||||||
set(C_WARNINGS "${_WARNINGS}")
|
set(C_WARNINGS "${_WARNINGS}")
|
||||||
set(CXX_WARNINGS "${_WARNINGS}")
|
set(CXX_WARNINGS "${_WARNINGS}")
|
||||||
unset(_WARNINGS)
|
unset(_WARNINGS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# ensure python header is found since detection can fail, this could happen
|
# ensure python header is found since detection can fail, this could happen
|
||||||
# with _any_ library but since we used a fixed python version this tends to
|
# with _any_ library but since we used a fixed python version this tends to
|
||||||
# be most problematic.
|
# be most problematic.
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
if(NOT EXISTS "${PYTHON_INCLUDE_DIR}/Python.h")
|
if(NOT EXISTS "${PYTHON_INCLUDE_DIR}/Python.h")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Missing: \"${PYTHON_INCLUDE_DIR}/Python.h\",\n"
|
"Missing: \"${PYTHON_INCLUDE_DIR}/Python.h\",\n"
|
||||||
"Set the cache entry 'PYTHON_INCLUDE_DIR' to point "
|
"Set the cache entry 'PYTHON_INCLUDE_DIR' to point "
|
||||||
"to a valid python include path. Containing "
|
"to a valid python include path. Containing "
|
||||||
"Python.h for python version \"${PYTHON_VERSION}\""
|
"Python.h for python version \"${PYTHON_VERSION}\""
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 OR APPLE)
|
if(WIN32 OR APPLE)
|
||||||
# Windows and macOS have this bundled with Python libraries.
|
# Windows and macOS have this bundled with Python libraries.
|
||||||
elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
|
elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
|
||||||
if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND))
|
if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND))
|
||||||
find_python_package(numpy)
|
find_python_package(numpy)
|
||||||
unset(PYTHON_NUMPY_INCLUDE_DIRS CACHE)
|
unset(PYTHON_NUMPY_INCLUDE_DIRS CACHE)
|
||||||
set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
|
set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
|
||||||
mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
|
mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 OR APPLE)
|
if(WIN32 OR APPLE)
|
||||||
# pass, we have this in lib/python/site-packages
|
# pass, we have this in lib/python/site-packages
|
||||||
elseif(WITH_PYTHON_INSTALL_REQUESTS)
|
elseif(WITH_PYTHON_INSTALL_REQUESTS)
|
||||||
find_python_package(requests)
|
find_python_package(requests)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(
|
if(
|
||||||
CMAKE_COMPILER_IS_GNUCC OR
|
CMAKE_COMPILER_IS_GNUCC OR
|
||||||
CMAKE_C_COMPILER_ID MATCHES "Clang" OR
|
CMAKE_C_COMPILER_ID MATCHES "Clang" OR
|
||||||
CMAKE_C_COMPILER_ID MATCHES "Intel"
|
CMAKE_C_COMPILER_ID MATCHES "Intel"
|
||||||
)
|
)
|
||||||
# TODO(sergey): Do we want c++11 or gnu-c++11 here?
|
# TODO(sergey): Do we want c++11 or gnu-c++11 here?
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||||
elseif(MSVC)
|
elseif(MSVC)
|
||||||
# Nothing special is needed, C++11 features are available by default.
|
# Nothing special is needed, C++11 features are available by default.
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++11 build")
|
message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++11 build")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Visual Studio has all standards it supports available by default
|
# Visual Studio has all standards it supports available by default
|
||||||
# Clang on windows copies this behavior and does not support these switches
|
# Clang on windows copies this behavior and does not support these switches
|
||||||
if(
|
if(
|
||||||
CMAKE_COMPILER_IS_GNUCC OR
|
CMAKE_COMPILER_IS_GNUCC OR
|
||||||
(CMAKE_C_COMPILER_ID MATCHES "Clang" AND (NOT MSVC)) OR
|
(CMAKE_C_COMPILER_ID MATCHES "Clang" AND (NOT MSVC)) OR
|
||||||
(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
)
|
)
|
||||||
# Use C11 + GNU extensions, works with GCC, Clang, ICC
|
# Use C11 + GNU extensions, works with GCC, Clang, ICC
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Include warnings first, so its possible to disable them with user defined flags
|
# Include warnings first, so its possible to disable them with user defined flags
|
||||||
@@ -1551,19 +1551,19 @@ set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS}")
|
|||||||
|
|
||||||
# defined above, platform specific but shared names
|
# defined above, platform specific but shared names
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
CYCLES_OSL
|
CYCLES_OSL
|
||||||
OSL_LIB_EXEC
|
OSL_LIB_EXEC
|
||||||
OSL_COMPILER
|
OSL_COMPILER
|
||||||
OSL_LIB_COMP
|
OSL_LIB_COMP
|
||||||
OSL_LIB_QUERY
|
OSL_LIB_QUERY
|
||||||
OSL_INCLUDE_DIR
|
OSL_INCLUDE_DIR
|
||||||
)
|
)
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
LLVM_CONFIG
|
LLVM_CONFIG
|
||||||
LLVM_ROOT_DIR
|
LLVM_ROOT_DIR
|
||||||
LLVM_LIBRARY
|
LLVM_LIBRARY
|
||||||
LLVM_VERSION
|
LLVM_VERSION
|
||||||
)
|
)
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
@@ -1571,12 +1571,12 @@ mark_as_advanced(
|
|||||||
|
|
||||||
# better not set includes here but this debugging option is off by default.
|
# better not set includes here but this debugging option is off by default.
|
||||||
if(WITH_CXX_GUARDEDALLOC)
|
if(WITH_CXX_GUARDEDALLOC)
|
||||||
include_directories(${CMAKE_SOURCE_DIR}/intern/guardedalloc)
|
include_directories(${CMAKE_SOURCE_DIR}/intern/guardedalloc)
|
||||||
add_definitions(-DWITH_CXX_GUARDEDALLOC)
|
add_definitions(-DWITH_CXX_GUARDEDALLOC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_ASSERT_ABORT)
|
if(WITH_ASSERT_ABORT)
|
||||||
add_definitions(-DWITH_ASSERT_ABORT)
|
add_definitions(-DWITH_ASSERT_ABORT)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# message(STATUS "Using CFLAGS: ${CMAKE_C_FLAGS}")
|
# message(STATUS "Using CFLAGS: ${CMAKE_C_FLAGS}")
|
||||||
@@ -1586,31 +1586,31 @@ endif()
|
|||||||
# Libraries
|
# Libraries
|
||||||
|
|
||||||
if(WITH_GTESTS)
|
if(WITH_GTESTS)
|
||||||
include(GTestTesting)
|
include(GTestTesting)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BLENDER)
|
if(WITH_BLENDER)
|
||||||
add_subdirectory(intern)
|
add_subdirectory(intern)
|
||||||
add_subdirectory(extern)
|
add_subdirectory(extern)
|
||||||
|
|
||||||
# source after intern and extern to gather all
|
# source after intern and extern to gather all
|
||||||
# internal and external library information first, for test linking
|
# internal and external library information first, for test linking
|
||||||
add_subdirectory(source)
|
add_subdirectory(source)
|
||||||
elseif(WITH_CYCLES_STANDALONE)
|
elseif(WITH_CYCLES_STANDALONE)
|
||||||
add_subdirectory(intern/cycles)
|
add_subdirectory(intern/cycles)
|
||||||
add_subdirectory(extern/clew)
|
add_subdirectory(extern/clew)
|
||||||
if(WITH_CUDA_DYNLOAD)
|
if(WITH_CUDA_DYNLOAD)
|
||||||
add_subdirectory(extern/cuew)
|
add_subdirectory(extern/cuew)
|
||||||
endif()
|
endif()
|
||||||
if(NOT WITH_SYSTEM_GLEW)
|
if(NOT WITH_SYSTEM_GLEW)
|
||||||
add_subdirectory(extern/glew)
|
add_subdirectory(extern/glew)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Blender Application
|
# Blender Application
|
||||||
if(WITH_BLENDER)
|
if(WITH_BLENDER)
|
||||||
add_subdirectory(source/creator)
|
add_subdirectory(source/creator)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -1626,7 +1626,7 @@ include(build_files/cmake/packaging.cmake)
|
|||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Use dynamic loading for OpenMP
|
# Use dynamic loading for OpenMP
|
||||||
if(WITH_BLENDER)
|
if(WITH_BLENDER)
|
||||||
openmp_delayload(blender)
|
openmp_delayload(blender)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -1634,111 +1634,111 @@ endif()
|
|||||||
|
|
||||||
if(FIRST_RUN)
|
if(FIRST_RUN)
|
||||||
|
|
||||||
set(_config_msg "\nBlender Configuration\n=====================")
|
set(_config_msg "\nBlender Configuration\n=====================")
|
||||||
|
|
||||||
function(info_cfg_option
|
function(info_cfg_option
|
||||||
_setting
|
_setting
|
||||||
)
|
)
|
||||||
|
|
||||||
set(_msg " - ${_setting}")
|
set(_msg " - ${_setting}")
|
||||||
string(LENGTH "${_msg}" _len)
|
string(LENGTH "${_msg}" _len)
|
||||||
while("32" GREATER "${_len}")
|
while("32" GREATER "${_len}")
|
||||||
set(_msg "${_msg} ")
|
set(_msg "${_msg} ")
|
||||||
math(EXPR _len "${_len} + 1")
|
math(EXPR _len "${_len} + 1")
|
||||||
endwhile()
|
endwhile()
|
||||||
|
|
||||||
set(_config_msg "${_config_msg}\n${_msg}${${_setting}}" PARENT_SCOPE)
|
set(_config_msg "${_config_msg}\n${_msg}${${_setting}}" PARENT_SCOPE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(info_cfg_text
|
function(info_cfg_text
|
||||||
_text
|
_text
|
||||||
)
|
)
|
||||||
|
|
||||||
set(_config_msg "${_config_msg}\n\n ${_text}" PARENT_SCOPE)
|
set(_config_msg "${_config_msg}\n\n ${_text}" PARENT_SCOPE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
message(STATUS "C Compiler: \"${CMAKE_C_COMPILER_ID}\"")
|
message(STATUS "C Compiler: \"${CMAKE_C_COMPILER_ID}\"")
|
||||||
message(STATUS "C++ Compiler: \"${CMAKE_CXX_COMPILER_ID}\"")
|
message(STATUS "C++ Compiler: \"${CMAKE_CXX_COMPILER_ID}\"")
|
||||||
|
|
||||||
info_cfg_text("Build Options:")
|
info_cfg_text("Build Options:")
|
||||||
info_cfg_option(WITH_BULLET)
|
info_cfg_option(WITH_BULLET)
|
||||||
info_cfg_option(WITH_IK_SOLVER)
|
info_cfg_option(WITH_IK_SOLVER)
|
||||||
info_cfg_option(WITH_IK_ITASC)
|
info_cfg_option(WITH_IK_ITASC)
|
||||||
info_cfg_option(WITH_OPENCOLLADA)
|
info_cfg_option(WITH_OPENCOLLADA)
|
||||||
info_cfg_option(WITH_FFTW3)
|
info_cfg_option(WITH_FFTW3)
|
||||||
info_cfg_option(WITH_INTERNATIONAL)
|
info_cfg_option(WITH_INTERNATIONAL)
|
||||||
info_cfg_option(WITH_INPUT_NDOF)
|
info_cfg_option(WITH_INPUT_NDOF)
|
||||||
info_cfg_option(WITH_CYCLES)
|
info_cfg_option(WITH_CYCLES)
|
||||||
info_cfg_option(WITH_FREESTYLE)
|
info_cfg_option(WITH_FREESTYLE)
|
||||||
info_cfg_option(WITH_OPENCOLORIO)
|
info_cfg_option(WITH_OPENCOLORIO)
|
||||||
info_cfg_option(WITH_OPENVDB)
|
info_cfg_option(WITH_OPENVDB)
|
||||||
info_cfg_option(WITH_ALEMBIC)
|
info_cfg_option(WITH_ALEMBIC)
|
||||||
|
|
||||||
info_cfg_text("Compiler Options:")
|
info_cfg_text("Compiler Options:")
|
||||||
info_cfg_option(WITH_BUILDINFO)
|
info_cfg_option(WITH_BUILDINFO)
|
||||||
info_cfg_option(WITH_OPENMP)
|
info_cfg_option(WITH_OPENMP)
|
||||||
info_cfg_option(WITH_RAYOPTIMIZATION)
|
info_cfg_option(WITH_RAYOPTIMIZATION)
|
||||||
|
|
||||||
info_cfg_text("System Options:")
|
info_cfg_text("System Options:")
|
||||||
info_cfg_option(WITH_INSTALL_PORTABLE)
|
info_cfg_option(WITH_INSTALL_PORTABLE)
|
||||||
info_cfg_option(WITH_X11_ALPHA)
|
info_cfg_option(WITH_X11_ALPHA)
|
||||||
info_cfg_option(WITH_X11_XF86VMODE)
|
info_cfg_option(WITH_X11_XF86VMODE)
|
||||||
info_cfg_option(WITH_X11_XFIXES)
|
info_cfg_option(WITH_X11_XFIXES)
|
||||||
info_cfg_option(WITH_X11_XINPUT)
|
info_cfg_option(WITH_X11_XINPUT)
|
||||||
info_cfg_option(WITH_MEM_JEMALLOC)
|
info_cfg_option(WITH_MEM_JEMALLOC)
|
||||||
info_cfg_option(WITH_MEM_VALGRIND)
|
info_cfg_option(WITH_MEM_VALGRIND)
|
||||||
info_cfg_option(WITH_SYSTEM_GLEW)
|
info_cfg_option(WITH_SYSTEM_GLEW)
|
||||||
|
|
||||||
info_cfg_text("Image Formats:")
|
info_cfg_text("Image Formats:")
|
||||||
info_cfg_option(WITH_OPENIMAGEIO)
|
info_cfg_option(WITH_OPENIMAGEIO)
|
||||||
info_cfg_option(WITH_IMAGE_CINEON)
|
info_cfg_option(WITH_IMAGE_CINEON)
|
||||||
info_cfg_option(WITH_IMAGE_DDS)
|
info_cfg_option(WITH_IMAGE_DDS)
|
||||||
info_cfg_option(WITH_IMAGE_HDR)
|
info_cfg_option(WITH_IMAGE_HDR)
|
||||||
info_cfg_option(WITH_IMAGE_OPENEXR)
|
info_cfg_option(WITH_IMAGE_OPENEXR)
|
||||||
info_cfg_option(WITH_IMAGE_OPENJPEG)
|
info_cfg_option(WITH_IMAGE_OPENJPEG)
|
||||||
info_cfg_option(WITH_IMAGE_TIFF)
|
info_cfg_option(WITH_IMAGE_TIFF)
|
||||||
|
|
||||||
info_cfg_text("Audio:")
|
info_cfg_text("Audio:")
|
||||||
info_cfg_option(WITH_OPENAL)
|
info_cfg_option(WITH_OPENAL)
|
||||||
info_cfg_option(WITH_SDL)
|
info_cfg_option(WITH_SDL)
|
||||||
info_cfg_option(WITH_SDL_DYNLOAD)
|
info_cfg_option(WITH_SDL_DYNLOAD)
|
||||||
info_cfg_option(WITH_JACK)
|
info_cfg_option(WITH_JACK)
|
||||||
info_cfg_option(WITH_JACK_DYNLOAD)
|
info_cfg_option(WITH_JACK_DYNLOAD)
|
||||||
info_cfg_option(WITH_CODEC_AVI)
|
info_cfg_option(WITH_CODEC_AVI)
|
||||||
info_cfg_option(WITH_CODEC_FFMPEG)
|
info_cfg_option(WITH_CODEC_FFMPEG)
|
||||||
info_cfg_option(WITH_CODEC_SNDFILE)
|
info_cfg_option(WITH_CODEC_SNDFILE)
|
||||||
|
|
||||||
info_cfg_text("Compression:")
|
info_cfg_text("Compression:")
|
||||||
info_cfg_option(WITH_LZMA)
|
info_cfg_option(WITH_LZMA)
|
||||||
info_cfg_option(WITH_LZO)
|
info_cfg_option(WITH_LZO)
|
||||||
|
|
||||||
info_cfg_text("Python:")
|
info_cfg_text("Python:")
|
||||||
info_cfg_option(WITH_PYTHON_INSTALL)
|
info_cfg_option(WITH_PYTHON_INSTALL)
|
||||||
info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
|
info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
|
||||||
info_cfg_option(WITH_PYTHON_MODULE)
|
info_cfg_option(WITH_PYTHON_MODULE)
|
||||||
info_cfg_option(WITH_PYTHON_SAFETY)
|
info_cfg_option(WITH_PYTHON_SAFETY)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
info_cfg_option(WITH_PYTHON_FRAMEWORK)
|
info_cfg_option(WITH_PYTHON_FRAMEWORK)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
info_cfg_text("Modifiers:")
|
info_cfg_text("Modifiers:")
|
||||||
info_cfg_option(WITH_MOD_REMESH)
|
info_cfg_option(WITH_MOD_REMESH)
|
||||||
info_cfg_option(WITH_MOD_FLUID)
|
info_cfg_option(WITH_MOD_FLUID)
|
||||||
info_cfg_option(WITH_MOD_OCEANSIM)
|
info_cfg_option(WITH_MOD_OCEANSIM)
|
||||||
|
|
||||||
info_cfg_text("OpenGL:")
|
info_cfg_text("OpenGL:")
|
||||||
info_cfg_option(WITH_GLEW_ES)
|
info_cfg_option(WITH_GLEW_ES)
|
||||||
info_cfg_option(WITH_GL_EGL)
|
info_cfg_option(WITH_GL_EGL)
|
||||||
info_cfg_option(WITH_GL_PROFILE_ES20)
|
info_cfg_option(WITH_GL_PROFILE_ES20)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
info_cfg_option(WITH_GL_ANGLE)
|
info_cfg_option(WITH_GL_ANGLE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
info_cfg_text("")
|
info_cfg_text("")
|
||||||
|
|
||||||
message("${_config_msg}")
|
message("${_config_msg}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(0)
|
if(0)
|
||||||
print_all_vars()
|
print_all_vars()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -47,13 +47,13 @@ include(cmake/options.cmake)
|
|||||||
include(cmake/versions.cmake)
|
include(cmake/versions.cmake)
|
||||||
|
|
||||||
if(ENABLE_MINGW64)
|
if(ENABLE_MINGW64)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
include(cmake/setup_mingw64.cmake)
|
include(cmake/setup_mingw64.cmake)
|
||||||
else()
|
else()
|
||||||
include(cmake/setup_mingw32.cmake)
|
include(cmake/setup_mingw32.cmake)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(mingw_LIBDIR ${LIBDIR})
|
set(mingw_LIBDIR ${LIBDIR})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(cmake/zlib.cmake)
|
include(cmake/zlib.cmake)
|
||||||
@@ -94,61 +94,61 @@ include(cmake/numpy.cmake)
|
|||||||
include(cmake/pugixml.cmake)
|
include(cmake/pugixml.cmake)
|
||||||
|
|
||||||
if(WITH_WEBP)
|
if(WITH_WEBP)
|
||||||
include(cmake/webp.cmake)
|
include(cmake/webp.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_EMBREE)
|
if(WITH_EMBREE)
|
||||||
include(cmake/embree.cmake)
|
include(cmake/embree.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# HMD branch deps
|
# HMD branch deps
|
||||||
include(cmake/hidapi.cmake)
|
include(cmake/hidapi.cmake)
|
||||||
# OCIO deps
|
# OCIO deps
|
||||||
include(cmake/tinyxml.cmake)
|
include(cmake/tinyxml.cmake)
|
||||||
include(cmake/yamlcpp.cmake)
|
include(cmake/yamlcpp.cmake)
|
||||||
# LCMS is an OCIO dep, but only if you build the apps, leaving it here for convenience
|
# LCMS is an OCIO dep, but only if you build the apps, leaving it here for convenience
|
||||||
#include(cmake/lcms.cmake)
|
#include(cmake/lcms.cmake)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WIN32 OR ENABLE_MINGW64)
|
if(NOT WIN32 OR ENABLE_MINGW64)
|
||||||
include(cmake/openjpeg.cmake)
|
include(cmake/openjpeg.cmake)
|
||||||
if(NOT WIN32 OR BUILD_MODE STREQUAL Release)
|
if(NOT WIN32 OR BUILD_MODE STREQUAL Release)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
include(cmake/zlib_mingw.cmake)
|
include(cmake/zlib_mingw.cmake)
|
||||||
endif()
|
endif()
|
||||||
include(cmake/lame.cmake)
|
include(cmake/lame.cmake)
|
||||||
include(cmake/ogg.cmake)
|
include(cmake/ogg.cmake)
|
||||||
include(cmake/vorbis.cmake)
|
include(cmake/vorbis.cmake)
|
||||||
include(cmake/theora.cmake)
|
include(cmake/theora.cmake)
|
||||||
include(cmake/vpx.cmake)
|
include(cmake/vpx.cmake)
|
||||||
include(cmake/x264.cmake)
|
include(cmake/x264.cmake)
|
||||||
include(cmake/xvidcore.cmake)
|
include(cmake/xvidcore.cmake)
|
||||||
include(cmake/faad.cmake)
|
include(cmake/faad.cmake)
|
||||||
include(cmake/ffmpeg.cmake)
|
include(cmake/ffmpeg.cmake)
|
||||||
include(cmake/fftw.cmake)
|
include(cmake/fftw.cmake)
|
||||||
include(cmake/sndfile.cmake)
|
include(cmake/sndfile.cmake)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
include(cmake/iconv.cmake)
|
include(cmake/iconv.cmake)
|
||||||
endif()
|
endif()
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
include(cmake/flac.cmake)
|
include(cmake/flac.cmake)
|
||||||
include(cmake/xml2.cmake)
|
include(cmake/xml2.cmake)
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
include(cmake/spnav.cmake)
|
include(cmake/spnav.cmake)
|
||||||
include(cmake/jemalloc.cmake)
|
include(cmake/jemalloc.cmake)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
include(cmake/bzip2.cmake)
|
include(cmake/bzip2.cmake)
|
||||||
include(cmake/ffi.cmake)
|
include(cmake/ffi.cmake)
|
||||||
include(cmake/lzma.cmake)
|
include(cmake/lzma.cmake)
|
||||||
include(cmake/ssl.cmake)
|
include(cmake/ssl.cmake)
|
||||||
include(cmake/sqlite.cmake)
|
include(cmake/sqlite.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(cmake/harvest.cmake)
|
include(cmake/harvest.cmake)
|
||||||
|
|||||||
@@ -17,89 +17,89 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(ALEMBIC_HDF5)
|
if(ALEMBIC_HDF5)
|
||||||
set(ALEMBIC_HDF5_HL)
|
set(ALEMBIC_HDF5_HL)
|
||||||
# in debug mode we do not build HDF5_hdf5_hl_LIBRARY which makes cmake really
|
# in debug mode we do not build HDF5_hdf5_hl_LIBRARY which makes cmake really
|
||||||
# unhappy, stub it with the debug mode lib. it's not linking it in at this
|
# unhappy, stub it with the debug mode lib. it's not linking it in at this
|
||||||
# point in time anyhow
|
# point in time anyhow
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
set(ALEMBIC_HDF5_HL -DHDF5_hdf5_hl_LIBRARY=${LIBDIR}/hdf5/lib/libhdf5_hl_D.${LIBEXT})
|
set(ALEMBIC_HDF5_HL -DHDF5_hdf5_hl_LIBRARY=${LIBDIR}/hdf5/lib/libhdf5_hl_D.${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(ALEMBIC_ILMBASE ${LIBDIR}/openexr)
|
set(ALEMBIC_ILMBASE ${LIBDIR}/openexr)
|
||||||
else()
|
else()
|
||||||
set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase)
|
set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(ALEMBIC_EXTRA_ARGS
|
set(ALEMBIC_EXTRA_ARGS
|
||||||
-DBUILDSTATIC=ON
|
-DBUILDSTATIC=ON
|
||||||
-DLINKSTATIC=ON
|
-DLINKSTATIC=ON
|
||||||
-DALEMBIC_LIB_USES_BOOST=ON
|
-DALEMBIC_LIB_USES_BOOST=ON
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
-DUSE_STATIC_BOOST=On
|
-DUSE_STATIC_BOOST=On
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
-DBoost_USE_STATIC_RUNTIME=ON
|
-DBoost_USE_STATIC_RUNTIME=ON
|
||||||
-DBoost_DEBUG=ON
|
-DBoost_DEBUG=ON
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
-DILMBASE_ROOT=${ALEMBIC_ILMBASE}
|
-DILMBASE_ROOT=${ALEMBIC_ILMBASE}
|
||||||
-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR
|
-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR
|
||||||
-DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DUSE_PYILMBASE=0
|
-DUSE_PYILMBASE=0
|
||||||
-DUSE_PYALEMBIC=0
|
-DUSE_PYALEMBIC=0
|
||||||
-DUSE_ARNOLD=0
|
-DUSE_ARNOLD=0
|
||||||
-DUSE_MAYA=0
|
-DUSE_MAYA=0
|
||||||
-DUSE_PRMAN=0
|
-DUSE_PRMAN=0
|
||||||
-DUSE_HDF5=Off
|
-DUSE_HDF5=Off
|
||||||
-DUSE_STATIC_HDF5=Off
|
-DUSE_STATIC_HDF5=Off
|
||||||
-DHDF5_ROOT=${LIBDIR}/hdf5
|
-DHDF5_ROOT=${LIBDIR}/hdf5
|
||||||
-DUSE_TESTS=Off
|
-DUSE_TESTS=Off
|
||||||
-DALEMBIC_NO_OPENGL=1
|
-DALEMBIC_NO_OPENGL=1
|
||||||
-DUSE_BINARIES=ON
|
-DUSE_BINARIES=ON
|
||||||
-DALEMBIC_ILMBASE_LINK_STATIC=On
|
-DALEMBIC_ILMBASE_LINK_STATIC=On
|
||||||
-DALEMBIC_SHARED_LIBS=OFF
|
-DALEMBIC_SHARED_LIBS=OFF
|
||||||
-DGLUT_INCLUDE_DIR=""
|
-DGLUT_INCLUDE_DIR=""
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
${ALEMBIC_HDF5_HL}
|
${ALEMBIC_HDF5_HL}
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_alembic
|
ExternalProject_Add(external_alembic
|
||||||
URL ${ALEMBIC_URI}
|
URL ${ALEMBIC_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${ALEMBIC_MD5}
|
URL_HASH MD5=${ALEMBIC_MD5}
|
||||||
PREFIX ${BUILD_DIR}/alembic
|
PREFIX ${BUILD_DIR}/alembic
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/alembic -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${ALEMBIC_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/alembic -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${ALEMBIC_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/alembic
|
INSTALL_DIR ${LIBDIR}/alembic
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_alembic after_install
|
ExternalProject_Add_Step(external_alembic after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/alembic ${HARVEST_TARGET}/alembic
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/alembic ${HARVEST_TARGET}/alembic
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_alembic after_install
|
ExternalProject_Add_Step(external_alembic after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/alembic/lib/alembic.lib ${HARVEST_TARGET}/alembic/lib/alembic_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/alembic/lib/alembic.lib ${HARVEST_TARGET}/alembic/lib/alembic_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_alembic
|
external_alembic
|
||||||
external_boost
|
external_boost
|
||||||
external_zlib
|
external_zlib
|
||||||
external_ilmbase
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,51 +17,51 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(THUMB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../release/windows/blendthumb)
|
set(THUMB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../release/windows/blendthumb)
|
||||||
|
|
||||||
ExternalProject_Add(external_zlib_32
|
ExternalProject_Add(external_zlib_32
|
||||||
URL ${ZLIB_URI}
|
URL ${ZLIB_URI}
|
||||||
CMAKE_GENERATOR ${GENERATOR_32}
|
CMAKE_GENERATOR ${GENERATOR_32}
|
||||||
URL_HASH MD5=${ZLIB_HASH}
|
URL_HASH MD5=${ZLIB_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/zlib32
|
PREFIX ${BUILD_DIR}/zlib32
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib32 ${DEFAULT_CMAKE_FLAGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib32 ${DEFAULT_CMAKE_FLAGS}
|
||||||
INSTALL_DIR ${LIBDIR}/zlib32
|
INSTALL_DIR ${LIBDIR}/zlib32
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_zlib_64
|
ExternalProject_Add(external_zlib_64
|
||||||
URL ${ZLIB_URI}
|
URL ${ZLIB_URI}
|
||||||
CMAKE_GENERATOR ${GENERATOR_64}
|
CMAKE_GENERATOR ${GENERATOR_64}
|
||||||
URL_HASH MD5=${ZLIB_HASH}
|
URL_HASH MD5=${ZLIB_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/zlib64
|
PREFIX ${BUILD_DIR}/zlib64
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib64 ${DEFAULT_CMAKE_FLAGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib64 ${DEFAULT_CMAKE_FLAGS}
|
||||||
INSTALL_DIR ${LIBDIR}/zlib64
|
INSTALL_DIR ${LIBDIR}/zlib64
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_blendthumb_32
|
ExternalProject_Add(external_blendthumb_32
|
||||||
CMAKE_GENERATOR ${GENERATOR_32}
|
CMAKE_GENERATOR ${GENERATOR_32}
|
||||||
SOURCE_DIR ${THUMB_DIR}
|
SOURCE_DIR ${THUMB_DIR}
|
||||||
PREFIX ${BUILD_DIR}/blendthumb32
|
PREFIX ${BUILD_DIR}/blendthumb32
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb32 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib32/include -DZLIB_LIBS=${LIBDIR}/zlib32/lib/zlibstatic.lib
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb32 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib32/include -DZLIB_LIBS=${LIBDIR}/zlib32/lib/zlibstatic.lib
|
||||||
INSTALL_DIR ${LIBDIR}/blendthumb32
|
INSTALL_DIR ${LIBDIR}/blendthumb32
|
||||||
)
|
)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_blendthumb_32
|
external_blendthumb_32
|
||||||
external_zlib_32
|
external_zlib_32
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_blendthumb_64
|
ExternalProject_Add(external_blendthumb_64
|
||||||
CMAKE_GENERATOR ${GENERATOR_64}
|
CMAKE_GENERATOR ${GENERATOR_64}
|
||||||
SOURCE_DIR ${THUMB_DIR}
|
SOURCE_DIR ${THUMB_DIR}
|
||||||
PREFIX ${BUILD_DIR}/blendthumb64
|
PREFIX ${BUILD_DIR}/blendthumb64
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb64 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib64/include -DZLIB_LIBS=${LIBDIR}/zlib64/lib/zlibstatic.lib
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb64 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib64/include -DZLIB_LIBS=${LIBDIR}/zlib64/lib/zlibstatic.lib
|
||||||
INSTALL_DIR ${LIBDIR}/blendthumb64
|
INSTALL_DIR ${LIBDIR}/blendthumb64
|
||||||
)
|
)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_blendthumb_64
|
external_blendthumb_64
|
||||||
external_zlib_64
|
external_zlib_64
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,59 +17,59 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(BLOSC_EXTRA_ARGS
|
set(BLOSC_EXTRA_ARGS
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DBUILD_TESTS=OFF
|
-DBUILD_TESTS=OFF
|
||||||
-DBUILD_BENCHMARKS=OFF
|
-DBUILD_BENCHMARKS=OFF
|
||||||
-DCMAKE_DEBUG_POSTFIX=_d
|
-DCMAKE_DEBUG_POSTFIX=_d
|
||||||
-DThreads_FOUND=1
|
-DThreads_FOUND=1
|
||||||
-DPTHREAD_LIBS=${LIBDIR}/pthreads/lib/pthreadVC3.lib
|
-DPTHREAD_LIBS=${LIBDIR}/pthreads/lib/pthreadVC3.lib
|
||||||
-DPTHREAD_INCLUDE_DIR=${LIBDIR}/pthreads/inc
|
-DPTHREAD_INCLUDE_DIR=${LIBDIR}/pthreads/inc
|
||||||
-DDEACTIVATE_SNAPPY=ON
|
-DDEACTIVATE_SNAPPY=ON
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
#prevent blosc from including it's own local copy of zlib in the object file
|
#prevent blosc from including it's own local copy of zlib in the object file
|
||||||
#and cause linker errors with everybody else
|
#and cause linker errors with everybody else
|
||||||
set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
|
set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
|
||||||
-DPREFER_EXTERNAL_ZLIB=ON
|
-DPREFER_EXTERNAL_ZLIB=ON
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_blosc
|
ExternalProject_Add(external_blosc
|
||||||
URL ${BLOSC_URI}
|
URL ${BLOSC_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${BLOSC_HASH}
|
URL_HASH MD5=${BLOSC_HASH}
|
||||||
PREFIX ${BUILD_DIR}/blosc
|
PREFIX ${BUILD_DIR}/blosc
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/blosc/src/external_blosc < ${PATCH_DIR}/blosc.diff
|
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/blosc/src/external_blosc < ${PATCH_DIR}/blosc.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/blosc
|
INSTALL_DIR ${LIBDIR}/blosc
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_blosc
|
external_blosc
|
||||||
external_zlib
|
external_zlib
|
||||||
)
|
)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_blosc
|
external_blosc
|
||||||
external_pthreads
|
external_pthreads
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_blosc after_install
|
ExternalProject_Add_Step(external_blosc after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc.lib ${HARVEST_TARGET}/blosc/lib/libblosc.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc.lib ${HARVEST_TARGET}/blosc/lib/libblosc.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/blosc/include/ ${HARVEST_TARGET}/blosc/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/blosc/include/ ${HARVEST_TARGET}/blosc/include/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_blosc after_install
|
ExternalProject_Add_Step(external_blosc after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc_d.lib ${HARVEST_TARGET}/blosc/lib/libblosc_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc_d.lib ${HARVEST_TARGET}/blosc/lib/libblosc_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,91 +19,91 @@
|
|||||||
set(BOOST_ADDRESS_MODEL 64)
|
set(BOOST_ADDRESS_MODEL 64)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(PYTHON_ARCH x64)
|
set(PYTHON_ARCH x64)
|
||||||
set(PYTHON_ARCH2 win-AMD64)
|
set(PYTHON_ARCH2 win-AMD64)
|
||||||
set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/amd64/)
|
set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/amd64/)
|
||||||
else()
|
else()
|
||||||
set(PYTHON_ARCH x86)
|
set(PYTHON_ARCH x86)
|
||||||
set(PYTHON_ARCH2 win32)
|
set(PYTHON_ARCH2 win32)
|
||||||
set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/win32/)
|
set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/win32/)
|
||||||
set(BOOST_ADDRESS_MODEL 32)
|
set(BOOST_ADDRESS_MODEL 32)
|
||||||
endif()
|
endif()
|
||||||
if(MSVC14)
|
if(MSVC14)
|
||||||
set(BOOST_TOOLSET toolset=msvc-14.0)
|
set(BOOST_TOOLSET toolset=msvc-14.0)
|
||||||
set(BOOST_COMPILER_STRING -vc140)
|
set(BOOST_COMPILER_STRING -vc140)
|
||||||
endif()
|
endif()
|
||||||
set(JAM_FILE ${BUILD_DIR}/boost/src/external_boost/user-config.jam)
|
set(JAM_FILE ${BUILD_DIR}/boost/src/external_boost/user-config.jam)
|
||||||
set(semi_path "${PATCH_DIR}/semi.txt")
|
set(semi_path "${PATCH_DIR}/semi.txt")
|
||||||
FILE(TO_NATIVE_PATH ${semi_path} semi_path)
|
FILE(TO_NATIVE_PATH ${semi_path} semi_path)
|
||||||
set(BOOST_CONFIGURE_COMMAND bootstrap.bat &&
|
set(BOOST_CONFIGURE_COMMAND bootstrap.bat &&
|
||||||
echo using python : ${PYTHON_OUTPUTDIR}\\python.exe > "${JAM_FILE}" &&
|
echo using python : ${PYTHON_OUTPUTDIR}\\python.exe > "${JAM_FILE}" &&
|
||||||
echo. : ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/pc >> "${JAM_FILE}" &&
|
echo. : ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/pc >> "${JAM_FILE}" &&
|
||||||
echo. : ${BUILD_DIR}/python/src/external_python/pcbuild >> "${JAM_FILE}" &&
|
echo. : ${BUILD_DIR}/python/src/external_python/pcbuild >> "${JAM_FILE}" &&
|
||||||
type ${semi_path} >> "${JAM_FILE}"
|
type ${semi_path} >> "${JAM_FILE}"
|
||||||
)
|
)
|
||||||
set(BOOST_BUILD_COMMAND bjam)
|
set(BOOST_BUILD_COMMAND bjam)
|
||||||
#--user-config=user-config.jam
|
#--user-config=user-config.jam
|
||||||
set(BOOST_BUILD_OPTIONS runtime-link=static )
|
set(BOOST_BUILD_OPTIONS runtime-link=static )
|
||||||
#set(BOOST_WITH_PYTHON --with-python)
|
#set(BOOST_WITH_PYTHON --with-python)
|
||||||
set(BOOST_HARVEST_CMD ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ )
|
set(BOOST_HARVEST_CMD ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ )
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/)
|
set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
|
set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
|
||||||
set(BOOST_BUILD_COMMAND ./b2)
|
set(BOOST_BUILD_COMMAND ./b2)
|
||||||
set(BOOST_BUILD_OPTIONS toolset=darwin cxxflags=${PLATFORM_CXXFLAGS} linkflags=${PLATFORM_LDFLAGS} --disable-icu boost.locale.icu=off)
|
set(BOOST_BUILD_OPTIONS toolset=darwin cxxflags=${PLATFORM_CXXFLAGS} linkflags=${PLATFORM_LDFLAGS} --disable-icu boost.locale.icu=off)
|
||||||
set(BOOST_HARVEST_CMD echo .)
|
set(BOOST_HARVEST_CMD echo .)
|
||||||
set(BOOST_PATCH_COMMAND echo .)
|
set(BOOST_PATCH_COMMAND echo .)
|
||||||
else()
|
else()
|
||||||
set(BOOST_HARVEST_CMD echo .)
|
set(BOOST_HARVEST_CMD echo .)
|
||||||
set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
|
set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
|
||||||
set(BOOST_BUILD_COMMAND ./b2)
|
set(BOOST_BUILD_COMMAND ./b2)
|
||||||
set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
|
set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
|
||||||
set(BOOST_PATCH_COMMAND echo .)
|
set(BOOST_PATCH_COMMAND echo .)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(BOOST_ADDRESS_MODEL 64)
|
set(BOOST_ADDRESS_MODEL 64)
|
||||||
else()
|
else()
|
||||||
set(BOOST_ADDRESS_MODEL 32)
|
set(BOOST_ADDRESS_MODEL 32)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(BOOST_OPTIONS
|
set(BOOST_OPTIONS
|
||||||
--with-filesystem
|
--with-filesystem
|
||||||
--with-locale
|
--with-locale
|
||||||
--with-thread
|
--with-thread
|
||||||
--with-regex
|
--with-regex
|
||||||
--with-system
|
--with-system
|
||||||
--with-date_time
|
--with-date_time
|
||||||
--with-wave
|
--with-wave
|
||||||
--with-atomic
|
--with-atomic
|
||||||
--with-serialization
|
--with-serialization
|
||||||
--with-program_options
|
--with-program_options
|
||||||
--with-iostreams
|
--with-iostreams
|
||||||
${BOOST_WITH_PYTHON}
|
${BOOST_WITH_PYTHON}
|
||||||
${BOOST_TOOLSET}
|
${BOOST_TOOLSET}
|
||||||
)
|
)
|
||||||
|
|
||||||
string(TOLOWER ${BUILD_MODE} BOOST_BUILD_TYPE)
|
string(TOLOWER ${BUILD_MODE} BOOST_BUILD_TYPE)
|
||||||
|
|
||||||
ExternalProject_Add(external_boost
|
ExternalProject_Add(external_boost
|
||||||
URL ${BOOST_URI}
|
URL ${BOOST_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${BOOST_HASH}
|
URL_HASH MD5=${BOOST_HASH}
|
||||||
PREFIX ${BUILD_DIR}/boost
|
PREFIX ${BUILD_DIR}/boost
|
||||||
UPDATE_COMMAND ""
|
UPDATE_COMMAND ""
|
||||||
PATCH_COMMAND ${BOOST_PATCH_COMMAND}
|
PATCH_COMMAND ${BOOST_PATCH_COMMAND}
|
||||||
CONFIGURE_COMMAND ${BOOST_CONFIGURE_COMMAND}
|
CONFIGURE_COMMAND ${BOOST_CONFIGURE_COMMAND}
|
||||||
BUILD_COMMAND ${BOOST_BUILD_COMMAND} ${BOOST_BUILD_OPTIONS} -j${MAKE_THREADS} architecture=x86 address-model=${BOOST_ADDRESS_MODEL} link=static threading=multi ${BOOST_OPTIONS} --prefix=${LIBDIR}/boost install
|
BUILD_COMMAND ${BOOST_BUILD_COMMAND} ${BOOST_BUILD_OPTIONS} -j${MAKE_THREADS} architecture=x86 address-model=${BOOST_ADDRESS_MODEL} link=static threading=multi ${BOOST_OPTIONS} --prefix=${LIBDIR}/boost install
|
||||||
BUILD_IN_SOURCE 1
|
BUILD_IN_SOURCE 1
|
||||||
INSTALL_COMMAND "${BOOST_HARVEST_CMD}"
|
INSTALL_COMMAND "${BOOST_HARVEST_CMD}"
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_boost
|
external_boost
|
||||||
Make_Python_Environment
|
Make_Python_Environment
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -21,19 +21,19 @@ set(BZIP2_CONFIGURE_ENV echo .)
|
|||||||
set(BZIP2_CONFIGURATION_ARGS)
|
set(BZIP2_CONFIGURATION_ARGS)
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
set(BZIP2_LDFLAGS "-Wl,--as-needed")
|
set(BZIP2_LDFLAGS "-Wl,--as-needed")
|
||||||
set(BZIP2_CFLAGS "-fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64")
|
set(BZIP2_CFLAGS "-fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64")
|
||||||
set(BZIP2_CONFIGURE_ENV ${BZIP2_CONFIGURE_ENV} && export LDFLAGS=${BZIP2_LDFLAGS} && export CFLAGS=${BZIP2_CFLAGS}
|
set(BZIP2_CONFIGURE_ENV ${BZIP2_CONFIGURE_ENV} && export LDFLAGS=${BZIP2_LDFLAGS} && export CFLAGS=${BZIP2_CFLAGS}
|
||||||
&& export PREFIX=${BZIP2_PREFIX})
|
&& export PREFIX=${BZIP2_PREFIX})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_bzip2
|
ExternalProject_Add(external_bzip2
|
||||||
URL ${BZIP2_URI}
|
URL ${BZIP2_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${BZIP2_HASH}
|
URL_HASH SHA256=${BZIP2_HASH}
|
||||||
PREFIX ${BUILD_DIR}/bzip2
|
PREFIX ${BUILD_DIR}/bzip2
|
||||||
CONFIGURE_COMMAND echo .
|
CONFIGURE_COMMAND echo .
|
||||||
BUILD_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} -j${MAKE_THREADS}
|
BUILD_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} PREFIX=${BZIP2_PREFIX} install
|
INSTALL_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} PREFIX=${BZIP2_PREFIX} install
|
||||||
INSTALL_DIR ${LIBDIR}/bzip2
|
INSTALL_DIR ${LIBDIR}/bzip2
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,47 +17,47 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(CLANG_EXTRA_ARGS
|
set(CLANG_EXTRA_ARGS
|
||||||
-DCLANG_PATH_TO_LLVM_SOURCE=${BUILD_DIR}/ll/src/ll
|
-DCLANG_PATH_TO_LLVM_SOURCE=${BUILD_DIR}/ll/src/ll
|
||||||
-DCLANG_PATH_TO_LLVM_BUILD=${LIBDIR}/llvm
|
-DCLANG_PATH_TO_LLVM_BUILD=${LIBDIR}/llvm
|
||||||
-DLLVM_USE_CRT_RELEASE=MT
|
-DLLVM_USE_CRT_RELEASE=MT
|
||||||
-DLLVM_USE_CRT_DEBUG=MTd
|
-DLLVM_USE_CRT_DEBUG=MTd
|
||||||
-DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
|
-DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(CLANG_GENERATOR "Ninja")
|
set(CLANG_GENERATOR "Ninja")
|
||||||
else()
|
else()
|
||||||
set(CLANG_GENERATOR "Unix Makefiles")
|
set(CLANG_GENERATOR "Unix Makefiles")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
ExternalProject_Add(external_clang
|
ExternalProject_Add(external_clang
|
||||||
URL ${CLANG_URI}
|
URL ${CLANG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${CLANG_HASH}
|
URL_HASH MD5=${CLANG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/clang
|
PREFIX ${BUILD_DIR}/clang
|
||||||
CMAKE_GENERATOR ${CLANG_GENERATOR}
|
CMAKE_GENERATOR ${CLANG_GENERATOR}
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clang ${DEFAULT_CMAKE_FLAGS} ${CLANG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clang ${DEFAULT_CMAKE_FLAGS} ${CLANG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/clang
|
INSTALL_DIR ${LIBDIR}/clang
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(CLANG_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/ ${HARVEST_TARGET}/llvm/)
|
set(CLANG_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/ ${HARVEST_TARGET}/llvm/)
|
||||||
else()
|
else()
|
||||||
set(CLANG_HARVEST_COMMAND
|
set(CLANG_HARVEST_COMMAND
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/bin/ ${HARVEST_TARGET}/llvm/debug/bin/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/bin/ ${HARVEST_TARGET}/llvm/debug/bin/ &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/include/ ${HARVEST_TARGET}/llvm/debug/include/
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/include/ ${HARVEST_TARGET}/llvm/debug/include/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
ExternalProject_Add_Step(external_clang after_install
|
ExternalProject_Add_Step(external_clang after_install
|
||||||
COMMAND ${CLANG_HARVEST_COMMAND}
|
COMMAND ${CLANG_HARVEST_COMMAND}
|
||||||
DEPENDEES mkdir update patch download configure build install
|
DEPENDEES mkdir update patch download configure build install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_clang
|
external_clang
|
||||||
ll
|
ll
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -19,10 +19,10 @@
|
|||||||
set(CLEW_EXTRA_ARGS)
|
set(CLEW_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_clew
|
ExternalProject_Add(external_clew
|
||||||
URL ${CLEW_URI}
|
URL ${CLEW_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${CLEW_HASH}
|
URL_HASH MD5=${CLEW_HASH}
|
||||||
PREFIX ${BUILD_DIR}/clew
|
PREFIX ${BUILD_DIR}/clew
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CLEW_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CLEW_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/clew
|
INSTALL_DIR ${LIBDIR}/clew
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -19,11 +19,11 @@
|
|||||||
set(CUEW_EXTRA_ARGS)
|
set(CUEW_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_cuew
|
ExternalProject_Add(external_cuew
|
||||||
URL ${CUEW_URI}
|
URL ${CUEW_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${CUEW_HASH}
|
URL_HASH MD5=${CUEW_HASH}
|
||||||
PREFIX ${BUILD_DIR}/cuew
|
PREFIX ${BUILD_DIR}/cuew
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/cuew/src/external_cuew < ${PATCH_DIR}/cuew.diff
|
PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/cuew/src/external_cuew < ${PATCH_DIR}/cuew.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/cuew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CUEW_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/cuew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CUEW_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/cuew
|
INSTALL_DIR ${LIBDIR}/cuew
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -20,50 +20,50 @@
|
|||||||
# library itself does not depend on them, so should give no problems.
|
# library itself does not depend on them, so should give no problems.
|
||||||
|
|
||||||
set(EMBREE_EXTRA_ARGS
|
set(EMBREE_EXTRA_ARGS
|
||||||
-DEMBREE_ISPC_SUPPORT=OFF
|
-DEMBREE_ISPC_SUPPORT=OFF
|
||||||
-DEMBREE_TUTORIALS=OFF
|
-DEMBREE_TUTORIALS=OFF
|
||||||
-DEMBREE_STATIC_LIB=ON
|
-DEMBREE_STATIC_LIB=ON
|
||||||
-DEMBREE_RAY_MASK=ON
|
-DEMBREE_RAY_MASK=ON
|
||||||
-DEMBREE_FILTER_FUNCTION=ON
|
-DEMBREE_FILTER_FUNCTION=ON
|
||||||
-DEMBREE_BACKFACE_CULLING=OFF
|
-DEMBREE_BACKFACE_CULLING=OFF
|
||||||
-DEMBREE_TASKING_SYSTEM=INTERNAL
|
-DEMBREE_TASKING_SYSTEM=INTERNAL
|
||||||
-DEMBREE_MAX_ISA=AVX2
|
-DEMBREE_MAX_ISA=AVX2
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
|
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
|
||||||
else()
|
else()
|
||||||
set(EMBREE_BUILD_DIR)
|
set(EMBREE_BUILD_DIR)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_embree
|
ExternalProject_Add(external_embree
|
||||||
URL ${EMBREE_URI}
|
URL ${EMBREE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${EMBREE_HASH}
|
URL_HASH MD5=${EMBREE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/embree
|
PREFIX ${BUILD_DIR}/embree
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/embree
|
INSTALL_DIR ${LIBDIR}/embree
|
||||||
)
|
)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_embree after_install
|
ExternalProject_Add_Step(external_embree after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/embree ${HARVEST_TARGET}/embree
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/embree ${HARVEST_TARGET}/embree
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
ExternalProject_Add_Step(external_embree after_install
|
ExternalProject_Add_Step(external_embree after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree3.lib ${HARVEST_TARGET}/embree/lib/embree3_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree3.lib ${HARVEST_TARGET}/embree/lib/embree3_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx.lib ${HARVEST_TARGET}/embree/lib/embree_avx_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx.lib ${HARVEST_TARGET}/embree/lib/embree_avx_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx2.lib ${HARVEST_TARGET}/embree/lib/embree_avx2_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx2.lib ${HARVEST_TARGET}/embree/lib/embree_avx2_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_sse42.lib ${HARVEST_TARGET}/embree/lib/embree_sse42_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_sse42.lib ${HARVEST_TARGET}/embree/lib/embree_sse42_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/lexers.lib ${HARVEST_TARGET}/embree/lib/lexers_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/lexers.lib ${HARVEST_TARGET}/embree/lib/lexers_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/math.lib ${HARVEST_TARGET}/embree/lib/math_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/math.lib ${HARVEST_TARGET}/embree/lib/math_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/simd.lib ${HARVEST_TARGET}/embree/lib/simd_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/simd.lib ${HARVEST_TARGET}/embree/lib/simd_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/sys.lib ${HARVEST_TARGET}/embree/lib/sys_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/sys.lib ${HARVEST_TARGET}/embree/lib/sys_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/tasking.lib ${HARVEST_TARGET}/embree/lib/tasking_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/tasking.lib ${HARVEST_TARGET}/embree/lib/tasking_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,22 +19,22 @@
|
|||||||
set(FAAD_EXTRA_ARGS)
|
set(FAAD_EXTRA_ARGS)
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
set(FAAD_EXTRA_CONFIGURE "utils\\win32\\ac2ver.exe" "faad2" "configure.ac" > libfaad\\win32_ver.h)
|
set(FAAD_EXTRA_CONFIGURE "utils\\win32\\ac2ver.exe" "faad2" "configure.ac" > libfaad\\win32_ver.h)
|
||||||
else()
|
else()
|
||||||
set(FAAD_EXTRA_CONFIGURE echo .)
|
set(FAAD_EXTRA_CONFIGURE echo .)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_faad
|
ExternalProject_Add(external_faad
|
||||||
URL ${FAAD_URI}
|
URL ${FAAD_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FAAD_HASH}
|
URL_HASH MD5=${FAAD_HASH}
|
||||||
PREFIX ${BUILD_DIR}/faad
|
PREFIX ${BUILD_DIR}/faad
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && ${FAAD_EXTRA_CONFIGURE} && ${CONFIGURE_COMMAND} --disable-shared --enable-static --prefix=${LIBDIR}/faad
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && ${FAAD_EXTRA_CONFIGURE} && ${CONFIGURE_COMMAND} --disable-shared --enable-static --prefix=${LIBDIR}/faad
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/faad
|
INSTALL_DIR ${LIBDIR}/faad
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_faad PROPERTIES FOLDER Mingw)
|
set_target_properties(external_faad PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,24 +17,24 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_ffi
|
ExternalProject_Add(external_ffi
|
||||||
URL ${FFI_URI}
|
URL ${FFI_URI}
|
||||||
URL_HASH SHA256=${FFI_HASH}
|
URL_HASH SHA256=${FFI_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/ffi
|
PREFIX ${BUILD_DIR}/ffi
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ffi
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ffi
|
||||||
--enable-shared=no
|
--enable-shared=no
|
||||||
--enable-static=yes
|
--enable-static=yes
|
||||||
--with-pic
|
--with-pic
|
||||||
--libdir=${LIBDIR}/ffi/lib/
|
--libdir=${LIBDIR}/ffi/lib/
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make install
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/ffi/src/external_ffi < ${PATCH_DIR}/ffi.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/ffi/src/external_ffi < ${PATCH_DIR}/ffi.diff
|
||||||
INSTALL_DIR ${LIBDIR}/ffi
|
INSTALL_DIR ${LIBDIR}/ffi
|
||||||
)
|
)
|
||||||
|
|
||||||
if (UNIX AND NOT APPLE)
|
if (UNIX AND NOT APPLE)
|
||||||
ExternalProject_Add_Step(external_ffi after_install
|
ExternalProject_Add_Step(external_ffi after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/ffi/lib/libffi.a ${LIBDIR}/ffi/lib/libffi_pic.a
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/ffi/lib/libffi.a ${LIBDIR}/ffi/lib/libffi_pic.a
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -22,131 +22,131 @@ set(FFMPEG_EXTRA_FLAGS --pkg-config-flags=--static --extra-cflags=${FFMPEG_CFLAG
|
|||||||
set(FFMPEG_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/openjpeg/lib/pkgconfig:${mingw_LIBDIR}/x264/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR})
|
set(FFMPEG_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/openjpeg/lib/pkgconfig:${mingw_LIBDIR}/x264/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR})
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(FFMPEG_ENV set ${FFMPEG_ENV} &&)
|
set(FFMPEG_ENV set ${FFMPEG_ENV} &&)
|
||||||
set(FFMPEG_EXTRA_FLAGS
|
set(FFMPEG_EXTRA_FLAGS
|
||||||
${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_EXTRA_FLAGS}
|
||||||
--disable-static
|
--disable-static
|
||||||
--enable-shared
|
--enable-shared
|
||||||
--enable-w32threads
|
--enable-w32threads
|
||||||
--disable-pthreads
|
--disable-pthreads
|
||||||
--enable-libopenjpeg
|
--enable-libopenjpeg
|
||||||
)
|
)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
||||||
set(FFMPEG_EXTRA_FLAGS
|
set(FFMPEG_EXTRA_FLAGS
|
||||||
${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_EXTRA_FLAGS}
|
||||||
--x86asmexe=yasm
|
--x86asmexe=yasm
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(FFMPEG_EXTRA_FLAGS
|
set(FFMPEG_EXTRA_FLAGS
|
||||||
${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_EXTRA_FLAGS}
|
||||||
--enable-static
|
--enable-static
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-libopenjpeg
|
--enable-libopenjpeg
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(FFMPEG_EXTRA_FLAGS
|
set(FFMPEG_EXTRA_FLAGS
|
||||||
${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_EXTRA_FLAGS}
|
||||||
--target-os=darwin
|
--target-os=darwin
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_ffmpeg
|
ExternalProject_Add(external_ffmpeg
|
||||||
URL ${FFMPEG_URI}
|
URL ${FFMPEG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FFMPEG_HASH}
|
URL_HASH MD5=${FFMPEG_HASH}
|
||||||
# OpenJpeg is compiled with pthread support on Linux, which is all fine and is what we
|
# OpenJpeg is compiled with pthread support on Linux, which is all fine and is what we
|
||||||
# want for maximum runtime performance, but due to static nature of that library we
|
# want for maximum runtime performance, but due to static nature of that library we
|
||||||
# need to force ffmpeg to link against pthread, otherwise test program used by autoconf
|
# need to force ffmpeg to link against pthread, otherwise test program used by autoconf
|
||||||
# will fail. This patch does that in a way that is compatible with multiple distributions.
|
# will fail. This patch does that in a way that is compatible with multiple distributions.
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/ffmpeg/src/external_ffmpeg < ${PATCH_DIR}/ffmpeg.diff
|
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/ffmpeg/src/external_ffmpeg < ${PATCH_DIR}/ffmpeg.diff
|
||||||
PREFIX ${BUILD_DIR}/ffmpeg
|
PREFIX ${BUILD_DIR}/ffmpeg
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV_NO_PERL} &&
|
CONFIGURE_COMMAND ${CONFIGURE_ENV_NO_PERL} &&
|
||||||
cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ &&
|
cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ &&
|
||||||
${FFMPEG_ENV} ${CONFIGURE_COMMAND_NO_TARGET} ${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_ENV} ${CONFIGURE_COMMAND_NO_TARGET} ${FFMPEG_EXTRA_FLAGS}
|
||||||
--disable-lzma
|
--disable-lzma
|
||||||
--disable-avfilter
|
--disable-avfilter
|
||||||
--disable-vdpau
|
--disable-vdpau
|
||||||
--disable-bzlib
|
--disable-bzlib
|
||||||
--disable-libgsm
|
--disable-libgsm
|
||||||
--disable-libspeex
|
--disable-libspeex
|
||||||
--enable-libvpx
|
--enable-libvpx
|
||||||
--prefix=${LIBDIR}/ffmpeg
|
--prefix=${LIBDIR}/ffmpeg
|
||||||
--enable-libtheora
|
--enable-libtheora
|
||||||
--enable-libvorbis
|
--enable-libvorbis
|
||||||
--enable-zlib
|
--enable-zlib
|
||||||
--enable-stripping
|
--enable-stripping
|
||||||
--enable-runtime-cpudetect
|
--enable-runtime-cpudetect
|
||||||
--disable-vaapi
|
--disable-vaapi
|
||||||
--disable-nonfree
|
--disable-nonfree
|
||||||
--enable-gpl
|
--enable-gpl
|
||||||
--disable-postproc
|
--disable-postproc
|
||||||
--enable-libmp3lame
|
--enable-libmp3lame
|
||||||
--disable-librtmp
|
--disable-librtmp
|
||||||
--enable-libx264
|
--enable-libx264
|
||||||
--enable-libxvid
|
--enable-libxvid
|
||||||
--disable-libopencore-amrnb
|
--disable-libopencore-amrnb
|
||||||
--disable-libopencore-amrwb
|
--disable-libopencore-amrwb
|
||||||
--disable-libdc1394
|
--disable-libdc1394
|
||||||
--disable-version3
|
--disable-version3
|
||||||
--disable-debug
|
--disable-debug
|
||||||
--enable-optimizations
|
--enable-optimizations
|
||||||
--disable-sse
|
--disable-sse
|
||||||
--disable-ssse3
|
--disable-ssse3
|
||||||
--enable-ffplay
|
--enable-ffplay
|
||||||
--disable-openssl
|
--disable-openssl
|
||||||
--disable-securetransport
|
--disable-securetransport
|
||||||
--disable-indev=avfoundation
|
--disable-indev=avfoundation
|
||||||
--disable-indev=qtkit
|
--disable-indev=qtkit
|
||||||
--disable-sdl2
|
--disable-sdl2
|
||||||
--disable-gnutls
|
--disable-gnutls
|
||||||
--disable-videotoolbox
|
--disable-videotoolbox
|
||||||
--disable-libxcb
|
--disable-libxcb
|
||||||
--disable-xlib
|
--disable-xlib
|
||||||
--disable-audiotoolbox
|
--disable-audiotoolbox
|
||||||
--disable-cuvid
|
--disable-cuvid
|
||||||
--disable-nvenc
|
--disable-nvenc
|
||||||
--disable-indev=jack
|
--disable-indev=jack
|
||||||
--disable-indev=alsa
|
--disable-indev=alsa
|
||||||
--disable-outdev=alsa
|
--disable-outdev=alsa
|
||||||
--disable-crystalhd
|
--disable-crystalhd
|
||||||
--disable-sndio
|
--disable-sndio
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make install
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ffmpeg ${DEFAULT_CMAKE_FLAGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ffmpeg ${DEFAULT_CMAKE_FLAGS}
|
||||||
INSTALL_DIR ${LIBDIR}/ffmpeg
|
INSTALL_DIR ${LIBDIR}/ffmpeg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_ffmpeg PROPERTIES FOLDER Mingw)
|
set_target_properties(external_ffmpeg PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_ffmpeg
|
external_ffmpeg
|
||||||
external_zlib
|
external_zlib
|
||||||
external_faad
|
external_faad
|
||||||
external_openjpeg
|
external_openjpeg
|
||||||
external_xvidcore
|
external_xvidcore
|
||||||
external_x264
|
external_x264
|
||||||
external_vpx
|
external_vpx
|
||||||
external_theora
|
external_theora
|
||||||
external_vorbis
|
external_vorbis
|
||||||
external_ogg
|
external_ogg
|
||||||
external_lame
|
external_lame
|
||||||
)
|
)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_ffmpeg
|
external_ffmpeg
|
||||||
external_zlib_mingw
|
external_zlib_mingw
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release AND WIN32)
|
if(BUILD_MODE STREQUAL Release AND WIN32)
|
||||||
ExternalProject_Add_Step(external_ffmpeg after_install
|
ExternalProject_Add_Step(external_ffmpeg after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/include ${HARVEST_TARGET}/ffmpeg/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/include ${HARVEST_TARGET}/ffmpeg/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/bin ${HARVEST_TARGET}/ffmpeg/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/bin ${HARVEST_TARGET}/ffmpeg/lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,29 +19,29 @@
|
|||||||
set(FFTW_EXTRA_ARGS)
|
set(FFTW_EXTRA_ARGS)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(FFTW3_ENV set CFLAGS=-fno-stack-check -fno-stack-protector -mno-stack-arg-probe -fno-lto &&)
|
set(FFTW3_ENV set CFLAGS=-fno-stack-check -fno-stack-protector -mno-stack-arg-probe -fno-lto &&)
|
||||||
set(FFTW3_PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/fftw3/src/external_fftw3 < ${PATCH_DIR}/fftw3.diff)
|
set(FFTW3_PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/fftw3/src/external_fftw3 < ${PATCH_DIR}/fftw3.diff)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_fftw3
|
ExternalProject_Add(external_fftw3
|
||||||
URL ${FFTW_URI}
|
URL ${FFTW_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FFTW_HASH}
|
URL_HASH MD5=${FFTW_HASH}
|
||||||
PREFIX ${BUILD_DIR}/fftw3
|
PREFIX ${BUILD_DIR}/fftw3
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && ${FFTW3_ENV} cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/fftw3
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && ${FFTW3_ENV} cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/fftw3
|
||||||
PATCH_COMMAND ${FFTW3_PATCH_COMMAND}
|
PATCH_COMMAND ${FFTW3_PATCH_COMMAND}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/fftw3
|
INSTALL_DIR ${LIBDIR}/fftw3
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_fftw3 PROPERTIES FOLDER Mingw)
|
set_target_properties(external_fftw3 PROPERTIES FOLDER Mingw)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_fftw3 after_install
|
ExternalProject_Add_Step(external_fftw3 after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/lib/libfftw3.a ${HARVEST_TARGET}/fftw3/lib/libfftw.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/lib/libfftw3.a ${HARVEST_TARGET}/fftw3/lib/libfftw.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/include/fftw3.h ${HARVEST_TARGET}/fftw3/include/fftw3.h
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/include/fftw3.h ${HARVEST_TARGET}/fftw3/include/fftw3.h
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,16 +17,16 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_flac
|
ExternalProject_Add(external_flac
|
||||||
URL ${FLAC_URI}
|
URL ${FLAC_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${FLAC_HASH}
|
URL_HASH SHA256=${FLAC_HASH}
|
||||||
PREFIX ${BUILD_DIR}/flac
|
PREFIX ${BUILD_DIR}/flac
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flac --disable-shared --enable-static
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flac --disable-shared --enable-static
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/flac
|
INSTALL_DIR ${LIBDIR}/flac
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_flac PROPERTIES FOLDER Mingw)
|
set_target_properties(external_flac PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,13 +19,13 @@
|
|||||||
set(FLEXBISON_EXTRA_ARGS)
|
set(FLEXBISON_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_flexbison
|
ExternalProject_Add(external_flexbison
|
||||||
URL ${FLEXBISON_URI}
|
URL ${FLEXBISON_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FLEXBISON_HASH}
|
URL_HASH MD5=${FLEXBISON_HASH}
|
||||||
PREFIX ${BUILD_DIR}/flexbison
|
PREFIX ${BUILD_DIR}/flexbison
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/flexbison ${DEFAULT_CMAKE_FLAGS} ${FLEXBISON_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/flexbison ${DEFAULT_CMAKE_FLAGS} ${FLEXBISON_EXTRA_ARGS}
|
||||||
CONFIGURE_COMMAND echo .
|
CONFIGURE_COMMAND echo .
|
||||||
BUILD_COMMAND echo .
|
BUILD_COMMAND echo .
|
||||||
INSTALL_COMMAND COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/flexbison/src/external_flexbison/ ${LIBDIR}/flexbison/
|
INSTALL_COMMAND COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/flexbison/src/external_flexbison/ ${LIBDIR}/flexbison/
|
||||||
INSTALL_DIR ${LIBDIR}/flexbison
|
INSTALL_DIR ${LIBDIR}/flexbison
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,19 +17,19 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(FREEGLUT_EXTRA_ARGS
|
set(FREEGLUT_EXTRA_ARGS
|
||||||
-DFREEGLUT_BUILD_SHARED_LIBS=Off
|
-DFREEGLUT_BUILD_SHARED_LIBS=Off
|
||||||
-DFREEGLUT_BUILD_STATIC_LIBS=On
|
-DFREEGLUT_BUILD_STATIC_LIBS=On
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_freeglut
|
ExternalProject_Add(external_freeglut
|
||||||
URL ${FREEGLUT_URI}
|
URL ${FREEGLUT_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FREEGLUT_HASH}
|
URL_HASH MD5=${FREEGLUT_HASH}
|
||||||
PREFIX ${BUILD_DIR}/freeglut
|
PREFIX ${BUILD_DIR}/freeglut
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freeglut ${DEFAULT_C_FLAGS} ${DEFAULT_CXX_FLAGS} ${FREEGLUT_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freeglut ${DEFAULT_C_FLAGS} ${DEFAULT_CXX_FLAGS} ${FREEGLUT_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/freeglut
|
INSTALL_DIR ${LIBDIR}/freeglut
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,28 +17,28 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(FREETYPE_EXTRA_ARGS
|
set(FREETYPE_EXTRA_ARGS
|
||||||
-DCMAKE_RELEASE_POSTFIX:STRING=2ST
|
-DCMAKE_RELEASE_POSTFIX:STRING=2ST
|
||||||
-DCMAKE_DEBUG_POSTFIX:STRING=2ST_d
|
-DCMAKE_DEBUG_POSTFIX:STRING=2ST_d
|
||||||
-DWITH_BZip2=OFF
|
-DWITH_BZip2=OFF
|
||||||
-DWITH_HarfBuzz=OFF
|
-DWITH_HarfBuzz=OFF
|
||||||
-DFT_WITH_HARFBUZZ=OFF
|
-DFT_WITH_HARFBUZZ=OFF
|
||||||
-DFT_WITH_BZIP2=OFF
|
-DFT_WITH_BZIP2=OFF
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
|
-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE)
|
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE)
|
||||||
|
|
||||||
ExternalProject_Add(external_freetype
|
ExternalProject_Add(external_freetype
|
||||||
URL ${FREETYPE_URI}
|
URL ${FREETYPE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${FREETYPE_HASH}
|
URL_HASH MD5=${FREETYPE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/freetype
|
PREFIX ${BUILD_DIR}/freetype
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freetype ${DEFAULT_CMAKE_FLAGS} ${FREETYPE_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freetype ${DEFAULT_CMAKE_FLAGS} ${FREETYPE_EXTRA_ARGS}
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/freetype/src/external_freetype < ${PATCH_DIR}/freetype.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/freetype/src/external_freetype < ${PATCH_DIR}/freetype.diff
|
||||||
INSTALL_DIR ${LIBDIR}/freetype
|
INSTALL_DIR ${LIBDIR}/freetype
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release AND WIN32)
|
if(BUILD_MODE STREQUAL Release AND WIN32)
|
||||||
ExternalProject_Add_Step(external_freetype after_install
|
ExternalProject_Add_Step(external_freetype after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freetype ${HARVEST_TARGET}/freetype
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freetype ${HARVEST_TARGET}/freetype
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,16 +17,16 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(GLEW_EXTRA_ARGS
|
set(GLEW_EXTRA_ARGS
|
||||||
-DBUILD_UTILS=Off
|
-DBUILD_UTILS=Off
|
||||||
-DBUILD_SHARED_LIBS=Off
|
-DBUILD_SHARED_LIBS=Off
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_glew
|
ExternalProject_Add(external_glew
|
||||||
URL ${GLEW_URI}
|
URL ${GLEW_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${GLEW_HASH}
|
URL_HASH MD5=${GLEW_HASH}
|
||||||
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_glew.txt ${BUILD_DIR}/glew/src/external_glew/CMakeLists.txt
|
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_glew.txt ${BUILD_DIR}/glew/src/external_glew/CMakeLists.txt
|
||||||
PREFIX ${BUILD_DIR}/glew
|
PREFIX ${BUILD_DIR}/glew
|
||||||
CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glew ${DEFAULT_CMAKE_FLAGS} ${GLEW_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glew ${DEFAULT_CMAKE_FLAGS} ${GLEW_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/glew
|
INSTALL_DIR ${LIBDIR}/glew
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -19,10 +19,10 @@
|
|||||||
set(GLFW_EXTRA_ARGS)
|
set(GLFW_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_glfw
|
ExternalProject_Add(external_glfw
|
||||||
URL ${GLFW_URI}
|
URL ${GLFW_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${GLFW_HASH}
|
URL_HASH MD5=${GLFW_HASH}
|
||||||
PREFIX ${BUILD_DIR}/glfw
|
PREFIX ${BUILD_DIR}/glfw
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glfw -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${GLFW_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glfw -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${GLFW_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/glfw
|
INSTALL_DIR ${LIBDIR}/glfw
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -21,90 +21,90 @@
|
|||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
if(NOT DEFINED HARVEST_TARGET)
|
if(NOT DEFINED HARVEST_TARGET)
|
||||||
set(HARVEST_TARGET ${CMAKE_CURRENT_SOURCE_DIR}/Harvest)
|
set(HARVEST_TARGET ${CMAKE_CURRENT_SOURCE_DIR}/Harvest)
|
||||||
endif()
|
endif()
|
||||||
message("HARVEST_TARGET = ${HARVEST_TARGET}")
|
message("HARVEST_TARGET = ${HARVEST_TARGET}")
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
add_custom_target(Harvest_Release_Results
|
add_custom_target(Harvest_Release_Results
|
||||||
COMMAND # jpeg rename libfile + copy include
|
COMMAND # jpeg rename libfile + copy include
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
|
||||||
# OpenImageIO
|
# OpenImageIO
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/include ${HARVEST_TARGET}/OpenImageIO/include &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/include ${HARVEST_TARGET}/OpenImageIO/include &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/lib ${HARVEST_TARGET}/OpenImageIO/lib &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/lib ${HARVEST_TARGET}/OpenImageIO/lib &&
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/OpenImageIO/bin/idiff.exe ${HARVEST_TARGET}/OpenImageIO/bin/idiff.exe &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/OpenImageIO/bin/idiff.exe ${HARVEST_TARGET}/OpenImageIO/bin/idiff.exe &&
|
||||||
# png
|
# png
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
|
||||||
# freeglut-> opengl
|
# freeglut-> opengl
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/freeglut/lib/freeglut_static.lib ${HARVEST_TARGET}/opengl/lib/freeglut_static.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/freeglut/lib/freeglut_static.lib ${HARVEST_TARGET}/opengl/lib/freeglut_static.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freeglut/include/ ${HARVEST_TARGET}/opengl/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freeglut/include/ ${HARVEST_TARGET}/opengl/include/ &&
|
||||||
# glew-> opengl
|
# glew-> opengl
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/glew/lib/libglew32.lib ${HARVEST_TARGET}/opengl/lib/glew.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/glew/lib/libglew32.lib ${HARVEST_TARGET}/opengl/lib/glew.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/glew/include/ ${HARVEST_TARGET}/opengl/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/glew/include/ ${HARVEST_TARGET}/opengl/include/ &&
|
||||||
# sndfile
|
# sndfile
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/lib/libsndfile.dll.a ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/lib/libsndfile.dll.a ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.lib &&
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/bin/libsndfile-1.dll ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.dll &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/bin/libsndfile-1.dll ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.dll &&
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/include/sndfile.h ${HARVEST_TARGET}/sndfile/include/sndfile.h &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/include/sndfile.h ${HARVEST_TARGET}/sndfile/include/sndfile.h &&
|
||||||
# tiff
|
# tiff
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiff.lib ${HARVEST_TARGET}/tiff/lib/libtiff.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiff.lib ${HARVEST_TARGET}/tiff/lib/libtiff.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tiff/include/ ${HARVEST_TARGET}/tiff/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tiff/include/ ${HARVEST_TARGET}/tiff/include/ &&
|
||||||
# BlendThumb
|
# BlendThumb
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb64/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb64.dll &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb64/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb64.dll &&
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb32/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb.dll &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb32/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb.dll &&
|
||||||
# hidapi
|
# hidapi
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
|
||||||
# webp, straight up copy
|
# webp, straight up copy
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
|
||||||
DEPENDS
|
DEPENDS
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
add_custom_target(Harvest_Debug_Results
|
add_custom_target(Harvest_Debug_Results
|
||||||
# OpenImageIO
|
# OpenImageIO
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib &&
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib &&
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib &&
|
||||||
# python
|
# python
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/ &&
|
||||||
# hdf5
|
# hdf5
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hdf5/lib ${HARVEST_TARGET}/hdf5/lib &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hdf5/lib ${HARVEST_TARGET}/hdf5/lib &&
|
||||||
# numpy
|
# numpy
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz &&
|
||||||
# python
|
# python
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz
|
||||||
DEPENDS Package_Python
|
DEPENDS Package_Python
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
|
|
||||||
function(harvest from to)
|
function(harvest from to)
|
||||||
set(pattern "")
|
set(pattern "")
|
||||||
foreach(f ${ARGN})
|
foreach(f ${ARGN})
|
||||||
set(pattern ${f})
|
set(pattern ${f})
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
if(pattern STREQUAL "")
|
if(pattern STREQUAL "")
|
||||||
get_filename_component(dirpath ${to} DIRECTORY)
|
get_filename_component(dirpath ${to} DIRECTORY)
|
||||||
get_filename_component(filename ${to} NAME)
|
get_filename_component(filename ${to} NAME)
|
||||||
install(
|
install(
|
||||||
FILES ${LIBDIR}/${from}
|
FILES ${LIBDIR}/${from}
|
||||||
DESTINATION ${HARVEST_TARGET}/${dirpath}
|
DESTINATION ${HARVEST_TARGET}/${dirpath}
|
||||||
RENAME ${filename})
|
RENAME ${filename})
|
||||||
else()
|
else()
|
||||||
install(
|
install(
|
||||||
DIRECTORY ${LIBDIR}/${from}/
|
DIRECTORY ${LIBDIR}/${from}/
|
||||||
DESTINATION ${HARVEST_TARGET}/${to}
|
DESTINATION ${HARVEST_TARGET}/${to}
|
||||||
USE_SOURCE_PERMISSIONS
|
USE_SOURCE_PERMISSIONS
|
||||||
FILES_MATCHING PATTERN ${pattern}
|
FILES_MATCHING PATTERN ${pattern}
|
||||||
PATTERN "pkgconfig" EXCLUDE
|
PATTERN "pkgconfig" EXCLUDE
|
||||||
PATTERN "cmake" EXCLUDE
|
PATTERN "cmake" EXCLUDE
|
||||||
PATTERN "__pycache__" EXCLUDE
|
PATTERN "__pycache__" EXCLUDE
|
||||||
PATTERN "tests" EXCLUDE)
|
PATTERN "tests" EXCLUDE)
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
harvest(alembic/include alembic/include "*.h")
|
harvest(alembic/include alembic/include "*.h")
|
||||||
@@ -134,25 +134,25 @@ harvest(llvm/include llvm/include "*")
|
|||||||
harvest(llvm/bin llvm/bin "llvm-config")
|
harvest(llvm/bin llvm/bin "llvm-config")
|
||||||
harvest(llvm/lib llvm/lib "libLLVM*.a")
|
harvest(llvm/lib llvm/lib "libLLVM*.a")
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
harvest(openmp/lib openmp/lib "*")
|
harvest(openmp/lib openmp/lib "*")
|
||||||
harvest(openmp/include openmp/include "*.h")
|
harvest(openmp/include openmp/include "*.h")
|
||||||
endif()
|
endif()
|
||||||
harvest(ogg/lib ffmpeg/lib "*.a")
|
harvest(ogg/lib ffmpeg/lib "*.a")
|
||||||
harvest(openal/include openal/include "*.h")
|
harvest(openal/include openal/include "*.h")
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
harvest(openal/lib openal/lib "*.a")
|
harvest(openal/lib openal/lib "*.a")
|
||||||
|
|
||||||
harvest(blosc/include blosc/include "*.h")
|
harvest(blosc/include blosc/include "*.h")
|
||||||
harvest(blosc/lib blosc/lib "*.a")
|
harvest(blosc/lib blosc/lib "*.a")
|
||||||
|
|
||||||
harvest(zlib/include zlib/include "*.h")
|
harvest(zlib/include zlib/include "*.h")
|
||||||
harvest(zlib/lib zlib/lib "*.a")
|
harvest(zlib/lib zlib/lib "*.a")
|
||||||
|
|
||||||
harvest(xml2/include xml2/include "*.h")
|
harvest(xml2/include xml2/include "*.h")
|
||||||
harvest(xml2/lib xml2/lib "*.a")
|
harvest(xml2/lib xml2/lib "*.a")
|
||||||
else()
|
else()
|
||||||
harvest(blosc/lib openvdb/lib "*.a")
|
harvest(blosc/lib openvdb/lib "*.a")
|
||||||
harvest(xml2/lib opencollada/lib "*.a")
|
harvest(xml2/lib opencollada/lib "*.a")
|
||||||
endif()
|
endif()
|
||||||
harvest(opencollada/include/opencollada opencollada/include "*.h")
|
harvest(opencollada/include/opencollada opencollada/include "*.h")
|
||||||
harvest(opencollada/lib/opencollada opencollada/lib "*.a")
|
harvest(opencollada/lib/opencollada opencollada/lib "*.a")
|
||||||
|
|||||||
@@ -17,26 +17,26 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(HDF5_EXTRA_ARGS
|
set(HDF5_EXTRA_ARGS
|
||||||
-DHDF5_ENABLE_THREADSAFE=Off
|
-DHDF5_ENABLE_THREADSAFE=Off
|
||||||
-DHDF5_BUILD_CPP_LIB=Off
|
-DHDF5_BUILD_CPP_LIB=Off
|
||||||
-DBUILD_TESTING=Off
|
-DBUILD_TESTING=Off
|
||||||
-DHDF5_BUILD_TOOLS=Off
|
-DHDF5_BUILD_TOOLS=Off
|
||||||
-DHDF5_BUILD_EXAMPLES=Off
|
-DHDF5_BUILD_EXAMPLES=Off
|
||||||
-DHDF5_BUILD_HL_LIB=On
|
-DHDF5_BUILD_HL_LIB=On
|
||||||
-DBUILD_STATIC_CRT_LIBS=On
|
-DBUILD_STATIC_CRT_LIBS=On
|
||||||
-DBUILD_SHARED_LIBS=On
|
-DBUILD_SHARED_LIBS=On
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(HDF5_PATCH ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/hdf5/src/external_hdf5 < ${PATCH_DIR}/hdf5.diff)
|
set(HDF5_PATCH ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/hdf5/src/external_hdf5 < ${PATCH_DIR}/hdf5.diff)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_hdf5
|
ExternalProject_Add(external_hdf5
|
||||||
URL ${HDF5_URI}
|
URL ${HDF5_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${HDF5_HASH}
|
URL_HASH MD5=${HDF5_HASH}
|
||||||
PREFIX ${BUILD_DIR}/hdf5
|
PREFIX ${BUILD_DIR}/hdf5
|
||||||
PATCH_COMMAND ${HDF5_PATCH}
|
PATCH_COMMAND ${HDF5_PATCH}
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hdf5 ${HDF5_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hdf5 ${HDF5_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/hdf5
|
INSTALL_DIR ${LIBDIR}/hdf5
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -19,11 +19,11 @@
|
|||||||
set(HIDAPI_EXTRA_ARGS)
|
set(HIDAPI_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_hidapi
|
ExternalProject_Add(external_hidapi
|
||||||
URL ${HIDAPI_URI}
|
URL ${HIDAPI_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${HIDAPI_HASH}
|
URL_HASH MD5=${HIDAPI_HASH}
|
||||||
PREFIX ${BUILD_DIR}/hidapi
|
PREFIX ${BUILD_DIR}/hidapi
|
||||||
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_hidapi.txt ${BUILD_DIR}/hidapi/src/external_hidapi/cmakelists.txt && ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/hidapi/src/external_hidapi < ${PATCH_DIR}/hidapi.diff
|
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_hidapi.txt ${BUILD_DIR}/hidapi/src/external_hidapi/cmakelists.txt && ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/hidapi/src/external_hidapi < ${PATCH_DIR}/hidapi.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hidapi -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${HIDAPI_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hidapi -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${HIDAPI_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/hidapi
|
INSTALL_DIR ${LIBDIR}/hidapi
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -19,23 +19,23 @@
|
|||||||
set(ICONV_EXTRA_ARGS)
|
set(ICONV_EXTRA_ARGS)
|
||||||
|
|
||||||
ExternalProject_Add(external_iconv
|
ExternalProject_Add(external_iconv
|
||||||
URL ${ICONV_URI}
|
URL ${ICONV_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${ICONV_HASH}
|
URL_HASH MD5=${ICONV_HASH}
|
||||||
PREFIX ${BUILD_DIR}/iconv
|
PREFIX ${BUILD_DIR}/iconv
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/iconv
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/iconv
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/iconv
|
INSTALL_DIR ${LIBDIR}/iconv
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_iconv PROPERTIES FOLDER Mingw)
|
set_target_properties(external_iconv PROPERTIES FOLDER Mingw)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_iconv after_install
|
ExternalProject_Add_Step(external_iconv after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/lib/libiconv.a ${HARVEST_TARGET}/iconv/lib/iconv.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/lib/libiconv.a ${HARVEST_TARGET}/iconv/lib/iconv.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/include/iconv.h ${HARVEST_TARGET}/iconv/include/iconv.h
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/include/iconv.h ${HARVEST_TARGET}/iconv/include/iconv.h
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,42 +17,42 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
set(ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
||||||
set(ILMBASE_EXTRA_ARGS
|
set(ILMBASE_EXTRA_ARGS
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
-DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES}
|
-DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_ilmbase
|
ExternalProject_Add(external_ilmbase
|
||||||
URL ${ILMBASE_URI}
|
URL ${ILMBASE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${ILMBASE_HASH}
|
URL_HASH MD5=${ILMBASE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/ilmbase
|
PREFIX ${BUILD_DIR}/ilmbase
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/openexr
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_ilmbase after_install
|
ExternalProject_Add_Step(external_ilmbase after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(ILMBASE_EXTRA_ARGS
|
set(ILMBASE_EXTRA_ARGS
|
||||||
--enable-static
|
--enable-static
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-cxxstd=11
|
--enable-cxxstd=11
|
||||||
)
|
)
|
||||||
ExternalProject_Add(external_ilmbase
|
ExternalProject_Add(external_ilmbase
|
||||||
URL ${ILMBASE_URI}
|
URL ${ILMBASE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${ILMBASE_HASH}
|
URL_HASH MD5=${ILMBASE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/ilmbase
|
PREFIX ${BUILD_DIR}/ilmbase
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ilmbase ${ILMBASE_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ilmbase ${ILMBASE_EXTRA_ARGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/openexr
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,12 +17,12 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_jemalloc
|
ExternalProject_Add(external_jemalloc
|
||||||
URL ${JEMALLOC_URI}
|
URL ${JEMALLOC_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${JEMALLOC_HASH}
|
URL_HASH MD5=${JEMALLOC_HASH}
|
||||||
PREFIX ${BUILD_DIR}/jemalloc
|
PREFIX ${BUILD_DIR}/jemalloc
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jemalloc --disable-shared --enable-static --with-pic
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jemalloc --disable-shared --enable-static --with-pic
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/jemalloc
|
INSTALL_DIR ${LIBDIR}/jemalloc
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,49 +17,49 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# cmake for windows
|
# cmake for windows
|
||||||
set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON -DCMAKE_DEBUG_POSTFIX=d)
|
set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON -DCMAKE_DEBUG_POSTFIX=d)
|
||||||
|
|
||||||
ExternalProject_Add(external_jpeg
|
ExternalProject_Add(external_jpeg
|
||||||
URL ${JPEG_URI}
|
URL ${JPEG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${JPEG_HASH}
|
URL_HASH MD5=${JPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/jpg
|
PREFIX ${BUILD_DIR}/jpg
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/jpg
|
INSTALL_DIR ${LIBDIR}/jpg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_jpeg after_install
|
ExternalProject_Add_Step(external_jpeg after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpegd${LIBEXT} ${LIBDIR}/jpg/lib/jpeg${LIBEXT}
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpegd${LIBEXT} ${LIBDIR}/jpg/lib/jpeg${LIBEXT}
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(JPEG_LIBRARY jpeg-static${LIBEXT})
|
set(JPEG_LIBRARY jpeg-static${LIBEXT})
|
||||||
else()
|
else()
|
||||||
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
# autoconf for unix
|
# autoconf for unix
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(JPEG_EXTRA_ARGS --host x86_64-apple-darwin --with-jpeg8)
|
set(JPEG_EXTRA_ARGS --host x86_64-apple-darwin --with-jpeg8)
|
||||||
else()
|
else()
|
||||||
set(JPEG_EXTRA_ARGS --with-jpeg8)
|
set(JPEG_EXTRA_ARGS --with-jpeg8)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_jpeg
|
ExternalProject_Add(external_jpeg
|
||||||
URL ${JPEG_URI}
|
URL ${JPEG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${JPEG_HASH}
|
URL_HASH MD5=${JPEG_HASH}
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && autoreconf -fiv && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jpg NASM=yasm ${JPEG_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && autoreconf -fiv && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jpg NASM=yasm ${JPEG_EXTRA_ARGS}
|
||||||
BUILD_IN_SOURCE 1
|
BUILD_IN_SOURCE 1
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && make install
|
BUILD_COMMAND ${CONFIGURE_ENV} && make install
|
||||||
PREFIX ${BUILD_DIR}/jpg
|
PREFIX ${BUILD_DIR}/jpg
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/jpg
|
INSTALL_DIR ${LIBDIR}/jpg
|
||||||
)
|
)
|
||||||
|
|
||||||
set(JPEG_LIBRARY libjpeg${LIBEXT})
|
set(JPEG_LIBRARY libjpeg${LIBEXT})
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|||||||
@@ -18,30 +18,30 @@
|
|||||||
|
|
||||||
set(LAME_EXTRA_ARGS)
|
set(LAME_EXTRA_ARGS)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
||||||
set(LAME_EXTRA_ARGS CFLAGS=-msse)
|
set(LAME_EXTRA_ARGS CFLAGS=-msse)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_lame
|
ExternalProject_Add(external_lame
|
||||||
URL ${LAME_URI}
|
URL ${LAME_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${LAME_HASH}
|
URL_HASH MD5=${LAME_HASH}
|
||||||
PREFIX ${BUILD_DIR}/lame
|
PREFIX ${BUILD_DIR}/lame
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lame --disable-shared --enable-static ${LAME_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lame --disable-shared --enable-static ${LAME_EXTRA_ARGS}
|
||||||
--enable-export=full
|
--enable-export=full
|
||||||
--with-fileio=sndfile
|
--with-fileio=sndfile
|
||||||
--without-vorbis
|
--without-vorbis
|
||||||
--with-pic
|
--with-pic
|
||||||
--disable-mp3x
|
--disable-mp3x
|
||||||
--disable-mp3rtp
|
--disable-mp3rtp
|
||||||
--disable-gtktest
|
--disable-gtktest
|
||||||
--disable-frontend
|
--disable-frontend
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/lame
|
INSTALL_DIR ${LIBDIR}/lame
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_lame PROPERTIES FOLDER Mingw)
|
set_target_properties(external_lame PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -20,12 +20,12 @@ set(LCMS_EXTRA_ARGS
|
|||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_lcms
|
ExternalProject_Add(external_lcms
|
||||||
URL ${LCMS_URI}
|
URL ${LCMS_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${LCMS_HASH}
|
URL_HASH MD5=${LCMS_HASH}
|
||||||
PREFIX ${BUILD_DIR}/lcms
|
PREFIX ${BUILD_DIR}/lcms
|
||||||
#patch taken from ocio
|
#patch taken from ocio
|
||||||
PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_lcms.txt ${BUILD_DIR}/lcms/src/external_lcms/CMakeLists.txt
|
PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_lcms.txt ${BUILD_DIR}/lcms/src/external_lcms/CMakeLists.txt
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/lcms ${DEFAULT_CMAKE_FLAGS} ${LCMS_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/lcms ${DEFAULT_CMAKE_FLAGS} ${LCMS_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/lcms
|
INSTALL_DIR ${LIBDIR}/lcms
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,42 +17,42 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(LLVM_EXTRA_ARGS
|
set(LLVM_EXTRA_ARGS
|
||||||
-DLLVM_USE_CRT_RELEASE=MT
|
-DLLVM_USE_CRT_RELEASE=MT
|
||||||
-DLLVM_USE_CRT_DEBUG=MTd
|
-DLLVM_USE_CRT_DEBUG=MTd
|
||||||
-DLLVM_INCLUDE_TESTS=OFF
|
-DLLVM_INCLUDE_TESTS=OFF
|
||||||
-DLLVM_TARGETS_TO_BUILD=X86
|
-DLLVM_TARGETS_TO_BUILD=X86
|
||||||
-DLLVM_INCLUDE_EXAMPLES=OFF
|
-DLLVM_INCLUDE_EXAMPLES=OFF
|
||||||
-DLLVM_ENABLE_TERMINFO=OFF
|
-DLLVM_ENABLE_TERMINFO=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(LLVM_GENERATOR "Ninja")
|
set(LLVM_GENERATOR "Ninja")
|
||||||
else()
|
else()
|
||||||
set(LLVM_GENERATOR "Unix Makefiles")
|
set(LLVM_GENERATOR "Unix Makefiles")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# short project name due to long filename issues on windows
|
# short project name due to long filename issues on windows
|
||||||
ExternalProject_Add(ll
|
ExternalProject_Add(ll
|
||||||
URL ${LLVM_URI}
|
URL ${LLVM_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${LLVM_HASH}
|
URL_HASH MD5=${LLVM_HASH}
|
||||||
CMAKE_GENERATOR ${LLVM_GENERATOR}
|
CMAKE_GENERATOR ${LLVM_GENERATOR}
|
||||||
PREFIX ${BUILD_DIR}/ll
|
PREFIX ${BUILD_DIR}/ll
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/llvm ${DEFAULT_CMAKE_FLAGS} ${LLVM_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/llvm ${DEFAULT_CMAKE_FLAGS} ${LLVM_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/llvm
|
INSTALL_DIR ${LIBDIR}/llvm
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(LLVM_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/ ${HARVEST_TARGET}/llvm/ )
|
set(LLVM_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/ ${HARVEST_TARGET}/llvm/ )
|
||||||
else()
|
else()
|
||||||
set(LLVM_HARVEST_COMMAND
|
set(LLVM_HARVEST_COMMAND
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/include/ ${HARVEST_TARGET}/llvm/debug/include/
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/include/ ${HARVEST_TARGET}/llvm/debug/include/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
ExternalProject_Add_Step(ll after_install
|
ExternalProject_Add_Step(ll after_install
|
||||||
COMMAND ${LLVM_HARVEST_COMMAND}
|
COMMAND ${LLVM_HARVEST_COMMAND}
|
||||||
DEPENDEES mkdir update patch download configure build install
|
DEPENDEES mkdir update patch download configure build install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,14 +19,14 @@
|
|||||||
set(LZMA_PATCH_CMD echo .)
|
set(LZMA_PATCH_CMD echo .)
|
||||||
|
|
||||||
ExternalProject_Add(external_lzma
|
ExternalProject_Add(external_lzma
|
||||||
URL ${LZMA_URI}
|
URL ${LZMA_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${LZMA_HASH}
|
URL_HASH SHA256=${LZMA_HASH}
|
||||||
PREFIX ${BUILD_DIR}/lzma
|
PREFIX ${BUILD_DIR}/lzma
|
||||||
PATCH_COMMAND ${LZMA_PATCH_CMD}
|
PATCH_COMMAND ${LZMA_PATCH_CMD}
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lzma
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lzma
|
||||||
--disable-shared
|
--disable-shared
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/lzma
|
INSTALL_DIR ${LIBDIR}/lzma
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,50 +17,50 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
set(NUMPY_DIR_POSTFIX -pydebug)
|
set(NUMPY_DIR_POSTFIX -pydebug)
|
||||||
set(NUMPY_ARCHIVE_POSTFIX d)
|
set(NUMPY_ARCHIVE_POSTFIX d)
|
||||||
set(NUMPY_BUILD_OPTION --debug)
|
set(NUMPY_BUILD_OPTION --debug)
|
||||||
else()
|
else()
|
||||||
set(NUMPY_DIR_POSTFIX)
|
set(NUMPY_DIR_POSTFIX)
|
||||||
set(NUMPY_ARCHIVE_POSTFIX)
|
set(NUMPY_ARCHIVE_POSTFIX)
|
||||||
set(NUMPY_BUILD_OPTION)
|
set(NUMPY_BUILD_OPTION)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(NUMPY_POSTFIX)
|
set(NUMPY_POSTFIX)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(NUMPY_INSTALL
|
set(NUMPY_INSTALL
|
||||||
${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/python/src/external_python/run/lib/site-packages/numpy/core/include/numpy" "${LIBDIR}/python/include/python${PYTHON_SHORT_VERSION}/numpy" &&
|
${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/python/src/external_python/run/lib/site-packages/numpy/core/include/numpy" "${LIBDIR}/python/include/python${PYTHON_SHORT_VERSION}/numpy" &&
|
||||||
${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/numpy/src/external_numpy/build/lib.${PYTHON_ARCH2}-${PYTHON_SHORT_VERSION}${NUMPY_DIR_POSTFIX}"
|
${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/numpy/src/external_numpy/build/lib.${PYTHON_ARCH2}-${PYTHON_SHORT_VERSION}${NUMPY_DIR_POSTFIX}"
|
||||||
${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz" "."
|
${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz" "."
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(NUMPY_INSTALL echo .)
|
set(NUMPY_INSTALL echo .)
|
||||||
set(NUMPY_PATCH echo .)
|
set(NUMPY_PATCH echo .)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_numpy
|
ExternalProject_Add(external_numpy
|
||||||
URL ${NUMPY_URI}
|
URL ${NUMPY_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${NUMPY_HASH}
|
URL_HASH MD5=${NUMPY_HASH}
|
||||||
PREFIX ${BUILD_DIR}/numpy
|
PREFIX ${BUILD_DIR}/numpy
|
||||||
PATCH_COMMAND ${NUMPY_PATCH}
|
PATCH_COMMAND ${NUMPY_PATCH}
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
LOG_BUILD 1
|
LOG_BUILD 1
|
||||||
BUILD_COMMAND ${PYTHON_BINARY} ${BUILD_DIR}/numpy/src/external_numpy/setup.py build ${NUMPY_BUILD_OPTION} install --old-and-unmanageable
|
BUILD_COMMAND ${PYTHON_BINARY} ${BUILD_DIR}/numpy/src/external_numpy/setup.py build ${NUMPY_BUILD_OPTION} install --old-and-unmanageable
|
||||||
INSTALL_COMMAND ${NUMPY_INSTALL}
|
INSTALL_COMMAND ${NUMPY_INSTALL}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
ExternalProject_Add_Step(external_numpy after_install
|
ExternalProject_Add_Step(external_numpy after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_numpy
|
external_numpy
|
||||||
Make_Python_Environment
|
Make_Python_Environment
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,16 +17,16 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_ogg
|
ExternalProject_Add(external_ogg
|
||||||
URL ${OGG_URI}
|
URL ${OGG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${OGG_HASH}
|
URL_HASH SHA256=${OGG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/ogg
|
PREFIX ${BUILD_DIR}/ogg
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ogg --disable-shared --enable-static
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ogg --disable-shared --enable-static
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/ogg
|
INSTALL_DIR ${LIBDIR}/ogg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_ogg PROPERTIES FOLDER Mingw)
|
set_target_properties(external_ogg PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,51 +17,51 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(OPENAL_EXTRA_ARGS
|
set(OPENAL_EXTRA_ARGS
|
||||||
-DALSOFT_UTILS=OFF
|
-DALSOFT_UTILS=OFF
|
||||||
-DALSOFT_NO_CONFIG_UTIL=ON
|
-DALSOFT_NO_CONFIG_UTIL=ON
|
||||||
-DALSOFT_EXAMPLES=OFF
|
-DALSOFT_EXAMPLES=OFF
|
||||||
-DALSOFT_TESTS=OFF
|
-DALSOFT_TESTS=OFF
|
||||||
-DALSOFT_CONFIG=OFF
|
-DALSOFT_CONFIG=OFF
|
||||||
-DALSOFT_HRTF_DEFS=OFF
|
-DALSOFT_HRTF_DEFS=OFF
|
||||||
-DALSOFT_INSTALL=ON
|
-DALSOFT_INSTALL=ON
|
||||||
-DALSOFT_BACKEND_SNDIO=OFF
|
-DALSOFT_BACKEND_SNDIO=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
set(OPENAL_EXTRA_ARGS
|
set(OPENAL_EXTRA_ARGS
|
||||||
${OPENAL_EXTRA_ARGS}
|
${OPENAL_EXTRA_ARGS}
|
||||||
-DLIBTYPE=STATIC
|
-DLIBTYPE=STATIC
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
# Ensure we have backends for playback.
|
# Ensure we have backends for playback.
|
||||||
set(OPENAL_EXTRA_ARGS
|
set(OPENAL_EXTRA_ARGS
|
||||||
${OPENAL_EXTRA_ARGS}
|
${OPENAL_EXTRA_ARGS}
|
||||||
-DALSOFT_REQUIRE_ALSA=ON
|
-DALSOFT_REQUIRE_ALSA=ON
|
||||||
-DALSOFT_REQUIRE_OSS=ON
|
-DALSOFT_REQUIRE_OSS=ON
|
||||||
-DALSOFT_REQUIRE_PULSEAUDIO=ON
|
-DALSOFT_REQUIRE_PULSEAUDIO=ON
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_openal
|
ExternalProject_Add(external_openal
|
||||||
URL ${OPENAL_URI}
|
URL ${OPENAL_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENAL_HASH}
|
URL_HASH MD5=${OPENAL_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openal
|
PREFIX ${BUILD_DIR}/openal
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openal ${DEFAULT_CMAKE_FLAGS} ${OPENAL_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openal ${DEFAULT_CMAKE_FLAGS} ${OPENAL_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/openal
|
INSTALL_DIR ${LIBDIR}/openal
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openal/src/external_openal < ${PATCH_DIR}/openal.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openal/src/external_openal < ${PATCH_DIR}/openal.diff
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
ExternalProject_Add_Step(external_openal after_install
|
ExternalProject_Add_Step(external_openal after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/lib/openal32.lib ${HARVEST_TARGET}/openal/lib/openal32.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/lib/openal32.lib ${HARVEST_TARGET}/openal/lib/openal32.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/bin/openal32.dll ${HARVEST_TARGET}/openal/lib/openal32.dll
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/bin/openal32.dll ${HARVEST_TARGET}/openal/lib/openal32.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openal/include/ ${HARVEST_TARGET}/openal/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openal/include/ ${HARVEST_TARGET}/openal/include/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,49 +17,49 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
set(OPENCOLLADA_EXTRA_ARGS
|
set(OPENCOLLADA_EXTRA_ARGS
|
||||||
-DLIBXML2_INCLUDE_DIR=${LIBDIR}/xml2/include/libxml2
|
-DLIBXML2_INCLUDE_DIR=${LIBDIR}/xml2/include/libxml2
|
||||||
-DLIBXML2_LIBRARIES=${LIBDIR}/xml2/lib/libxml2.a)
|
-DLIBXML2_LIBRARIES=${LIBDIR}/xml2/lib/libxml2.a)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_opencollada
|
ExternalProject_Add(external_opencollada
|
||||||
URL ${OPENCOLLADA_URI}
|
URL ${OPENCOLLADA_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENCOLLADA_HASH}
|
URL_HASH MD5=${OPENCOLLADA_HASH}
|
||||||
PREFIX ${BUILD_DIR}/opencollada
|
PREFIX ${BUILD_DIR}/opencollada
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencollada/src/external_opencollada < ${PATCH_DIR}/opencollada.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencollada/src/external_opencollada < ${PATCH_DIR}/opencollada.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencollada ${DEFAULT_CMAKE_FLAGS} ${OPENCOLLADA_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencollada ${DEFAULT_CMAKE_FLAGS} ${OPENCOLLADA_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/opencollada
|
INSTALL_DIR ${LIBDIR}/opencollada
|
||||||
)
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_opencollada
|
external_opencollada
|
||||||
external_xml2
|
external_xml2
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_opencollada after_install
|
ExternalProject_Add_Step(external_opencollada after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencollada/ ${HARVEST_TARGET}/opencollada/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencollada/ ${HARVEST_TARGET}/opencollada/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_opencollada after_install
|
ExternalProject_Add_Step(external_opencollada after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/buffer.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/buffer_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/buffer.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/buffer_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/ftoa.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/ftoa_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/ftoa.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/ftoa_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/GeneratedSaxParser.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/GeneratedSaxParser_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/GeneratedSaxParser.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/GeneratedSaxParser_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/MathMLSolver.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/MathMLSolver_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/MathMLSolver.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/MathMLSolver_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADABaseUtils.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADABaseUtils_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADABaseUtils.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADABaseUtils_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAFramework.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAFramework_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAFramework.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAFramework_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/pcre.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/pcre_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/pcre.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/pcre_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/UTF.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/UTF_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/UTF.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/UTF_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/xml.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/xml_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/xml.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/xml_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,96 +17,96 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
-DOCIO_BUILD_APPS=OFF
|
-DOCIO_BUILD_APPS=OFF
|
||||||
-DOCIO_BUILD_PYGLUE=OFF
|
-DOCIO_BUILD_PYGLUE=OFF
|
||||||
-DOCIO_BUILD_NUKE=OFF
|
-DOCIO_BUILD_NUKE=OFF
|
||||||
-DOCIO_USE_BOOST_PTR=OFF
|
-DOCIO_USE_BOOST_PTR=OFF
|
||||||
-DOCIO_BUILD_STATIC=ON
|
-DOCIO_BUILD_STATIC=ON
|
||||||
-DOCIO_BUILD_SHARED=OFF
|
-DOCIO_BUILD_SHARED=OFF
|
||||||
-DOCIO_BUILD_TRUELIGHT=OFF
|
-DOCIO_BUILD_TRUELIGHT=OFF
|
||||||
-DOCIO_BUILD_DOCS=OFF
|
-DOCIO_BUILD_DOCS=OFF
|
||||||
-DOCIO_BUILD_PYGLUE=OFF
|
-DOCIO_BUILD_PYGLUE=OFF
|
||||||
-DOCIO_BUILD_JNIGLUE=OFF
|
-DOCIO_BUILD_JNIGLUE=OFF
|
||||||
-DOCIO_STATIC_JNIGLUE=OFF
|
-DOCIO_STATIC_JNIGLUE=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OCIO_PATCH opencolorio_win.diff)
|
set(OCIO_PATCH opencolorio_win.diff)
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
${OPENCOLORIO_EXTRA_ARGS}
|
${OPENCOLORIO_EXTRA_ARGS}
|
||||||
-DOCIO_BUILD_TESTS=OFF
|
-DOCIO_BUILD_TESTS=OFF
|
||||||
-DOCIO_USE_SSE=ON
|
-DOCIO_USE_SSE=ON
|
||||||
-DOCIO_INLINES_HIDDEN=OFF
|
-DOCIO_INLINES_HIDDEN=OFF
|
||||||
-DOCIO_PYGLUE_LINK=OFF
|
-DOCIO_PYGLUE_LINK=OFF
|
||||||
-DOCIO_PYGLUE_RESPECT_ABI=OFF
|
-DOCIO_PYGLUE_RESPECT_ABI=OFF
|
||||||
-DOCIO_PYGLUE_SONAME=OFF
|
-DOCIO_PYGLUE_SONAME=OFF
|
||||||
-DOCIO_PYGLUE_LIB_PREFIX=OFF
|
-DOCIO_PYGLUE_LIB_PREFIX=OFF
|
||||||
-DUSE_EXTERNAL_TINYXML=ON
|
-DUSE_EXTERNAL_TINYXML=ON
|
||||||
-DTINYXML_INCLUDE_DIR=${LIBDIR}/tinyxml/include
|
-DTINYXML_INCLUDE_DIR=${LIBDIR}/tinyxml/include
|
||||||
-DTINYXML_LIBRARY=${LIBDIR}/tinyxml/lib/tinyxml${libext}
|
-DTINYXML_LIBRARY=${LIBDIR}/tinyxml/lib/tinyxml${libext}
|
||||||
-DUSE_EXTERNAL_YAML=ON
|
-DUSE_EXTERNAL_YAML=ON
|
||||||
-DYAML_CPP_FOUND=ON
|
-DYAML_CPP_FOUND=ON
|
||||||
-DYAML_CPP_VERSION=${YAMLCPP_VERSION}
|
-DYAML_CPP_VERSION=${YAMLCPP_VERSION}
|
||||||
-DUSE_EXTERNAL_LCMS=ON
|
-DUSE_EXTERNAL_LCMS=ON
|
||||||
-DINC_1=${LIBDIR}/tinyxml/include
|
-DINC_1=${LIBDIR}/tinyxml/include
|
||||||
-DINC_2=${LIBDIR}/yamlcpp/include
|
-DINC_2=${LIBDIR}/yamlcpp/include
|
||||||
#lie because ocio cmake is demanding boost even though it is not needed
|
#lie because ocio cmake is demanding boost even though it is not needed
|
||||||
-DYAML_CPP_VERSION=0.5.0
|
-DYAML_CPP_VERSION=0.5.0
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OCIO_PATCH opencolorio.diff)
|
set(OCIO_PATCH opencolorio.diff)
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
${OPENCOLORIO_EXTRA_ARGS}
|
${OPENCOLORIO_EXTRA_ARGS}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_opencolorio
|
ExternalProject_Add(external_opencolorio
|
||||||
URL ${OPENCOLORIO_URI}
|
URL ${OPENCOLORIO_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENCOLORIO_HASH}
|
URL_HASH MD5=${OPENCOLORIO_HASH}
|
||||||
PREFIX ${BUILD_DIR}/opencolorio
|
PREFIX ${BUILD_DIR}/opencolorio
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencolorio/src/external_opencolorio < ${PATCH_DIR}/${OCIO_PATCH}
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencolorio/src/external_opencolorio < ${PATCH_DIR}/${OCIO_PATCH}
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencolorio ${DEFAULT_CMAKE_FLAGS} ${OPENCOLORIO_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencolorio ${DEFAULT_CMAKE_FLAGS} ${OPENCOLORIO_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/opencolorio
|
INSTALL_DIR ${LIBDIR}/opencolorio
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${LIBDIR}/opencolorio/lib/libtinyxml.a
|
OUTPUT ${LIBDIR}/opencolorio/lib/libtinyxml.a
|
||||||
COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libtinyxml.a ${LIBDIR}/opencolorio/lib/libtinyxml.a
|
COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libtinyxml.a ${LIBDIR}/opencolorio/lib/libtinyxml.a
|
||||||
COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/libyaml-cpp.a
|
COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/libyaml-cpp.a
|
||||||
)
|
)
|
||||||
add_custom_target(external_opencolorio_extra ALL DEPENDS external_opencolorio ${LIBDIR}/opencolorio/lib/libtinyxml.a)
|
add_custom_target(external_opencolorio_extra ALL DEPENDS external_opencolorio ${LIBDIR}/opencolorio/lib/libtinyxml.a)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_opencolorio
|
external_opencolorio
|
||||||
external_boost
|
external_boost
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_opencolorio
|
external_opencolorio
|
||||||
external_tinyxml
|
external_tinyxml
|
||||||
external_yamlcpp
|
external_yamlcpp
|
||||||
|
|
||||||
)
|
)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_opencolorio after_install
|
ExternalProject_Add_Step(external_opencolorio after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/include ${HARVEST_TARGET}/opencolorio/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/include ${HARVEST_TARGET}/opencolorio/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib/static ${HARVEST_TARGET}/opencolorio/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib/static ${HARVEST_TARGET}/opencolorio/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmt.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmt.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_opencolorio after_install
|
ExternalProject_Add_Step(external_opencolorio after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/static/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/static/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmtd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmtd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,62 +17,62 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
set(OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
||||||
set(OPENEXR_EXTRA_ARGS
|
set(OPENEXR_EXTRA_ARGS
|
||||||
-DCMAKE_CXX_STANDARD_LIBRARIES=${OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES}
|
-DCMAKE_CXX_STANDARD_LIBRARIES=${OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES}
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase
|
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase
|
||||||
-DOPENEXR_BUILD_ILMBASE=On
|
-DOPENEXR_BUILD_ILMBASE=On
|
||||||
-DOPENEXR_BUILD_OPENEXR=On
|
-DOPENEXR_BUILD_OPENEXR=On
|
||||||
-DOPENEXR_BUILD_PYTHON_LIBS=Off
|
-DOPENEXR_BUILD_PYTHON_LIBS=Off
|
||||||
-DOPENEXR_BUILD_STATIC=On
|
-DOPENEXR_BUILD_STATIC=On
|
||||||
-DOPENEXR_BUILD_SHARED=Off
|
-DOPENEXR_BUILD_SHARED=Off
|
||||||
-DOPENEXR_BUILD_TESTS=Off
|
-DOPENEXR_BUILD_TESTS=Off
|
||||||
-DOPENEXR_BUILD_VIEWERS=Off
|
-DOPENEXR_BUILD_VIEWERS=Off
|
||||||
-DOPENEXR_BUILD_UTILS=Off
|
-DOPENEXR_BUILD_UTILS=Off
|
||||||
-DOPENEXR_NAMESPACE_VERSIONING=Off
|
-DOPENEXR_NAMESPACE_VERSIONING=Off
|
||||||
)
|
)
|
||||||
ExternalProject_Add(external_openexr
|
ExternalProject_Add(external_openexr
|
||||||
URL ${OPENEXR_URI}
|
URL ${OPENEXR_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENEXR_HASH}
|
URL_HASH MD5=${OPENEXR_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openexr
|
PREFIX ${BUILD_DIR}/openexr
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/openexr
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add_Step(external_openexr after_install
|
ExternalProject_Add_Step(external_openexr after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${HARVEST_TARGET}/openexr/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${HARVEST_TARGET}/openexr/lib
|
||||||
#libs have moved between versions, just duplicate it for now.
|
#libs have moved between versions, just duplicate it for now.
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${LIBDIR}/ilmbase/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${LIBDIR}/ilmbase/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/include ${HARVEST_TARGET}/openexr/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/include ${HARVEST_TARGET}/openexr/include
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig)
|
set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig)
|
||||||
set(OPENEXR_EXTRA_ARGS
|
set(OPENEXR_EXTRA_ARGS
|
||||||
--enable-static
|
--enable-static
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-cxxstd=11
|
--enable-cxxstd=11
|
||||||
--with-ilmbase-prefix=${LIBDIR}/ilmbase
|
--with-ilmbase-prefix=${LIBDIR}/ilmbase
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_openexr
|
ExternalProject_Add(external_openexr
|
||||||
URL ${OPENEXR_URI}
|
URL ${OPENEXR_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENEXR_HASH}
|
URL_HASH MD5=${OPENEXR_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openexr
|
PREFIX ${BUILD_DIR}/openexr
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${OPENEXR_PKG_CONFIG_PATH} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/openexr ${OPENEXR_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${OPENEXR_PKG_CONFIG_PATH} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/openexr ${OPENEXR_EXTRA_ARGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/openexr
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
external_ilmbase
|
external_ilmbase
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,136 +17,136 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(OIIO_TOOLS ON)
|
set(OIIO_TOOLS ON)
|
||||||
else()
|
else()
|
||||||
set(OIIO_TOOLS OFF)
|
set(OIIO_TOOLS OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
# This causes linking to static pthread libraries which gives link errors.
|
# This causes linking to static pthread libraries which gives link errors.
|
||||||
# Since we manually specify library paths it should static link other libs.
|
# Since we manually specify library paths it should static link other libs.
|
||||||
set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=OFF)
|
set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=OFF)
|
||||||
else()
|
else()
|
||||||
set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=ON)
|
set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(PNG_LIBNAME libpng16_static${LIBEXT})
|
set(PNG_LIBNAME libpng16_static${LIBEXT})
|
||||||
set(OIIO_SIMD_FLAGS -DUSE_SIMD=sse2 -DOPJ_STATIC=1)
|
set(OIIO_SIMD_FLAGS -DUSE_SIMD=sse2 -DOPJ_STATIC=1)
|
||||||
set(OPENJPEG_POSTFIX _msvc)
|
set(OPENJPEG_POSTFIX _msvc)
|
||||||
else()
|
else()
|
||||||
set(PNG_LIBNAME libpng${LIBEXT})
|
set(PNG_LIBNAME libpng${LIBEXT})
|
||||||
set(OIIO_SIMD_FLAGS)
|
set(OIIO_SIMD_FLAGS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_WEBP)
|
if(WITH_WEBP)
|
||||||
set(WEBP_ARGS
|
set(WEBP_ARGS
|
||||||
-DWEBP_INCLUDE_DIR=${LIBDIR}/webp/include
|
-DWEBP_INCLUDE_DIR=${LIBDIR}/webp/include
|
||||||
-DWEBP_LIBRARY=${LIBDIR}/webp/lib/${LIBPREFIX}webp${LIBEXT}
|
-DWEBP_LIBRARY=${LIBDIR}/webp/lib/${LIBPREFIX}webp${LIBEXT}
|
||||||
)
|
)
|
||||||
set(WEBP_DEP external_webp)
|
set(WEBP_DEP external_webp)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOPENJPEG_HOME=${LIBDIR}/openjpeg_msvc
|
-DOPENJPEG_HOME=${LIBDIR}/openjpeg_msvc
|
||||||
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg_msvc/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg_msvc/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
||||||
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
||||||
-DOPENJPEG_LIBRARY_DEBUG=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
-DOPENJPEG_LIBRARY_DEBUG=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
||||||
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg/lib/${OPENJPEG_LIBRARY}
|
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg/lib/${OPENJPEG_LIBRARY}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENIMAGEIO_EXTRA_ARGS
|
set(OPENIMAGEIO_EXTRA_ARGS
|
||||||
-DBUILDSTATIC=ON
|
-DBUILDSTATIC=ON
|
||||||
${OPENIMAGEIO_LINKSTATIC}
|
${OPENIMAGEIO_LINKSTATIC}
|
||||||
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/openexr/
|
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/openexr/
|
||||||
-DOPENEXR_ILMIMF_LIBRARIES=${LIBDIR}/openexr/lib/IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMIMF_LIBRARIES=${LIBDIR}/openexr/lib/IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
-DBoost_USE_STATIC_RUNTIME=ON
|
-DBoost_USE_STATIC_RUNTIME=ON
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
-OIIO_BUILD_CPP11=ON
|
-OIIO_BUILD_CPP11=ON
|
||||||
-DUSE_OPENGL=OFF
|
-DUSE_OPENGL=OFF
|
||||||
-DUSE_TBB=OFF
|
-DUSE_TBB=OFF
|
||||||
-DUSE_FIELD3D=OFF
|
-DUSE_FIELD3D=OFF
|
||||||
-DUSE_QT=OFF
|
-DUSE_QT=OFF
|
||||||
-DUSE_PYTHON=OFF
|
-DUSE_PYTHON=OFF
|
||||||
-DUSE_GIF=OFF
|
-DUSE_GIF=OFF
|
||||||
-DUSE_OPENCV=OFF
|
-DUSE_OPENCV=OFF
|
||||||
-DUSE_OPENSSL=OFF
|
-DUSE_OPENSSL=OFF
|
||||||
-DUSE_OPENJPEG=ON
|
-DUSE_OPENJPEG=ON
|
||||||
-DUSE_FFMPEG=OFF
|
-DUSE_FFMPEG=OFF
|
||||||
-DUSE_PTEX=OFF
|
-DUSE_PTEX=OFF
|
||||||
-DUSE_FREETYPE=OFF
|
-DUSE_FREETYPE=OFF
|
||||||
-DUSE_LIBRAW=OFF
|
-DUSE_LIBRAW=OFF
|
||||||
-DUSE_PYTHON=OFF
|
-DUSE_PYTHON=OFF
|
||||||
-DUSE_PYTHON3=OFF
|
-DUSE_PYTHON3=OFF
|
||||||
-DUSE_OCIO=OFF
|
-DUSE_OCIO=OFF
|
||||||
-DUSE_WEBP=${WITH_WEBP}
|
-DUSE_WEBP=${WITH_WEBP}
|
||||||
-DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
|
-DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
|
||||||
-DOIIO_BUILD_TESTS=OFF
|
-DOIIO_BUILD_TESTS=OFF
|
||||||
-DBUILD_TESTING=OFF
|
-DBUILD_TESTING=OFF
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
||||||
-DPNG_LIBRARY=${LIBDIR}/png/lib/${PNG_LIBNAME}
|
-DPNG_LIBRARY=${LIBDIR}/png/lib/${PNG_LIBNAME}
|
||||||
-DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
|
-DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
|
||||||
-DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
|
-DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
|
||||||
-DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
|
-DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
|
||||||
-DJPEG_LIBRARY=${LIBDIR}/jpg/lib/${JPEG_LIBRARY}
|
-DJPEG_LIBRARY=${LIBDIR}/jpg/lib/${JPEG_LIBRARY}
|
||||||
-DJPEG_INCLUDE_DIR=${LIBDIR}/jpg/include
|
-DJPEG_INCLUDE_DIR=${LIBDIR}/jpg/include
|
||||||
${OPENJPEG_FLAGS}
|
${OPENJPEG_FLAGS}
|
||||||
-DOCIO_PATH=${LIBDIR}/opencolorio/
|
-DOCIO_PATH=${LIBDIR}/opencolorio/
|
||||||
-DOpenEXR_USE_STATIC_LIBS=On
|
-DOpenEXR_USE_STATIC_LIBS=On
|
||||||
-DOPENEXR_HOME=${LIBDIR}/openexr/
|
-DOPENEXR_HOME=${LIBDIR}/openexr/
|
||||||
-DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/
|
-DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/
|
||||||
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/
|
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
||||||
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
||||||
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DSTOP_ON_WARNING=OFF
|
-DSTOP_ON_WARNING=OFF
|
||||||
${WEBP_FLAGS}
|
${WEBP_FLAGS}
|
||||||
${OIIO_SIMD_FLAGS}
|
${OIIO_SIMD_FLAGS}
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_openimageio
|
ExternalProject_Add(external_openimageio
|
||||||
URL ${OPENIMAGEIO_URI}
|
URL ${OPENIMAGEIO_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENIMAGEIO_HASH}
|
URL_HASH MD5=${OPENIMAGEIO_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openimageio
|
PREFIX ${BUILD_DIR}/openimageio
|
||||||
PATCH_COMMAND
|
PATCH_COMMAND
|
||||||
${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/src/include < ${PATCH_DIR}/openimageio_gdi.diff &&
|
${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/src/include < ${PATCH_DIR}/openimageio_gdi.diff &&
|
||||||
${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/ < ${PATCH_DIR}/openimageio_static_libs.diff
|
${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/ < ${PATCH_DIR}/openimageio_static_libs.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimageio ${DEFAULT_CMAKE_FLAGS} ${OPENIMAGEIO_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimageio ${DEFAULT_CMAKE_FLAGS} ${OPENIMAGEIO_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/openimageio
|
INSTALL_DIR ${LIBDIR}/openimageio
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openimageio
|
external_openimageio
|
||||||
external_png external_zlib
|
external_png external_zlib
|
||||||
external_ilmbase
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_jpeg
|
external_jpeg
|
||||||
external_boost
|
external_boost
|
||||||
external_tiff
|
external_tiff
|
||||||
external_opencolorio
|
external_opencolorio
|
||||||
external_openjpeg${OPENJPEG_POSTFIX}
|
external_openjpeg${OPENJPEG_POSTFIX}
|
||||||
${WEBP_DEP}
|
${WEBP_DEP}
|
||||||
)
|
)
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openimageio
|
external_openimageio
|
||||||
external_opencolorio_extra
|
external_opencolorio_extra
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -22,43 +22,43 @@
|
|||||||
set(OPENJPEG_EXTRA_ARGS -DBUILD_SHARED_LIBS=OFF)
|
set(OPENJPEG_EXTRA_ARGS -DBUILD_SHARED_LIBS=OFF)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
|
set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_openjpeg
|
ExternalProject_Add(external_openjpeg
|
||||||
URL ${OPENJPEG_URI}
|
URL ${OPENJPEG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${OPENJPEG_HASH}
|
URL_HASH SHA256=${OPENJPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openjpeg
|
PREFIX ${BUILD_DIR}/openjpeg
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/openjpeg
|
INSTALL_DIR ${LIBDIR}/openjpeg
|
||||||
)
|
)
|
||||||
|
|
||||||
#on windows ffmpeg wants a mingw build, while oiio needs a msvc build
|
#on windows ffmpeg wants a mingw build, while oiio needs a msvc build
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
||||||
ExternalProject_Add(external_openjpeg_msvc
|
ExternalProject_Add(external_openjpeg_msvc
|
||||||
URL ${OPENJPEG_URI}
|
URL ${OPENJPEG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${OPENJPEG_HASH}
|
URL_HASH SHA256=${OPENJPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openjpeg_msvc
|
PREFIX ${BUILD_DIR}/openjpeg_msvc
|
||||||
CMAKE_ARGS ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg_msvc -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF
|
CMAKE_ARGS ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg_msvc -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF
|
||||||
INSTALL_DIR ${LIBDIR}/openjpeg_msvc
|
INSTALL_DIR ${LIBDIR}/openjpeg_msvc
|
||||||
)
|
)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_openjpeg_msvc after_install
|
ExternalProject_Add_Step(external_openjpeg_msvc after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/lib ${HARVEST_TARGET}/openjpeg/lib &&
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/lib ${HARVEST_TARGET}/openjpeg/lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/include ${HARVEST_TARGET}/openjpeg/include
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/include ${HARVEST_TARGET}/openjpeg/include
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENJPEG_LIBRARY libopenjp2${LIBEXT})
|
set(OPENJPEG_LIBRARY libopenjp2${LIBEXT})
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_openjpeg PROPERTIES FOLDER Mingw)
|
set_target_properties(external_openjpeg PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -18,16 +18,16 @@
|
|||||||
|
|
||||||
|
|
||||||
ExternalProject_Add(external_openmp
|
ExternalProject_Add(external_openmp
|
||||||
URL ${OPENMP_URI}
|
URL ${OPENMP_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENMP_HASH}
|
URL_HASH MD5=${OPENMP_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openmp
|
PREFIX ${BUILD_DIR}/openmp
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openmp ${DEFAULT_CMAKE_FLAGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openmp ${DEFAULT_CMAKE_FLAGS}
|
||||||
INSTALL_COMMAND cd ${BUILD_DIR}/openmp/src/external_openmp-build && install_name_tool -id @executable_path/../Resources/lib/libomp.dylib runtime/src/libomp.dylib && make install
|
INSTALL_COMMAND cd ${BUILD_DIR}/openmp/src/external_openmp-build && install_name_tool -id @executable_path/../Resources/lib/libomp.dylib runtime/src/libomp.dylib && make install
|
||||||
INSTALL_DIR ${LIBDIR}/openmp
|
INSTALL_DIR ${LIBDIR}/openmp
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openmp
|
external_openmp
|
||||||
external_clang
|
external_clang
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,86 +17,86 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
-DNO_EXAMPLES=ON
|
-DNO_EXAMPLES=ON
|
||||||
-DNO_REGRESSION=ON
|
-DNO_REGRESSION=ON
|
||||||
-DNO_PYTHON=ON
|
-DNO_PYTHON=ON
|
||||||
-DNO_MAYA=ON
|
-DNO_MAYA=ON
|
||||||
-DNO_PTEX=ON
|
-DNO_PTEX=ON
|
||||||
-DNO_DOC=ON
|
-DNO_DOC=ON
|
||||||
-DNO_CLEW=OFF
|
-DNO_CLEW=OFF
|
||||||
-DNO_OPENCL=OFF
|
-DNO_OPENCL=OFF
|
||||||
-DNO_TUTORIALS=ON
|
-DNO_TUTORIALS=ON
|
||||||
-DGLEW_INCLUDE_DIR=${LIBDIR}/glew/include
|
-DGLEW_INCLUDE_DIR=${LIBDIR}/glew/include
|
||||||
-DGLEW_LIBRARY=${LIBDIR}/glew/lib/libGLEW${LIBEXT}
|
-DGLEW_LIBRARY=${LIBDIR}/glew/lib/libGLEW${LIBEXT}
|
||||||
-DGLFW_INCLUDE_DIR=${LIBDIR}/glfw/include
|
-DGLFW_INCLUDE_DIR=${LIBDIR}/glfw/include
|
||||||
-DGLFW_LIBRARIES=${LIBDIR}/glfw/lib/glfw3${LIBEXT}
|
-DGLFW_LIBRARIES=${LIBDIR}/glfw/lib/glfw3${LIBEXT}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
|
-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
|
||||||
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb_static.lib
|
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb_static.lib
|
||||||
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
||||||
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
|
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
|
||||||
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
||||||
-DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
|
-DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
|
||||||
-DCMAKE_EXE_LINKER_FLAGS_RELEASE=libcmt.lib
|
-DCMAKE_EXE_LINKER_FLAGS_RELEASE=libcmt.lib
|
||||||
)
|
)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DNO_CUDA=OFF
|
-DNO_CUDA=OFF
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DNO_CUDA=ON
|
-DNO_CUDA=ON
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DNO_CUDA=ON
|
-DNO_CUDA=ON
|
||||||
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
||||||
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
||||||
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/static/${LIBPREFIX}clew${LIBEXT}
|
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/static/${LIBPREFIX}clew${LIBEXT}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_opensubdiv
|
ExternalProject_Add(external_opensubdiv
|
||||||
URL ${OPENSUBDIV_URI}
|
URL ${OPENSUBDIV_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENSUBDIV_Hash}
|
URL_HASH MD5=${OPENSUBDIV_Hash}
|
||||||
PREFIX ${BUILD_DIR}/opensubdiv
|
PREFIX ${BUILD_DIR}/opensubdiv
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/opensubdiv/src/external_opensubdiv < ${PATCH_DIR}/opensubdiv.diff
|
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/opensubdiv/src/external_opensubdiv < ${PATCH_DIR}/opensubdiv.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opensubdiv -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${OPENSUBDIV_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opensubdiv -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${OPENSUBDIV_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/opensubdiv
|
INSTALL_DIR ${LIBDIR}/opensubdiv
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_opensubdiv after_install
|
ExternalProject_Add_Step(external_opensubdiv after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/lib ${HARVEST_TARGET}/opensubdiv/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/lib ${HARVEST_TARGET}/opensubdiv/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/include ${HARVEST_TARGET}/opensubdiv/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/include ${HARVEST_TARGET}/opensubdiv/include
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_opensubdiv after_install
|
ExternalProject_Add_Step(external_opensubdiv after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdCPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdCPU_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdCPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdCPU_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdGPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdGPU_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdGPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdGPU_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_opensubdiv
|
external_opensubdiv
|
||||||
external_glew
|
external_glew
|
||||||
external_glfw
|
external_glfw
|
||||||
external_clew
|
external_clew
|
||||||
external_cuew
|
external_cuew
|
||||||
external_tbb
|
external_tbb
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,86 +17,86 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
set(BLOSC_POST _d)
|
set(BLOSC_POST _d)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENVDB_EXTRA_ARGS
|
set(OPENVDB_EXTRA_ARGS
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
-DBoost_USE_STATIC_RUNTIME=ON
|
-DBoost_USE_STATIC_RUNTIME=ON
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/
|
-DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/
|
||||||
-DBLOSC_blosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
-DBLOSC_blosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
||||||
-DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF
|
-DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF
|
||||||
-DOPENVDB_BUILD_UNITTESTS=Off
|
-DOPENVDB_BUILD_UNITTESTS=Off
|
||||||
-DOPENVDB_BUILD_PYTHON_MODULE=Off
|
-DOPENVDB_BUILD_PYTHON_MODULE=Off
|
||||||
-DGLEW_LOCATION=${LIBDIR}/glew/
|
-DGLEW_LOCATION=${LIBDIR}/glew/
|
||||||
-DBLOSC_LOCATION=${LIBDIR}/blosc/
|
-DBLOSC_LOCATION=${LIBDIR}/blosc/
|
||||||
-DTBB_LOCATION=${LIBDIR}/tbb/
|
-DTBB_LOCATION=${LIBDIR}/tbb/
|
||||||
-DTBB_ROOT=${LIBDIR}/tbb/
|
-DTBB_ROOT=${LIBDIR}/tbb/
|
||||||
-DOPENEXR_LOCATION=${LIBDIR}/openexr
|
-DOPENEXR_LOCATION=${LIBDIR}/openexr
|
||||||
-DILMBASE_LOCATION=${LIBDIR}/ilmbase
|
-DILMBASE_LOCATION=${LIBDIR}/ilmbase
|
||||||
-DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib
|
-DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib
|
||||||
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
||||||
-DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib
|
-DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Namespaces seem to be buggy and cause linker errors due to things not
|
# Namespaces seem to be buggy and cause linker errors due to things not
|
||||||
# being in the correct namespace
|
# being in the correct namespace
|
||||||
# needs to link pthreads due to it being a blosc dependency
|
# needs to link pthreads due to it being a blosc dependency
|
||||||
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
||||||
-DOPENEXR_NAMESPACE_VERSIONING=OFF
|
-DOPENEXR_NAMESPACE_VERSIONING=OFF
|
||||||
-DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC3.lib
|
-DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC3.lib
|
||||||
)
|
)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
||||||
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
||||||
-DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no"
|
-DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no"
|
||||||
-DCMAKE_EXE_LINKER_FLAGS="/safeseh:no"
|
-DCMAKE_EXE_LINKER_FLAGS="/safeseh:no"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(openvdb
|
ExternalProject_Add(openvdb
|
||||||
URL ${OPENVDB_URI}
|
URL ${OPENVDB_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OPENVDB_HASH}
|
URL_HASH MD5=${OPENVDB_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openvdb
|
PREFIX ${BUILD_DIR}/openvdb
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openvdb ${DEFAULT_CMAKE_FLAGS} ${OPENVDB_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openvdb ${DEFAULT_CMAKE_FLAGS} ${OPENVDB_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/openvdb
|
INSTALL_DIR ${LIBDIR}/openvdb
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
openvdb
|
openvdb
|
||||||
external_tbb
|
external_tbb
|
||||||
external_boost
|
external_boost
|
||||||
external_ilmbase
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
external_blosc
|
external_blosc
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(openvdb after_install
|
ExternalProject_Add_Step(openvdb after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(openvdb after_install
|
ExternalProject_Add_Step(openvdb after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,22 +17,22 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/lapack/fftw3 by installing mingw64" ON)
|
option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/lapack/fftw3 by installing mingw64" ON)
|
||||||
endif()
|
endif()
|
||||||
option(WITH_WEBP "Enable building of oiio with webp support" OFF)
|
option(WITH_WEBP "Enable building of oiio with webp support" OFF)
|
||||||
option(WITH_EMBREE "Enable building of Embree" OFF)
|
option(WITH_EMBREE "Enable building of Embree" OFF)
|
||||||
set(MAKE_THREADS 1 CACHE STRING "Number of threads to run make with")
|
set(MAKE_THREADS 1 CACHE STRING "Number of threads to run make with")
|
||||||
|
|
||||||
if(NOT BUILD_MODE)
|
if(NOT BUILD_MODE)
|
||||||
set(BUILD_MODE "Release")
|
set(BUILD_MODE "Release")
|
||||||
message(STATUS "Build type not specified: defaulting to a release build.")
|
message(STATUS "Build type not specified: defaulting to a release build.")
|
||||||
endif()
|
endif()
|
||||||
message("BuildMode = ${BUILD_MODE}")
|
message("BuildMode = ${BUILD_MODE}")
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL "Debug")
|
if(BUILD_MODE STREQUAL "Debug")
|
||||||
set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Debug)
|
set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Debug)
|
||||||
else(BUILD_MODE STREQUAL "Debug")
|
else(BUILD_MODE STREQUAL "Debug")
|
||||||
set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Release)
|
set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Release)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(DOWNLOAD_DIR "Path for downloaded files" ${CMAKE_CURRENT_SOURCE_DIR}/downloads)
|
option(DOWNLOAD_DIR "Path for downloaded files" ${CMAKE_CURRENT_SOURCE_DIR}/downloads)
|
||||||
@@ -46,173 +46,173 @@ message("PATCH_DIR = ${PATCH_DIR}")
|
|||||||
message("BUILD_DIR = ${BUILD_DIR}")
|
message("BUILD_DIR = ${BUILD_DIR}")
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
||||||
else()
|
else()
|
||||||
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/patch.exe)
|
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/patch.exe)
|
||||||
endif()
|
endif()
|
||||||
set(LIBEXT ".lib")
|
set(LIBEXT ".lib")
|
||||||
set(LIBPREFIX "")
|
set(LIBPREFIX "")
|
||||||
|
|
||||||
# For OIIO and OSL
|
# For OIIO and OSL
|
||||||
set(COMMON_DEFINES /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
|
set(COMMON_DEFINES /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
|
||||||
|
|
||||||
if(MSVC_VERSION GREATER 1909)
|
if(MSVC_VERSION GREATER 1909)
|
||||||
set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
|
set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
|
||||||
endif()
|
endif()
|
||||||
set(COMMON_MSVC_FLAGS "${COMMON_MSVC_FLAGS} /bigobj")
|
set(COMMON_MSVC_FLAGS "${COMMON_MSVC_FLAGS} /bigobj")
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
endif()
|
endif()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MT ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MT ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
|
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
endif()
|
endif()
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MT /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MT /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
|
|
||||||
set(PLATFORM_FLAGS)
|
set(PLATFORM_FLAGS)
|
||||||
set(PLATFORM_CXX_FLAGS)
|
set(PLATFORM_CXX_FLAGS)
|
||||||
set(PLATFORM_CMAKE_FLAGS)
|
set(PLATFORM_CMAKE_FLAGS)
|
||||||
|
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
|
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
|
||||||
set(MINGW_SHELL ming64sh.cmd)
|
set(MINGW_SHELL ming64sh.cmd)
|
||||||
set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
|
set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
|
||||||
set(MINGW_HOST x86_64-w64-mingw32)
|
set(MINGW_HOST x86_64-w64-mingw32)
|
||||||
else()
|
else()
|
||||||
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw32)
|
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw32)
|
||||||
set(MINGW_SHELL ming32sh.cmd)
|
set(MINGW_SHELL ming32sh.cmd)
|
||||||
set(PERL_SHELL ${DOWNLOAD_DIR}/perl32/portableshell.bat)
|
set(PERL_SHELL ${DOWNLOAD_DIR}/perl32/portableshell.bat)
|
||||||
set(MINGW_HOST i686-w64-mingw32)
|
set(MINGW_HOST i686-w64-mingw32)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CONFIGURE_ENV
|
set(CONFIGURE_ENV
|
||||||
cd ${MINGW_PATH} &&
|
cd ${MINGW_PATH} &&
|
||||||
call ${MINGW_SHELL} &&
|
call ${MINGW_SHELL} &&
|
||||||
call ${PERL_SHELL} &&
|
call ${PERL_SHELL} &&
|
||||||
set path &&
|
set path &&
|
||||||
set CFLAGS=-g &&
|
set CFLAGS=-g &&
|
||||||
set LDFLAGS=-Wl,--as-needed -static-libgcc
|
set LDFLAGS=-Wl,--as-needed -static-libgcc
|
||||||
)
|
)
|
||||||
|
|
||||||
set(CONFIGURE_ENV_NO_PERL
|
set(CONFIGURE_ENV_NO_PERL
|
||||||
cd ${MINGW_PATH} &&
|
cd ${MINGW_PATH} &&
|
||||||
call ${MINGW_SHELL} &&
|
call ${MINGW_SHELL} &&
|
||||||
set path &&
|
set path &&
|
||||||
set CFLAGS=-g &&
|
set CFLAGS=-g &&
|
||||||
set LDFLAGS=-Wl,--as-needed -static-libgcc
|
set LDFLAGS=-Wl,--as-needed -static-libgcc
|
||||||
)
|
)
|
||||||
|
|
||||||
set(CONFIGURE_COMMAND sh ./configure)
|
set(CONFIGURE_COMMAND sh ./configure)
|
||||||
set(CONFIGURE_COMMAND_NO_TARGET ${CONFIGURE_COMMAND})
|
set(CONFIGURE_COMMAND_NO_TARGET ${CONFIGURE_COMMAND})
|
||||||
else()
|
else()
|
||||||
set(PATCH_CMD patch)
|
set(PATCH_CMD patch)
|
||||||
set(LIBEXT ".a")
|
set(LIBEXT ".a")
|
||||||
set(LIBPREFIX "lib")
|
set(LIBPREFIX "lib")
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
# Let's get the current Xcode dir, to support xcode-select
|
# Let's get the current Xcode dir, to support xcode-select
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND xcode-select --print-path
|
COMMAND xcode-select --print-path
|
||||||
OUTPUT_VARIABLE XCODE_DEV_PATH OUTPUT_STRIP_TRAILING_WHITESPACE
|
OUTPUT_VARIABLE XCODE_DEV_PATH OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
)
|
)
|
||||||
set(OSX_ARCHITECTURES x86_64)
|
set(OSX_ARCHITECTURES x86_64)
|
||||||
set(OSX_DEPLOYMENT_TARGET 10.9)
|
set(OSX_DEPLOYMENT_TARGET 10.9)
|
||||||
set(OSX_SYSROOT ${XCODE_DEV_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk)
|
set(OSX_SYSROOT ${XCODE_DEV_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk)
|
||||||
|
|
||||||
set(PLATFORM_CFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
|
set(PLATFORM_CFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
|
||||||
set(PLATFORM_CXXFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET} -std=c++11 -stdlib=libc++")
|
set(PLATFORM_CXXFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET} -std=c++11 -stdlib=libc++")
|
||||||
set(PLATFORM_LDFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
|
set(PLATFORM_LDFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
|
||||||
set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin13.0.0) # OS X 10.9
|
set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin13.0.0) # OS X 10.9
|
||||||
set(PLATFORM_CMAKE_FLAGS
|
set(PLATFORM_CMAKE_FLAGS
|
||||||
-DCMAKE_OSX_ARCHITECTURES:STRING=${OSX_ARCHITECTURES}
|
-DCMAKE_OSX_ARCHITECTURES:STRING=${OSX_ARCHITECTURES}
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${OSX_DEPLOYMENT_TARGET}
|
-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${OSX_DEPLOYMENT_TARGET}
|
||||||
-DCMAKE_OSX_SYSROOT:PATH=${OSX_SYSROOT}
|
-DCMAKE_OSX_SYSROOT:PATH=${OSX_SYSROOT}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(PLATFORM_CFLAGS "-fPIC")
|
set(PLATFORM_CFLAGS "-fPIC")
|
||||||
set(PLATFORM_CXXFLAGS "-std=c++11 -fPIC")
|
set(PLATFORM_CXXFLAGS "-std=c++11 -fPIC")
|
||||||
set(PLATFORM_LDFLAGS)
|
set(PLATFORM_LDFLAGS)
|
||||||
set(PLATFORM_BUILD_TARGET)
|
set(PLATFORM_BUILD_TARGET)
|
||||||
set(PLATFORM_CMAKE_FLAGS -DCMAKE_INSTALL_LIBDIR=lib)
|
set(PLATFORM_CMAKE_FLAGS -DCMAKE_INSTALL_LIBDIR=lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "-g ${PLATFORM_CFLAGS}")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "-g ${PLATFORM_CFLAGS}")
|
||||||
endif()
|
endif()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CFLAGS}")
|
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CFLAGS}")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
|
set(BLENDER_CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CFLAGS}")
|
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CFLAGS}")
|
||||||
|
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-g ${PLATFORM_CXXFLAGS}")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-g ${PLATFORM_CXXFLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CXXFLAGS}")
|
||||||
|
|
||||||
set(CONFIGURE_ENV
|
set(CONFIGURE_ENV
|
||||||
export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
|
export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
|
||||||
export CFLAGS=${PLATFORM_CFLAGS} &&
|
export CFLAGS=${PLATFORM_CFLAGS} &&
|
||||||
export CXXFLAGS=${PLATFORM_CXXFLAGS} &&
|
export CXXFLAGS=${PLATFORM_CXXFLAGS} &&
|
||||||
export LDFLAGS=${PLATFORM_LDFLAGS}
|
export LDFLAGS=${PLATFORM_LDFLAGS}
|
||||||
)
|
)
|
||||||
set(CONFIGURE_ENV_NO_PERL ${CONFIGURE_ENV})
|
set(CONFIGURE_ENV_NO_PERL ${CONFIGURE_ENV})
|
||||||
set(CONFIGURE_COMMAND ./configure ${PLATFORM_BUILD_TARGET})
|
set(CONFIGURE_COMMAND ./configure ${PLATFORM_BUILD_TARGET})
|
||||||
set(CONFIGURE_COMMAND_NO_TARGET ./configure)
|
set(CONFIGURE_COMMAND_NO_TARGET ./configure)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(DEFAULT_CMAKE_FLAGS
|
set(DEFAULT_CMAKE_FLAGS
|
||||||
-DCMAKE_BUILD_TYPE=${BUILD_MODE}
|
-DCMAKE_BUILD_TYPE=${BUILD_MODE}
|
||||||
-DCMAKE_C_FLAGS_DEBUG=${BLENDER_CMAKE_C_FLAGS_DEBUG}
|
-DCMAKE_C_FLAGS_DEBUG=${BLENDER_CMAKE_C_FLAGS_DEBUG}
|
||||||
-DCMAKE_C_FLAGS_MINSIZEREL=${BLENDER_CMAKE_C_FLAGS_MINSIZEREL}
|
-DCMAKE_C_FLAGS_MINSIZEREL=${BLENDER_CMAKE_C_FLAGS_MINSIZEREL}
|
||||||
-DCMAKE_C_FLAGS_RELEASE=${BLENDER_CMAKE_C_FLAGS_RELEASE}
|
-DCMAKE_C_FLAGS_RELEASE=${BLENDER_CMAKE_C_FLAGS_RELEASE}
|
||||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO=${BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO}
|
-DCMAKE_C_FLAGS_RELWITHDEBINFO=${BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO}
|
||||||
-DCMAKE_CXX_FLAGS_DEBUG=${BLENDER_CMAKE_CXX_FLAGS_DEBUG}
|
-DCMAKE_CXX_FLAGS_DEBUG=${BLENDER_CMAKE_CXX_FLAGS_DEBUG}
|
||||||
-DCMAKE_CXX_FLAGS_MINSIZEREL=${BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL}
|
-DCMAKE_CXX_FLAGS_MINSIZEREL=${BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL}
|
||||||
-DCMAKE_CXX_FLAGS_RELEASE=${BLENDER_CMAKE_CXX_FLAGS_RELEASE}
|
-DCMAKE_CXX_FLAGS_RELEASE=${BLENDER_CMAKE_CXX_FLAGS_RELEASE}
|
||||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO}
|
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO}
|
||||||
${PLATFORM_CMAKE_FLAGS}
|
${PLATFORM_CMAKE_FLAGS}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
#we need both flavors to build the thumbnail dlls
|
#we need both flavors to build the thumbnail dlls
|
||||||
if(MSVC12)
|
if(MSVC12)
|
||||||
set(GENERATOR_32 "Visual Studio 12 2013")
|
set(GENERATOR_32 "Visual Studio 12 2013")
|
||||||
set(GENERATOR_64 "Visual Studio 12 2013 Win64")
|
set(GENERATOR_64 "Visual Studio 12 2013 Win64")
|
||||||
elseif(MSVC14)
|
elseif(MSVC14)
|
||||||
set(GENERATOR_32 "Visual Studio 14 2015")
|
set(GENERATOR_32 "Visual Studio 14 2015")
|
||||||
set(GENERATOR_64 "Visual Studio 14 2015 Win64")
|
set(GENERATOR_64 "Visual Studio 14 2015 Win64")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
set(ZLIB_LIBRARY zlibstaticd${LIBEXT})
|
set(ZLIB_LIBRARY zlibstaticd${LIBEXT})
|
||||||
else()
|
else()
|
||||||
set(ZLIB_LIBRARY zlibstatic${LIBEXT})
|
set(ZLIB_LIBRARY zlibstatic${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(ZLIB_LIBRARY libz${LIBEXT})
|
set(ZLIB_LIBRARY libz${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_INSTALL_MESSAGE LAZY)
|
set(CMAKE_INSTALL_MESSAGE LAZY)
|
||||||
|
|||||||
@@ -17,116 +17,116 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
||||||
set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DFLEX_EXTRA_OPTIONS="--wincompat" -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
|
set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DFLEX_EXTRA_OPTIONS="--wincompat" -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
|
||||||
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/libpng16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/libpng16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
||||||
set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=0)
|
set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=0)
|
||||||
else()
|
else()
|
||||||
set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=sse2)
|
set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=sse2)
|
||||||
endif()
|
endif()
|
||||||
SET(OSL_PLATFORM_FLAGS -DLINKSTATIC=ON)
|
SET(OSL_PLATFORM_FLAGS -DLINKSTATIC=ON)
|
||||||
else()
|
else()
|
||||||
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
|
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
|
||||||
set(OSL_FLEX_BISON)
|
set(OSL_FLEX_BISON)
|
||||||
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
||||||
SET(OSL_PLATFORM_FLAGS)
|
SET(OSL_PLATFORM_FLAGS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/ilmbase/lib/Imath${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Half{ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/IlmThread${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Iex${ILMBASE_VERSION_POSTFIX}.lib")
|
set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/ilmbase/lib/Imath${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Half{ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/IlmThread${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Iex${ILMBASE_VERSION_POSTFIX}.lib")
|
||||||
set(OSL_LLVM_LIBRARY "${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAnalysis${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitReader${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitWriter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCore${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMDebugInfo${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMExecutionEngine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstCombine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstrumentation${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInterpreter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMLinker${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMC${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCDisassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMObject${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMRuntimeDyld${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMScalarOpts${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSelectionDAG${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSupport${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTableGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTarget${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTransformUtils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMVectorize${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86CodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Desc${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Disassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Info${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Utils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipa${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipo${LIBEXT}")
|
set(OSL_LLVM_LIBRARY "${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAnalysis${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitReader${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitWriter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCore${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMDebugInfo${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMExecutionEngine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstCombine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstrumentation${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInterpreter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMLinker${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMC${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCDisassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMObject${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMRuntimeDyld${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMScalarOpts${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSelectionDAG${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSupport${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTableGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTarget${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTransformUtils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMVectorize${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86CodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Desc${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Disassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Info${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Utils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipa${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipo${LIBEXT}")
|
||||||
|
|
||||||
set(OSL_EXTRA_ARGS
|
set(OSL_EXTRA_ARGS
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
-DBoost_USE_STATIC_RUNTIME=ON
|
-DBoost_USE_STATIC_RUNTIME=ON
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
-DLLVM_DIRECTORY=${LIBDIR}/llvm
|
-DLLVM_DIRECTORY=${LIBDIR}/llvm
|
||||||
-DLLVM_INCLUDES=${LIBDIR}/llvm/include
|
-DLLVM_INCLUDES=${LIBDIR}/llvm/include
|
||||||
-DLLVM_LIB_DIR=${LIBDIR}/llvm/lib
|
-DLLVM_LIB_DIR=${LIBDIR}/llvm/lib
|
||||||
-DLLVM_VERSION=3.4
|
-DLLVM_VERSION=3.4
|
||||||
-DLLVM_LIBRARY=${OSL_LLVM_LIBRARY}
|
-DLLVM_LIBRARY=${OSL_LLVM_LIBRARY}
|
||||||
-DOPENEXR_HOME=${LIBDIR}/openexr/
|
-DOPENEXR_HOME=${LIBDIR}/openexr/
|
||||||
-DILMBASE_HOME=${LIBDIR}/ilmbase/
|
-DILMBASE_HOME=${LIBDIR}/ilmbase/
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
||||||
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
||||||
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOSL_BUILD_TESTS=OFF
|
-DOSL_BUILD_TESTS=OFF
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DOPENIMAGEIOHOME=${LIBDIR}/openimageio/
|
-DOPENIMAGEIOHOME=${LIBDIR}/openimageio/
|
||||||
-DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
|
-DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
|
||||||
-DOPENIMAGEIO_INCLUDES=${LIBDIR}/openimageio/include
|
-DOPENIMAGEIO_INCLUDES=${LIBDIR}/openimageio/include
|
||||||
${OSL_FLEX_BISON}
|
${OSL_FLEX_BISON}
|
||||||
-DCMAKE_CXX_STANDARD_LIBRARIES=${OSL_CMAKE_CXX_STANDARD_LIBRARIES}
|
-DCMAKE_CXX_STANDARD_LIBRARIES=${OSL_CMAKE_CXX_STANDARD_LIBRARIES}
|
||||||
-DBUILDSTATIC=ON
|
-DBUILDSTATIC=ON
|
||||||
${OSL_PLATFORM_FLAGS}
|
${OSL_PLATFORM_FLAGS}
|
||||||
-DOSL_BUILD_PLUGINS=Off
|
-DOSL_BUILD_PLUGINS=Off
|
||||||
-DSTOP_ON_WARNING=OFF
|
-DSTOP_ON_WARNING=OFF
|
||||||
-DUSE_LLVM_BITCODE=OFF
|
-DUSE_LLVM_BITCODE=OFF
|
||||||
-DUSE_PARTIO=OFF
|
-DUSE_PARTIO=OFF
|
||||||
${OSL_SIMD_FLAGS}
|
${OSL_SIMD_FLAGS}
|
||||||
-DPARTIO_LIBRARIES=
|
-DPARTIO_LIBRARIES=
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OSL_EXTRA_ARGS
|
set(OSL_EXTRA_ARGS
|
||||||
${OSL_EXTRA_ARGS}
|
${OSL_EXTRA_ARGS}
|
||||||
-DPUGIXML_HOME=${LIBDIR}/pugixml
|
-DPUGIXML_HOME=${LIBDIR}/pugixml
|
||||||
)
|
)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
# Make symbol hiding consistent with OIIO which defaults to OFF,
|
# Make symbol hiding consistent with OIIO which defaults to OFF,
|
||||||
# avoids linker warnings on macOS
|
# avoids linker warnings on macOS
|
||||||
set(OSL_EXTRA_ARGS
|
set(OSL_EXTRA_ARGS
|
||||||
${OSL_EXTRA_ARGS}
|
${OSL_EXTRA_ARGS}
|
||||||
-DHIDE_SYMBOLS=OFF
|
-DHIDE_SYMBOLS=OFF
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_osl
|
ExternalProject_Add(external_osl
|
||||||
URL ${OSL_URI}
|
URL ${OSL_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
LIST_SEPARATOR ^^
|
LIST_SEPARATOR ^^
|
||||||
URL_HASH MD5=${OSL_HASH}
|
URL_HASH MD5=${OSL_HASH}
|
||||||
PREFIX ${BUILD_DIR}/osl
|
PREFIX ${BUILD_DIR}/osl
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/osl -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ${DEFAULT_CMAKE_FLAGS} ${OSL_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/osl -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ${DEFAULT_CMAKE_FLAGS} ${OSL_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/osl
|
INSTALL_DIR ${LIBDIR}/osl
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_osl
|
external_osl
|
||||||
external_boost
|
external_boost
|
||||||
ll
|
ll
|
||||||
external_clang
|
external_clang
|
||||||
external_ilmbase
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
external_flexbison
|
external_flexbison
|
||||||
external_openimageio
|
external_openimageio
|
||||||
external_pugixml
|
external_pugixml
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_osl after_install
|
ExternalProject_Add_Step(external_osl after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/osl/ ${HARVEST_TARGET}/osl
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/osl/ ${HARVEST_TARGET}/osl
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_osl after_install
|
ExternalProject_Add_Step(external_osl after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslcomp.lib ${HARVEST_TARGET}/osl/lib/oslcomp_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslcomp.lib ${HARVEST_TARGET}/osl/lib/oslcomp_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslexec.lib ${HARVEST_TARGET}/osl/lib/oslexec_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslexec.lib ${HARVEST_TARGET}/osl/lib/oslexec_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslquery.lib ${HARVEST_TARGET}/osl/lib/oslquery_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslquery.lib ${HARVEST_TARGET}/osl/lib/oslquery_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,28 +17,28 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(PNG_EXTRA_ARGS
|
set(PNG_EXTRA_ARGS
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DPNG_STATIC=ON
|
-DPNG_STATIC=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_png
|
ExternalProject_Add(external_png
|
||||||
URL ${PNG_URI}
|
URL ${PNG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${PNG_HASH}
|
URL_HASH MD5=${PNG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/png
|
PREFIX ${BUILD_DIR}/png
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/png ${DEFAULT_CMAKE_FLAGS} ${PNG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/png ${DEFAULT_CMAKE_FLAGS} ${PNG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/png
|
INSTALL_DIR ${LIBDIR}/png
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_png
|
external_png
|
||||||
external_zlib
|
external_zlib
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32 AND BUILD_MODE STREQUAL Debug)
|
if(WIN32 AND BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_png after_install
|
ExternalProject_Add_Step(external_png after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_staticd${LIBEXT} ${LIBDIR}/png/lib/libpng16${LIBEXT}
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_staticd${LIBEXT} ${LIBDIR}/png/lib/libpng16${LIBEXT}
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -18,36 +18,36 @@
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
|
||||||
if(MSVC14) # vs2015 has timespec
|
if(MSVC14) # vs2015 has timespec
|
||||||
set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H /D_TIMESPEC_DEFINED ")
|
set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H /D_TIMESPEC_DEFINED ")
|
||||||
else() # everything before doesn't
|
else() # everything before doesn't
|
||||||
set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H ")
|
set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H ")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PTHREADS_BUILD cd ${BUILD_DIR}/pthreads/src/external_pthreads/ && cd && nmake VC-static /e CPPFLAGS=${PTHREAD_CPPFLAGS} /e XLIBS=/NODEFAULTLIB:msvcr)
|
set(PTHREADS_BUILD cd ${BUILD_DIR}/pthreads/src/external_pthreads/ && cd && nmake VC-static /e CPPFLAGS=${PTHREAD_CPPFLAGS} /e XLIBS=/NODEFAULTLIB:msvcr)
|
||||||
|
|
||||||
ExternalProject_Add(external_pthreads
|
ExternalProject_Add(external_pthreads
|
||||||
URL ${PTHREADS_URI}
|
URL ${PTHREADS_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${PTHREADS_HASH}
|
URL_HASH MD5=${PTHREADS_HASH}
|
||||||
PREFIX ${BUILD_DIR}/pthreads
|
PREFIX ${BUILD_DIR}/pthreads
|
||||||
CONFIGURE_COMMAND echo .
|
CONFIGURE_COMMAND echo .
|
||||||
BUILD_COMMAND ${PTHREADS_BUILD}
|
BUILD_COMMAND ${PTHREADS_BUILD}
|
||||||
INSTALL_COMMAND COMMAND
|
INSTALL_COMMAND COMMAND
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/libpthreadVC3${LIBEXT} ${LIBDIR}/pthreads/lib/pthreadVC3${LIBEXT} &&
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/libpthreadVC3${LIBEXT} ${LIBDIR}/pthreads/lib/pthreadVC3${LIBEXT} &&
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/pthread.h ${LIBDIR}/pthreads/inc/pthread.h &&
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/pthread.h ${LIBDIR}/pthreads/inc/pthread.h &&
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/sched.h ${LIBDIR}/pthreads/inc/sched.h &&
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/sched.h ${LIBDIR}/pthreads/inc/sched.h &&
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/semaphore.h ${LIBDIR}/pthreads/inc/semaphore.h &&
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/semaphore.h ${LIBDIR}/pthreads/inc/semaphore.h &&
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/_ptw32.h ${LIBDIR}/pthreads/inc/_ptw32.h
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/_ptw32.h ${LIBDIR}/pthreads/inc/_ptw32.h
|
||||||
INSTALL_DIR ${LIBDIR}/pthreads
|
INSTALL_DIR ${LIBDIR}/pthreads
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_pthreads after_install
|
ExternalProject_Add_Step(external_pthreads after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/inc/ ${HARVEST_TARGET}/pthreads/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/inc/ ${HARVEST_TARGET}/pthreads/include/
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/lib/ ${HARVEST_TARGET}/pthreads/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/lib/ ${HARVEST_TARGET}/pthreads/lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -20,24 +20,24 @@ set(PUGIXML_EXTRA_ARGS
|
|||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_pugixml
|
ExternalProject_Add(external_pugixml
|
||||||
URL ${PUGIXML_URI}
|
URL ${PUGIXML_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${PUGIXML_HASH}
|
URL_HASH MD5=${PUGIXML_HASH}
|
||||||
PREFIX ${BUILD_DIR}/pugixml
|
PREFIX ${BUILD_DIR}/pugixml
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/pugixml ${DEFAULT_CMAKE_FLAGS} ${PUGIXML_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/pugixml ${DEFAULT_CMAKE_FLAGS} ${PUGIXML_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/pugixml
|
INSTALL_DIR ${LIBDIR}/pugixml
|
||||||
)
|
)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_pugixml after_install
|
ExternalProject_Add_Step(external_pugixml after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_pugixml after_install
|
ExternalProject_Add_Step(external_pugixml after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
@@ -18,164 +18,164 @@
|
|||||||
|
|
||||||
set(PYTHON_POSTFIX)
|
set(PYTHON_POSTFIX)
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
set(PYTHON_POSTFIX _d)
|
set(PYTHON_POSTFIX _d)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(SSL_POSTFIX -x64)
|
set(SSL_POSTFIX -x64)
|
||||||
else()
|
else()
|
||||||
set(SSL_POSTFIX)
|
set(SSL_POSTFIX)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe)
|
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe)
|
||||||
|
|
||||||
macro(cmake_to_dos_path MsysPath ResultingPath)
|
macro(cmake_to_dos_path MsysPath ResultingPath)
|
||||||
string(REPLACE "/" "\\" ${ResultingPath} "${MsysPath}")
|
string(REPLACE "/" "\\" ${ResultingPath} "${MsysPath}")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
set(PYTHON_EXTERNALS_FOLDER ${BUILD_DIR}/python/src/external_python/externals)
|
set(PYTHON_EXTERNALS_FOLDER ${BUILD_DIR}/python/src/external_python/externals)
|
||||||
set(DOWNLOADS_EXTERNALS_FOLDER ${DOWNLOAD_DIR}/externals)
|
set(DOWNLOADS_EXTERNALS_FOLDER ${DOWNLOAD_DIR}/externals)
|
||||||
|
|
||||||
cmake_to_dos_path(${PYTHON_EXTERNALS_FOLDER} PYTHON_EXTERNALS_FOLDER_DOS)
|
cmake_to_dos_path(${PYTHON_EXTERNALS_FOLDER} PYTHON_EXTERNALS_FOLDER_DOS)
|
||||||
cmake_to_dos_path(${DOWNLOADS_EXTERNALS_FOLDER} DOWNLOADS_EXTERNALS_FOLDER_DOS)
|
cmake_to_dos_path(${DOWNLOADS_EXTERNALS_FOLDER} DOWNLOADS_EXTERNALS_FOLDER_DOS)
|
||||||
|
|
||||||
message("Python externals = ${PYTHON_EXTERNALS_FOLDER}")
|
message("Python externals = ${PYTHON_EXTERNALS_FOLDER}")
|
||||||
message("Python externals_dos = ${PYTHON_EXTERNALS_FOLDER_DOS}")
|
message("Python externals_dos = ${PYTHON_EXTERNALS_FOLDER_DOS}")
|
||||||
message("Python DOWNLOADS_EXTERNALS_FOLDER = ${DOWNLOADS_EXTERNALS_FOLDER}")
|
message("Python DOWNLOADS_EXTERNALS_FOLDER = ${DOWNLOADS_EXTERNALS_FOLDER}")
|
||||||
message("Python DOWNLOADS_EXTERNALS_FOLDER_DOS = ${DOWNLOADS_EXTERNALS_FOLDER_DOS}")
|
message("Python DOWNLOADS_EXTERNALS_FOLDER_DOS = ${DOWNLOADS_EXTERNALS_FOLDER_DOS}")
|
||||||
|
|
||||||
ExternalProject_Add(external_python
|
ExternalProject_Add(external_python
|
||||||
URL ${PYTHON_URI}
|
URL ${PYTHON_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${PYTHON_HASH}
|
URL_HASH MD5=${PYTHON_HASH}
|
||||||
PREFIX ${BUILD_DIR}/python
|
PREFIX ${BUILD_DIR}/python
|
||||||
PATCH_COMMAND
|
PATCH_COMMAND
|
||||||
echo mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}" &&
|
echo mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}" &&
|
||||||
mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}"
|
mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}"
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
BUILD_COMMAND cd ${BUILD_DIR}/python/src/external_python/pcbuild/ && set IncludeTkinter=false && call build.bat -e -p ${PYTHON_ARCH} -c ${BUILD_MODE}
|
BUILD_COMMAND cd ${BUILD_DIR}/python/src/external_python/pcbuild/ && set IncludeTkinter=false && call build.bat -e -p ${PYTHON_ARCH} -c ${BUILD_MODE}
|
||||||
INSTALL_COMMAND COMMAND
|
INSTALL_COMMAND COMMAND
|
||||||
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll &&
|
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll &&
|
||||||
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb &&
|
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb &&
|
||||||
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib &&
|
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib &&
|
||||||
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp &&
|
${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION} &&
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION} &&
|
||||||
${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION}/pyconfig.h
|
${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION}/pyconfig.h
|
||||||
)
|
)
|
||||||
message("PythinRedist = ${BUILD_DIR}/python/src/external_python/redist")
|
message("PythinRedist = ${BUILD_DIR}/python/src/external_python/redist")
|
||||||
message("POutput = ${PYTHON_OUTPUTDIR}")
|
message("POutput = ${PYTHON_OUTPUTDIR}")
|
||||||
else()
|
else()
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
# disable functions that can be in 10.13 sdk but aren't available on 10.9 target
|
# disable functions that can be in 10.13 sdk but aren't available on 10.9 target
|
||||||
set(PYTHON_FUNC_CONFIGS
|
set(PYTHON_FUNC_CONFIGS
|
||||||
export ac_cv_func_futimens=no &&
|
export ac_cv_func_futimens=no &&
|
||||||
export ac_cv_func_utimensat=no &&
|
export ac_cv_func_utimensat=no &&
|
||||||
export ac_cv_func_basename_r=no &&
|
export ac_cv_func_basename_r=no &&
|
||||||
export ac_cv_func_clock_getres=no &&
|
export ac_cv_func_clock_getres=no &&
|
||||||
export ac_cv_func_clock_gettime=no &&
|
export ac_cv_func_clock_gettime=no &&
|
||||||
export ac_cv_func_clock_settime=no &&
|
export ac_cv_func_clock_settime=no &&
|
||||||
export ac_cv_func_dirname_r=no &&
|
export ac_cv_func_dirname_r=no &&
|
||||||
export ac_cv_func_getentropy=no &&
|
export ac_cv_func_getentropy=no &&
|
||||||
export ac_cv_func_mkostemp=no &&
|
export ac_cv_func_mkostemp=no &&
|
||||||
export ac_cv_func_mkostemps=no &&
|
export ac_cv_func_mkostemps=no &&
|
||||||
export ac_cv_func_timingsafe_bcmp=no)
|
export ac_cv_func_timingsafe_bcmp=no)
|
||||||
set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV} && ${PYTHON_FUNC_CONFIGS})
|
set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV} && ${PYTHON_FUNC_CONFIGS})
|
||||||
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python.exe)
|
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python.exe)
|
||||||
else()
|
else()
|
||||||
set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV})
|
set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV})
|
||||||
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python)
|
set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PYTHON_CONFIGURE_EXTRA_ARGS "--with-openssl=${LIBDIR}/ssl")
|
set(PYTHON_CONFIGURE_EXTRA_ARGS "--with-openssl=${LIBDIR}/ssl")
|
||||||
set(PYTHON_CFLAGS "-I${LIBDIR}/sqlite/include -I${LIBDIR}/bzip2/include -I${LIBDIR}/lzma/include -I${LIBDIR}/zlib/include")
|
set(PYTHON_CFLAGS "-I${LIBDIR}/sqlite/include -I${LIBDIR}/bzip2/include -I${LIBDIR}/lzma/include -I${LIBDIR}/zlib/include")
|
||||||
set(PYTHON_LDFLAGS "-L${LIBDIR}/ffi/lib -L${LIBDIR}/sqlite/lib -L${LIBDIR}/bzip2/lib -L${LIBDIR}/lzma/lib -L${LIBDIR}/zlib/lib")
|
set(PYTHON_LDFLAGS "-L${LIBDIR}/ffi/lib -L${LIBDIR}/sqlite/lib -L${LIBDIR}/bzip2/lib -L${LIBDIR}/lzma/lib -L${LIBDIR}/zlib/lib")
|
||||||
set(PYTHON_CONFIGURE_EXTRA_ENV
|
set(PYTHON_CONFIGURE_EXTRA_ENV
|
||||||
export CFLAGS=${PYTHON_CFLAGS} &&
|
export CFLAGS=${PYTHON_CFLAGS} &&
|
||||||
export CPPFLAGS=${PYTHON_CFLAGS} &&
|
export CPPFLAGS=${PYTHON_CFLAGS} &&
|
||||||
export LDFLAGS=${PYTHON_LDFLAGS} &&
|
export LDFLAGS=${PYTHON_LDFLAGS} &&
|
||||||
export PKG_CONFIG_PATH=${LIBDIR}/ffi/lib/pkgconfig)
|
export PKG_CONFIG_PATH=${LIBDIR}/ffi/lib/pkgconfig)
|
||||||
set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_linux.diff)
|
set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_linux.diff)
|
||||||
|
|
||||||
ExternalProject_Add(external_python
|
ExternalProject_Add(external_python
|
||||||
URL ${PYTHON_URI}
|
URL ${PYTHON_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${PYTHON_HASH}
|
URL_HASH MD5=${PYTHON_HASH}
|
||||||
PREFIX ${BUILD_DIR}/python
|
PREFIX ${BUILD_DIR}/python
|
||||||
PATCH_COMMAND ${PYTHON_PATCH}
|
PATCH_COMMAND ${PYTHON_PATCH}
|
||||||
CONFIGURE_COMMAND ${PYTHON_CONFIGURE_ENV} && ${PYTHON_CONFIGURE_EXTRA_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/python ${PYTHON_CONFIGURE_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${PYTHON_CONFIGURE_ENV} && ${PYTHON_CONFIGURE_EXTRA_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/python ${PYTHON_CONFIGURE_EXTRA_ARGS}
|
||||||
BUILD_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make install
|
INSTALL_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/python)
|
INSTALL_DIR ${LIBDIR}/python)
|
||||||
|
|
||||||
add_custom_target(Make_Python_Environment ALL DEPENDS external_python)
|
add_custom_target(Make_Python_Environment ALL DEPENDS external_python)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
|
OUTPUT ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
|
||||||
OUTPUT ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
|
OUTPUT ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/lib ${BUILD_DIR}/python/src/external_python/redist/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/lib ${BUILD_DIR}/python/src/external_python/redist/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_asyncio${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_asyncio${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_asyncio${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_asyncio${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_bz2${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_bz2${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_bz2${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_bz2${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_contextvars${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_contextvars${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_contextvars${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_contextvars${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes_test${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes_test${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes_test${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes_test${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_decimal${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_decimal${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_decimal${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_decimal${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_distutils_findvs${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_distutils_findvs${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_distutils_findvs${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_distutils_findvs${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_elementtree${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_elementtree${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_elementtree${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_elementtree${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_hashlib${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_hashlib${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_hashlib${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_hashlib${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_lzma${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_lzma${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_lzma${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_lzma${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_msi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_msi${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_msi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_msi${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_multiprocessing${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_multiprocessing${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_multiprocessing${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_multiprocessing${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_overlapped${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_overlapped${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_overlapped${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_overlapped${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_queue${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_queue${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_queue${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_queue${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_socket${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_socket${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_socket${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_socket${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_sqlite3${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_sqlite3${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_sqlite3${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_sqlite3${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ssl${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ssl${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ssl${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ssl${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testbuffer${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testbuffer${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testbuffer${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testbuffer${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testcapi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testcapi${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testcapi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testcapi${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testimportmultiple${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testimportmultiple${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testimportmultiple${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testimportmultiple${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testmultiphase${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testmultiphase${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testmultiphase${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testmultiphase${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/pyexpat${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/pyexpat${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/pyexpat${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/pyexpat${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/select${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/select${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/select${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/select${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/unicodedata${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/unicodedata${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/unicodedata${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/unicodedata${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/winsound${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/winsound${PYTHON_POSTFIX}.pyd
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/winsound${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/winsound${PYTHON_POSTFIX}.pyd
|
||||||
#xxlimited is an example extension module, we don't need to ship it and debug doesn't build it
|
#xxlimited is an example extension module, we don't need to ship it and debug doesn't build it
|
||||||
#leaving it commented out, so I won't get confused again with the next update.
|
#leaving it commented out, so I won't get confused again with the next update.
|
||||||
#COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/xxlimited${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/xxlimited${PYTHON_POSTFIX}.pyd
|
#COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/xxlimited${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/xxlimited${PYTHON_POSTFIX}.pyd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libssl-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libssl-1_1${SSL_POSTFIX}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libssl-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libssl-1_1${SSL_POSTFIX}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libcrypto-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libcrypto-1_1${SSL_POSTFIX}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libcrypto-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libcrypto-1_1${SSL_POSTFIX}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/sqlite3${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/sqlite3${PYTHON_POSTFIX}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/sqlite3${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/sqlite3${PYTHON_POSTFIX}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/python/src/external_python/redist" ${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz" "."
|
COMMAND ${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/python/src/external_python/redist" ${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz" "."
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
|
||||||
)
|
)
|
||||||
|
|
||||||
add_custom_target(Package_Python ALL DEPENDS external_python ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe)
|
add_custom_target(Package_Python ALL DEPENDS external_python ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe)
|
||||||
|
|
||||||
add_custom_command(OUTPUT ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
|
add_custom_command(OUTPUT ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/redist ${BUILD_DIR}/python/src/external_python/run
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/redist ${BUILD_DIR}/python/src/external_python/run
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/run/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/run/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${BUILD_DIR}/python/src/external_python/run/include/pyconfig.h
|
COMMAND ${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${BUILD_DIR}/python/src/external_python/run/include/pyconfig.h
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib #missing postfix on purpose, distutils is not expecting it
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib #missing postfix on purpose, distutils is not expecting it
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib #other things like numpy still want it though.
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib #other things like numpy still want it though.
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
|
COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
|
||||||
COMMAND ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe -m ensurepip --upgrade
|
COMMAND ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe -m ensurepip --upgrade
|
||||||
)
|
)
|
||||||
add_custom_target(Make_Python_Environment ALL DEPENDS ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe Package_Python)
|
add_custom_target(Make_Python_Environment ALL DEPENDS ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe Package_Python)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_python
|
external_python
|
||||||
external_bzip2
|
external_bzip2
|
||||||
external_ffi
|
external_ffi
|
||||||
external_lzma
|
external_lzma
|
||||||
external_ssl
|
external_ssl
|
||||||
external_sqlite
|
external_sqlite
|
||||||
external_zlib
|
external_zlib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -16,26 +16,26 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(HARVEST_CMD cmd /C FOR /d /r ${BUILD_DIR}/python/src/external_python/run/lib/site-packages %d IN (__pycache__) DO @IF EXIST "%d" rd /s /q "%d" &&
|
set(HARVEST_CMD cmd /C FOR /d /r ${BUILD_DIR}/python/src/external_python/run/lib/site-packages %d IN (__pycache__) DO @IF EXIST "%d" rd /s /q "%d" &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/idna ${HARVEST_TARGET}/Release/site-packages/idna &&
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/idna ${HARVEST_TARGET}/Release/site-packages/idna &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/chardet ${HARVEST_TARGET}/Release/site-packages/chardet &&
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/chardet ${HARVEST_TARGET}/Release/site-packages/chardet &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/urllib3 ${HARVEST_TARGET}/Release/site-packages/urllib3 &&
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/urllib3 ${HARVEST_TARGET}/Release/site-packages/urllib3 &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/certifi ${HARVEST_TARGET}/Release/site-packages/certifi &&
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/certifi ${HARVEST_TARGET}/Release/site-packages/certifi &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/requests ${HARVEST_TARGET}/Release/site-packages/requests
|
${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/requests ${HARVEST_TARGET}/Release/site-packages/requests
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(HARVEST_CMD echo .)
|
set(HARVEST_CMD echo .)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_python_site_packages
|
ExternalProject_Add(external_python_site_packages
|
||||||
DOWNLOAD_COMMAND ""
|
DOWNLOAD_COMMAND ""
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
BUILD_COMMAND ""
|
BUILD_COMMAND ""
|
||||||
PREFIX ${BUILD_DIR}/site_packages
|
PREFIX ${BUILD_DIR}/site_packages
|
||||||
INSTALL_COMMAND ${PYTHON_BINARY} -m pip install idna==${IDNA_VERSION} chardet==${CHARDET_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} --no-binary :all: && ${HARVEST_CMD}
|
INSTALL_COMMAND ${PYTHON_BINARY} -m pip install idna==${IDNA_VERSION} chardet==${CHARDET_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} --no-binary :all: && ${HARVEST_CMD}
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_python_site_packages
|
external_python_site_packages
|
||||||
Make_Python_Environment
|
Make_Python_Environment
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,33 +17,33 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(SDL_EXTRA_ARGS
|
set(SDL_EXTRA_ARGS
|
||||||
-DSDL_STATIC=Off
|
-DSDL_STATIC=Off
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(SDL_EXTRA_ARGS
|
set(SDL_EXTRA_ARGS
|
||||||
-DSDL_STATIC=ON
|
-DSDL_STATIC=ON
|
||||||
-DSDL_SHARED=OFF
|
-DSDL_SHARED=OFF
|
||||||
-DSDL_VIDEO=OFF
|
-DSDL_VIDEO=OFF
|
||||||
-DSNDIO=OFF
|
-DSNDIO=OFF
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_sdl
|
ExternalProject_Add(external_sdl
|
||||||
URL ${SDL_URI}
|
URL ${SDL_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${SDL_HASH}
|
URL_HASH MD5=${SDL_HASH}
|
||||||
PREFIX ${BUILD_DIR}/sdl
|
PREFIX ${BUILD_DIR}/sdl
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/sdl/src/external_sdl < ${PATCH_DIR}/sdl.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/sdl/src/external_sdl < ${PATCH_DIR}/sdl.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/sdl ${DEFAULT_CMAKE_FLAGS} ${SDL_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/sdl ${DEFAULT_CMAKE_FLAGS} ${SDL_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/sdl
|
INSTALL_DIR ${LIBDIR}/sdl
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release AND WIN32)
|
if(BUILD_MODE STREQUAL Release AND WIN32)
|
||||||
ExternalProject_Add_Step(external_sdl after_install
|
ExternalProject_Add_Step(external_sdl after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/include/sdl2 ${HARVEST_TARGET}/sdl/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/include/sdl2 ${HARVEST_TARGET}/sdl/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/lib ${HARVEST_TARGET}/sdl/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/lib ${HARVEST_TARGET}/sdl/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/bin ${HARVEST_TARGET}/sdl/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/bin ${HARVEST_TARGET}/sdl/lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -24,11 +24,11 @@
|
|||||||
|
|
||||||
message("LIBDIR = ${LIBDIR}")
|
message("LIBDIR = ${LIBDIR}")
|
||||||
macro(cmake_to_msys_path MsysPath ResultingPath)
|
macro(cmake_to_msys_path MsysPath ResultingPath)
|
||||||
string(REPLACE ":" "" TmpPath "${MsysPath}")
|
string(REPLACE ":" "" TmpPath "${MsysPath}")
|
||||||
string(SUBSTRING ${TmpPath} 0 1 Drive)
|
string(SUBSTRING ${TmpPath} 0 1 Drive)
|
||||||
string(SUBSTRING ${TmpPath} 1 255 PathPart)
|
string(SUBSTRING ${TmpPath} 1 255 PathPart)
|
||||||
string(TOLOWER ${Drive} LowerDrive)
|
string(TOLOWER ${Drive} LowerDrive)
|
||||||
string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
|
string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
|
||||||
endmacro()
|
endmacro()
|
||||||
cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
|
cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
|
||||||
message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
||||||
@@ -36,192 +36,192 @@ message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
|||||||
message("Checking for mingw32")
|
message("Checking for mingw32")
|
||||||
# download mingw32
|
# download mingw32
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
|
||||||
message("Downloading mingw32")
|
message("Downloading mingw32")
|
||||||
file(DOWNLOAD "https://astuteinternet.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.4/threads-win32/sjlj/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
|
file(DOWNLOAD "https://astuteinternet.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.4/threads-win32/sjlj/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# make mingw root directory
|
# make mingw root directory
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract mingw32
|
# extract mingw32
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z"))
|
||||||
message("Extracting mingw32")
|
message("Extracting mingw32")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for pkg-config")
|
message("Checking for pkg-config")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
||||||
message("Downloading pkg-config")
|
message("Downloading pkg-config")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract pkgconfig
|
# extract pkgconfig
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
|
||||||
message("Extracting pkg-config")
|
message("Extracting pkg-config")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe"
|
||||||
)
|
)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for nasm")
|
message("Checking for nasm")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
|
||||||
message("Downloading nasm")
|
message("Downloading nasm")
|
||||||
file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win32/nasm-2.13.02-win32.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
|
file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win32/nasm-2.13.02-win32.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract nasm
|
# extract nasm
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"))
|
||||||
message("Extracting nasm")
|
message("Extracting nasm")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
)
|
)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe"
|
||||||
)
|
)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe)
|
SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe)
|
||||||
message("Checking for mingwGet")
|
message("Checking for mingwGet")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
||||||
message("Downloading mingw-get")
|
message("Downloading mingw-get")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract mingw_get
|
# extract mingw_get
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
|
||||||
message("Extracting mingw-get")
|
message("Extracting mingw-get")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/make.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/make.exe"))
|
||||||
message("Installing MSYS")
|
message("Installing MSYS")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-patch
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-patch
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/mktemp.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/mktemp.exe"))
|
||||||
message("Installing mktemp")
|
message("Installing mktemp")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-mktemp
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-mktemp
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
message("Checking for CoreUtils")
|
message("Checking for CoreUtils")
|
||||||
# download old core_utils for pr.exe (ffmpeg needs it to build)
|
# download old core_utils for pr.exe (ffmpeg needs it to build)
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
||||||
message("Downloading CoreUtils 5.97")
|
message("Downloading CoreUtils 5.97")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"))
|
||||||
message("Installing pr from CoreUtils 5.97")
|
message("Installing pr from CoreUtils 5.97")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd")
|
||||||
message("Installing ming32sh.cmd")
|
message("Installing ming32sh.cmd")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming32sh.cmd ${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd
|
COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming32sh.cmd ${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for perl")
|
message("Checking for perl")
|
||||||
# download perl for libvpx
|
# download perl for libvpx
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
|
||||||
message("Downloading perl")
|
message("Downloading perl")
|
||||||
file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-32bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
|
file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-32bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# make perl root directory
|
# make perl root directory
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/perl32")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/perl32")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl32
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl32
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract perl
|
# extract perl
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/perl32/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/perl32/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip"))
|
||||||
message("Extracting perl")
|
message("Extracting perl")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl32
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl32
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# get yasm for vpx
|
# get yasm for vpx
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
|
||||||
message("Downloading yasm")
|
message("Downloading yasm")
|
||||||
file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
|
file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking i686-w64-mingw32-strings")
|
message("checking i686-w64-mingw32-strings")
|
||||||
# copy strings.exe to i686-w64-mingw32-strings for x264
|
# copy strings.exe to i686-w64-mingw32-strings for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe")
|
||||||
message("fixing i686-w64-mingw32-strings.exe")
|
message("fixing i686-w64-mingw32-strings.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking i686-w64-mingw32-ar.exe")
|
message("checking i686-w64-mingw32-ar.exe")
|
||||||
# copy ar.exe to i686-w64-mingw32-ar.exe for x264
|
# copy ar.exe to i686-w64-mingw32-ar.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe")
|
||||||
message("fixing i686-w64-mingw32-ar.exe")
|
message("fixing i686-w64-mingw32-ar.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking i686-w64-mingw32-strip.exe")
|
message("checking i686-w64-mingw32-strip.exe")
|
||||||
# copy strip.exe to i686-w64-mingw32-strip.exe for x264
|
# copy strip.exe to i686-w64-mingw32-strip.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe")
|
||||||
message("fixing i686-w64-mingw32-strip.exe")
|
message("fixing i686-w64-mingw32-strip.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking i686-w64-mingw32-ranlib.exe")
|
message("checking i686-w64-mingw32-ranlib.exe")
|
||||||
# copy ranlib.exe to i686-w64-mingw32-ranlib.exe for x264
|
# copy ranlib.exe to i686-w64-mingw32-ranlib.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe")
|
||||||
message("fixing i686-w64-mingw32-ranlib.exe")
|
message("fixing i686-w64-mingw32-ranlib.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -24,11 +24,11 @@
|
|||||||
|
|
||||||
message("LIBDIR = ${LIBDIR}")
|
message("LIBDIR = ${LIBDIR}")
|
||||||
macro(cmake_to_msys_path MsysPath ResultingPath)
|
macro(cmake_to_msys_path MsysPath ResultingPath)
|
||||||
string(REPLACE ":" "" TmpPath "${MsysPath}")
|
string(REPLACE ":" "" TmpPath "${MsysPath}")
|
||||||
string(SUBSTRING ${TmpPath} 0 1 Drive)
|
string(SUBSTRING ${TmpPath} 0 1 Drive)
|
||||||
string(SUBSTRING ${TmpPath} 1 255 PathPart)
|
string(SUBSTRING ${TmpPath} 1 255 PathPart)
|
||||||
string(TOLOWER ${Drive} LowerDrive)
|
string(TOLOWER ${Drive} LowerDrive)
|
||||||
string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
|
string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
|
||||||
endmacro()
|
endmacro()
|
||||||
cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
|
cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
|
||||||
message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
||||||
@@ -36,192 +36,192 @@ message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
|||||||
message("Checking for mingw64")
|
message("Checking for mingw64")
|
||||||
# download ming64
|
# download ming64
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
|
||||||
message("Downloading mingw64")
|
message("Downloading mingw64")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.4/threads-win32/seh/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.4/threads-win32/seh/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# make mingw root directory
|
# make mingw root directory
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract mingw64
|
# extract mingw64
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z"))
|
||||||
message("Extracting mingw64")
|
message("Extracting mingw64")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for pkg-config")
|
message("Checking for pkg-config")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
||||||
message("Downloading pkg-config")
|
message("Downloading pkg-config")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract pkgconfig
|
# extract pkgconfig
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
|
||||||
message("Extracting pkg-config")
|
message("Extracting pkg-config")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe"
|
||||||
)
|
)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for nasm")
|
message("Checking for nasm")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
|
||||||
message("Downloading nasm")
|
message("Downloading nasm")
|
||||||
file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win64/nasm-2.13.02-win64.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
|
file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win64/nasm-2.13.02-win64.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract nasm
|
# extract nasm
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"))
|
||||||
message("Extracting nasm")
|
message("Extracting nasm")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
)
|
)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe"
|
||||||
)
|
)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe)
|
SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe)
|
||||||
|
|
||||||
message("Checking for mingwGet")
|
message("Checking for mingwGet")
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
||||||
message("Downloading mingw-get")
|
message("Downloading mingw-get")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract mingw_get
|
# extract mingw_get
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
|
||||||
message("Extracting mingw-get")
|
message("Extracting mingw-get")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/make.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/make.exe"))
|
||||||
message("Installing MSYS")
|
message("Installing MSYS")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-patch
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-patch
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/bin/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/bin/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/mktemp.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/mktemp.exe"))
|
||||||
message("Installing mktemp")
|
message("Installing mktemp")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-mktemp
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-mktemp
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/bin/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/bin/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for CoreUtils")
|
message("Checking for CoreUtils")
|
||||||
# download old core_utils for pr.exe (ffmpeg needs it to build)
|
# download old core_utils for pr.exe (ffmpeg needs it to build)
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
||||||
message("Downloading CoreUtils 5.97")
|
message("Downloading CoreUtils 5.97")
|
||||||
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"))
|
if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"))
|
||||||
message("Installing pr from CoreUtils 5.97")
|
message("Installing pr from CoreUtils 5.97")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd")
|
||||||
message("Installing ming64sh.cmd")
|
message("Installing ming64sh.cmd")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming64sh.cmd ${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd
|
COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming64sh.cmd ${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("Checking for perl")
|
message("Checking for perl")
|
||||||
# download perl for libvpx
|
# download perl for libvpx
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
|
||||||
message("Downloading perl")
|
message("Downloading perl")
|
||||||
file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-64bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
|
file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-64bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# make perl root directory
|
# make perl root directory
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/perl")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/perl")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# extract perl
|
# extract perl
|
||||||
if((NOT EXISTS "${DOWNLOAD_DIR}/perl/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip"))
|
if((NOT EXISTS "${DOWNLOAD_DIR}/perl/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip"))
|
||||||
message("Extracting perl")
|
message("Extracting perl")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# get yasm for vpx
|
# get yasm for vpx
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
|
||||||
message("Downloading yasm")
|
message("Downloading yasm")
|
||||||
file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
|
file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking x86_64-w64-mingw32-strings.exe")
|
message("checking x86_64-w64-mingw32-strings.exe")
|
||||||
# copy strings.exe to x86_64-w64-mingw32-strings.exe for x264
|
# copy strings.exe to x86_64-w64-mingw32-strings.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe")
|
||||||
message("fixing x86_64-w64-mingw32-strings.exe")
|
message("fixing x86_64-w64-mingw32-strings.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking x86_64-w64-mingw32-ar.exe")
|
message("checking x86_64-w64-mingw32-ar.exe")
|
||||||
# copy ar.exe to x86_64-w64-mingw32-ar.exe for x264
|
# copy ar.exe to x86_64-w64-mingw32-ar.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe")
|
||||||
message("fixing x86_64-w64-mingw32-ar.exe")
|
message("fixing x86_64-w64-mingw32-ar.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking x86_64-w64-mingw32-strip.exe")
|
message("checking x86_64-w64-mingw32-strip.exe")
|
||||||
# copy strip.exe to x86_64-w64-mingw32-strip.exe for x264
|
# copy strip.exe to x86_64-w64-mingw32-strip.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe")
|
||||||
message("fixing x86_64-w64-mingw32-strip.exe")
|
message("fixing x86_64-w64-mingw32-strip.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message("checking x86_64-w64-mingw32-ranlib.exe")
|
message("checking x86_64-w64-mingw32-ranlib.exe")
|
||||||
# copy ranlib.exe to x86_64-w64-mingw32-ranlib.exe for x264
|
# copy ranlib.exe to x86_64-w64-mingw32-ranlib.exe for x264
|
||||||
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe")
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe")
|
||||||
message("fixing x86_64-w64-mingw32-ranlib.exe")
|
message("fixing x86_64-w64-mingw32-ranlib.exe")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe"
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -20,43 +20,43 @@ set(SNDFILE_EXTRA_ARGS)
|
|||||||
set(SNDFILE_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/flac/lib/pkgconfig:${mingw_LIBDIR})
|
set(SNDFILE_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/flac/lib/pkgconfig:${mingw_LIBDIR})
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(SNDFILE_ENV set ${SNDFILE_ENV} &&)
|
set(SNDFILE_ENV set ${SNDFILE_ENV} &&)
|
||||||
#shared for windows because static libs will drag in a libgcc dependency.
|
#shared for windows because static libs will drag in a libgcc dependency.
|
||||||
set(SNDFILE_OPTIONS --disable-static --enable-shared )
|
set(SNDFILE_OPTIONS --disable-static --enable-shared )
|
||||||
else()
|
else()
|
||||||
set(SNDFILE_OPTIONS --enable-static --disable-shared )
|
set(SNDFILE_OPTIONS --enable-static --disable-shared )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
set(SNDFILE_PATCH_CMD ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/sndfile/src/external_sndfile < ${PATCH_DIR}/sndfile.diff)
|
set(SNDFILE_PATCH_CMD ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/sndfile/src/external_sndfile < ${PATCH_DIR}/sndfile.diff)
|
||||||
else()
|
else()
|
||||||
set(SNDFILE_PATCH_CMD)
|
set(SNDFILE_PATCH_CMD)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_sndfile
|
ExternalProject_Add(external_sndfile
|
||||||
URL ${SNDFILE_URI}
|
URL ${SNDFILE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${SNDFILE_HASH}
|
URL_HASH MD5=${SNDFILE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/sndfile
|
PREFIX ${BUILD_DIR}/sndfile
|
||||||
PATCH_COMMAND ${SNDFILE_PATCH_CMD}
|
PATCH_COMMAND ${SNDFILE_PATCH_CMD}
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && ${SNDFILE_ENV} ${CONFIGURE_COMMAND} ${SNDFILE_OPTIONS} --prefix=${mingw_LIBDIR}/sndfile
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && ${SNDFILE_ENV} ${CONFIGURE_COMMAND} ${SNDFILE_OPTIONS} --prefix=${mingw_LIBDIR}/sndfile
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/sndfile
|
INSTALL_DIR ${LIBDIR}/sndfile
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_sndfile PROPERTIES FOLDER Mingw)
|
set_target_properties(external_sndfile PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_sndfile
|
external_sndfile
|
||||||
external_ogg
|
external_ogg
|
||||||
external_vorbis
|
external_vorbis
|
||||||
)
|
)
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_sndfile
|
external_sndfile
|
||||||
external_flac
|
external_flac
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,12 +17,12 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_spnav
|
ExternalProject_Add(external_spnav
|
||||||
URL ${SPNAV_URI}
|
URL ${SPNAV_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${SPNAV_HASH}
|
URL_HASH MD5=${SPNAV_HASH}
|
||||||
PREFIX ${BUILD_DIR}/spnav
|
PREFIX ${BUILD_DIR}/spnav
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/spnav --disable-shared --enable-static --with-pic
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/spnav --disable-shared --enable-static --with-pic
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/spnav
|
INSTALL_DIR ${LIBDIR}/spnav
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -20,38 +20,38 @@ set(SQLITE_CONFIGURE_ENV echo .)
|
|||||||
set(SQLITE_CONFIGURATION_ARGS)
|
set(SQLITE_CONFIGURATION_ARGS)
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
set(SQLITE_LDFLAGS -Wl,--as-needed)
|
set(SQLITE_LDFLAGS -Wl,--as-needed)
|
||||||
set(SQLITE_CFLAGS
|
set(SQLITE_CFLAGS
|
||||||
"-DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_COLUMN_METADATA \
|
"-DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_COLUMN_METADATA \
|
||||||
-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS \
|
-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS \
|
||||||
-DSQLITE_ENABLE_RTREE=1 -DSQLITE_SOUNDEX=1 \
|
-DSQLITE_ENABLE_RTREE=1 -DSQLITE_SOUNDEX=1 \
|
||||||
-DSQLITE_ENABLE_UNLOCK_NOTIFY \
|
-DSQLITE_ENABLE_UNLOCK_NOTIFY \
|
||||||
-DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_ENABLE_DBSTAT_VTAB \
|
-DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_ENABLE_DBSTAT_VTAB \
|
||||||
-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \
|
-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \
|
||||||
-DSQLITE_ENABLE_LOAD_EXTENSION \
|
-DSQLITE_ENABLE_LOAD_EXTENSION \
|
||||||
-DSQLITE_ENABLE_JSON1 \
|
-DSQLITE_ENABLE_JSON1 \
|
||||||
-DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
|
-DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
|
||||||
-DSQLITE_THREADSAFE=1 \
|
-DSQLITE_THREADSAFE=1 \
|
||||||
-DSQLITE_ENABLE_FTS3_TOKENIZER=1 \
|
-DSQLITE_ENABLE_FTS3_TOKENIZER=1 \
|
||||||
-DSQLITE_MAX_SCHEMA_RETRY=25 \
|
-DSQLITE_MAX_SCHEMA_RETRY=25 \
|
||||||
-DSQLITE_ENABLE_PREUPDATE_HOOK \
|
-DSQLITE_ENABLE_PREUPDATE_HOOK \
|
||||||
-DSQLITE_ENABLE_SESSION \
|
-DSQLITE_ENABLE_SESSION \
|
||||||
-DSQLITE_ENABLE_STMTVTAB \
|
-DSQLITE_ENABLE_STMTVTAB \
|
||||||
-DSQLITE_MAX_VARIABLE_NUMBER=250000 \
|
-DSQLITE_MAX_VARIABLE_NUMBER=250000 \
|
||||||
-fPIC")
|
-fPIC")
|
||||||
set(SQLITE_CONFIGURE_ENV ${SQLITE_CONFIGURE_ENV} && export LDFLAGS=${SQLITE_LDFLAGS} && export CFLAGS=${SQLITE_CFLAGS})
|
set(SQLITE_CONFIGURE_ENV ${SQLITE_CONFIGURE_ENV} && export LDFLAGS=${SQLITE_LDFLAGS} && export CFLAGS=${SQLITE_CFLAGS})
|
||||||
set(SQLITE_CONFIGURATION_ARGS ${SQLITE_CONFIGURATION_ARGS} --enable-threadsafe --enable-load-extension --enable-json1 --enable-fts4 --enable-fts5
|
set(SQLITE_CONFIGURATION_ARGS ${SQLITE_CONFIGURATION_ARGS} --enable-threadsafe --enable-load-extension --enable-json1 --enable-fts4 --enable-fts5
|
||||||
--enable-shared=no)
|
--enable-shared=no)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_sqlite
|
ExternalProject_Add(external_sqlite
|
||||||
URL ${SQLITE_URI}
|
URL ${SQLITE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA1=${SQLITE_HASH}
|
URL_HASH SHA1=${SQLITE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/sqlite
|
PREFIX ${BUILD_DIR}/sqlite
|
||||||
PATCH_COMMAND ${SQLITE_PATCH_CMD}
|
PATCH_COMMAND ${SQLITE_PATCH_CMD}
|
||||||
CONFIGURE_COMMAND ${SQLITE_CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/sqlite ${SQLITE_CONFIGURATION_ARGS}
|
CONFIGURE_COMMAND ${SQLITE_CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/sqlite ${SQLITE_CONFIGURATION_ARGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/sqlite
|
INSTALL_DIR ${LIBDIR}/sqlite
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -20,29 +20,29 @@ set(SSL_CONFIGURE_COMMAND ./Configure)
|
|||||||
set(SSL_PATCH_CMD echo .)
|
set(SSL_PATCH_CMD echo .)
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
set(SSL_OS_COMPILER "blender-darwin-x86_64")
|
set(SSL_OS_COMPILER "blender-darwin-x86_64")
|
||||||
else()
|
else()
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(SSL_EXTRA_ARGS enable-ec_nistp_64_gcc_128)
|
set(SSL_EXTRA_ARGS enable-ec_nistp_64_gcc_128)
|
||||||
set(SSL_OS_COMPILER "blender-linux-x86_64")
|
set(SSL_OS_COMPILER "blender-linux-x86_64")
|
||||||
else()
|
else()
|
||||||
set(SSL_OS_COMPILER "blender-linux-x86")
|
set(SSL_OS_COMPILER "blender-linux-x86")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_ssl
|
ExternalProject_Add(external_ssl
|
||||||
URL ${SSL_URI}
|
URL ${SSL_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${SSL_HASH}
|
URL_HASH SHA256=${SSL_HASH}
|
||||||
PREFIX ${BUILD_DIR}/ssl
|
PREFIX ${BUILD_DIR}/ssl
|
||||||
PATCH_COMMAND ${SSL_PATCH_CMD}
|
PATCH_COMMAND ${SSL_PATCH_CMD}
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && ${SSL_CONFIGURE_COMMAND} --prefix=${LIBDIR}/ssl
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && ${SSL_CONFIGURE_COMMAND} --prefix=${LIBDIR}/ssl
|
||||||
--openssldir=${LIBDIR}/ssl
|
--openssldir=${LIBDIR}/ssl
|
||||||
no-shared
|
no-shared
|
||||||
no-idea no-mdc2 no-rc5 no-zlib no-ssl3 enable-unit-test no-ssl3-method enable-rfc3779 enable-cms
|
no-idea no-mdc2 no-rc5 no-zlib no-ssl3 enable-unit-test no-ssl3-method enable-rfc3779 enable-cms
|
||||||
--config=${CMAKE_CURRENT_SOURCE_DIR}/cmake/ssl.conf
|
--config=${CMAKE_CURRENT_SOURCE_DIR}/cmake/ssl.conf
|
||||||
${SSL_OS_COMPILER}
|
${SSL_OS_COMPILER}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/ssl
|
INSTALL_DIR ${LIBDIR}/ssl
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,36 +17,36 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(TBB_EXTRA_ARGS
|
set(TBB_EXTRA_ARGS
|
||||||
-DTBB_BUILD_SHARED=Off
|
-DTBB_BUILD_SHARED=Off
|
||||||
-DTBB_BUILD_TBBMALLOC=Off
|
-DTBB_BUILD_TBBMALLOC=Off
|
||||||
-DTBB_BUILD_TBBMALLOC_PROXY=Off
|
-DTBB_BUILD_TBBMALLOC_PROXY=Off
|
||||||
-DTBB_BUILD_STATIC=On
|
-DTBB_BUILD_STATIC=On
|
||||||
)
|
)
|
||||||
|
|
||||||
# CMake script for TBB from https://github.com/wjakob/tbb/blob/master/CMakeLists.txt
|
# CMake script for TBB from https://github.com/wjakob/tbb/blob/master/CMakeLists.txt
|
||||||
ExternalProject_Add(external_tbb
|
ExternalProject_Add(external_tbb
|
||||||
URL ${TBB_URI}
|
URL ${TBB_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${TBB_HASH}
|
URL_HASH MD5=${TBB_HASH}
|
||||||
PREFIX ${BUILD_DIR}/tbb
|
PREFIX ${BUILD_DIR}/tbb
|
||||||
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_tbb.txt ${BUILD_DIR}/tbb/src/external_tbb/CMakeLists.txt &&
|
PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_tbb.txt ${BUILD_DIR}/tbb/src/external_tbb/CMakeLists.txt &&
|
||||||
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/tbb/src/external_tbb/build/vs2013/version_string.ver ${BUILD_DIR}/tbb/src/external_tbb/src/tbb/version_string.ver
|
${CMAKE_COMMAND} -E copy ${BUILD_DIR}/tbb/src/external_tbb/build/vs2013/version_string.ver ${BUILD_DIR}/tbb/src/external_tbb/src/tbb/version_string.ver
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tbb ${DEFAULT_CMAKE_FLAGS} ${TBB_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tbb ${DEFAULT_CMAKE_FLAGS} ${TBB_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/tbb
|
INSTALL_DIR ${LIBDIR}/tbb
|
||||||
)
|
)
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_tbb after_install
|
ExternalProject_Add_Step(external_tbb after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tbb/include/ ${HARVEST_TARGET}/tbb/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tbb/include/ ${HARVEST_TARGET}/tbb/include/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_tbb after_install
|
ExternalProject_Add_Step(external_tbb after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,28 +17,28 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_theora
|
ExternalProject_Add(external_theora
|
||||||
URL ${THEORA_URI}
|
URL ${THEORA_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${THEORA_HASH}
|
URL_HASH SHA256=${THEORA_HASH}
|
||||||
PREFIX ${BUILD_DIR}/theora
|
PREFIX ${BUILD_DIR}/theora
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-static
|
--enable-static
|
||||||
--with-pic
|
--with-pic
|
||||||
--with-ogg=${LIBDIR}/ogg
|
--with-ogg=${LIBDIR}/ogg
|
||||||
--with-vorbis=${LIBDIR}/vorbis
|
--with-vorbis=${LIBDIR}/vorbis
|
||||||
--disable-examples
|
--disable-examples
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/theora
|
INSTALL_DIR ${LIBDIR}/theora
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_theora
|
external_theora
|
||||||
external_vorbis
|
external_vorbis
|
||||||
external_ogg
|
external_ogg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_theora PROPERTIES FOLDER Mingw)
|
set_target_properties(external_theora PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,31 +17,31 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(TIFF_EXTRA_ARGS
|
set(TIFF_EXTRA_ARGS
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
||||||
-DPNG_STATIC=ON
|
-DPNG_STATIC=ON
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
-Dlzma=OFF
|
-Dlzma=OFF
|
||||||
-Djbig=OFF
|
-Djbig=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_tiff
|
ExternalProject_Add(external_tiff
|
||||||
URL ${TIFF_URI}
|
URL ${TIFF_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${TIFF_HASH}
|
URL_HASH MD5=${TIFF_HASH}
|
||||||
PREFIX ${BUILD_DIR}/tiff
|
PREFIX ${BUILD_DIR}/tiff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tiff ${DEFAULT_CMAKE_FLAGS} ${TIFF_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tiff ${DEFAULT_CMAKE_FLAGS} ${TIFF_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/tiff
|
INSTALL_DIR ${LIBDIR}/tiff
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_tiff
|
external_tiff
|
||||||
external_zlib
|
external_zlib
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32 AND BUILD_MODE STREQUAL Debug)
|
if(WIN32 AND BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_tiff after_install
|
ExternalProject_Add_Step(external_tiff after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiffd${LIBEXT} ${LIBDIR}/tiff/lib/tiff${LIBEXT}
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiffd${LIBEXT} ${LIBDIR}/tiff/lib/tiff${LIBEXT}
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -20,12 +20,12 @@ set(TINYXML_EXTRA_ARGS
|
|||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_tinyxml
|
ExternalProject_Add(external_tinyxml
|
||||||
URL ${TINYXML_URI}
|
URL ${TINYXML_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${TINYXML_HASH}
|
URL_HASH MD5=${TINYXML_HASH}
|
||||||
PREFIX ${BUILD_DIR}/tinyxml
|
PREFIX ${BUILD_DIR}/tinyxml
|
||||||
#patch taken from ocio
|
#patch taken from ocio
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/tinyxml/src/external_tinyxml < ${PATCH_DIR}/tinyxml.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/tinyxml/src/external_tinyxml < ${PATCH_DIR}/tinyxml.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tinyxml ${DEFAULT_CMAKE_FLAGS} ${TINYXML_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tinyxml ${DEFAULT_CMAKE_FLAGS} ${TINYXML_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/tinyxml
|
INSTALL_DIR ${LIBDIR}/tinyxml
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -47,27 +47,27 @@ set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653)
|
|||||||
|
|
||||||
set(ILMBASE_VERSION 2.3.0)
|
set(ILMBASE_VERSION 2.3.0)
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(ILMBASE_VERSION_POSTFIX _s)
|
set(ILMBASE_VERSION_POSTFIX _s)
|
||||||
set(OPENEXR_VERSION_POSTFIX _s)
|
set(OPENEXR_VERSION_POSTFIX _s)
|
||||||
else()
|
else()
|
||||||
set(ILMBASE_VERSION_POSTFIX _s_d)
|
set(ILMBASE_VERSION_POSTFIX _s_d)
|
||||||
set(OPENEXR_VERSION_POSTFIX _s_d)
|
set(OPENEXR_VERSION_POSTFIX _s_d)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(ILMBASE_VERSION_POSTFIX)
|
set(ILMBASE_VERSION_POSTFIX)
|
||||||
endif()
|
endif()
|
||||||
set(ILMBASE_URI https://github.com/openexr/openexr/releases/download/v${ILMBASE_VERSION}/ilmbase-${ILMBASE_VERSION}.tar.gz)
|
set(ILMBASE_URI https://github.com/openexr/openexr/releases/download/v${ILMBASE_VERSION}/ilmbase-${ILMBASE_VERSION}.tar.gz)
|
||||||
set(ILMBASE_HASH 354bf86de3b930ab87ac63619d60c860)
|
set(ILMBASE_HASH 354bf86de3b930ab87ac63619d60c860)
|
||||||
|
|
||||||
set(OPENEXR_VERSION 2.3.0)
|
set(OPENEXR_VERSION 2.3.0)
|
||||||
if (WIN32) #release 2.3.0 tarball has broken cmake support
|
if (WIN32) #release 2.3.0 tarball has broken cmake support
|
||||||
set(OPENEXR_URI https://github.com/openexr/openexr/archive/0ac2ea34c8f3134148a5df4052e40f155b76f6fb.tar.gz)
|
set(OPENEXR_URI https://github.com/openexr/openexr/archive/0ac2ea34c8f3134148a5df4052e40f155b76f6fb.tar.gz)
|
||||||
set(OPENEXR_HASH ed159435d508240712fbaaa21d94bafb)
|
set(OPENEXR_HASH ed159435d508240712fbaaa21d94bafb)
|
||||||
else()
|
else()
|
||||||
set(OPENEXR_VERSION_POSTFIX)
|
set(OPENEXR_VERSION_POSTFIX)
|
||||||
set(OPENEXR_URI https://github.com/openexr/openexr/releases/download/v${OPENEXR_VERSION}/openexr-${OPENEXR_VERSION}.tar.gz)
|
set(OPENEXR_URI https://github.com/openexr/openexr/releases/download/v${OPENEXR_VERSION}/openexr-${OPENEXR_VERSION}.tar.gz)
|
||||||
set(OPENEXR_HASH a157e8a46596bc185f2472a5a4682174)
|
set(OPENEXR_HASH a157e8a46596bc185f2472a5a4682174)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(FREETYPE_VERSION 2.9.1)
|
set(FREETYPE_VERSION 2.9.1)
|
||||||
|
|||||||
@@ -17,25 +17,25 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_vorbis
|
ExternalProject_Add(external_vorbis
|
||||||
URL ${VORBIS_URI}
|
URL ${VORBIS_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${VORBIS_HASH}
|
URL_HASH SHA256=${VORBIS_HASH}
|
||||||
PREFIX ${BUILD_DIR}/vorbis
|
PREFIX ${BUILD_DIR}/vorbis
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/vorbis
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/vorbis
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-static
|
--enable-static
|
||||||
--with-pic
|
--with-pic
|
||||||
--with-ogg=${LIBDIR}/ogg
|
--with-ogg=${LIBDIR}/ogg
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/vorbis
|
INSTALL_DIR ${LIBDIR}/vorbis
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_vorbis
|
external_vorbis
|
||||||
external_ogg
|
external_ogg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_vorbis PROPERTIES FOLDER Mingw)
|
set_target_properties(external_vorbis PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,44 +17,44 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(VPX_EXTRA_FLAGS --target=x86_64-win64-gcc --disable-multithread)
|
set(VPX_EXTRA_FLAGS --target=x86_64-win64-gcc --disable-multithread)
|
||||||
else()
|
else()
|
||||||
set(VPX_EXTRA_FLAGS --target=x86-win32-gcc --disable-multithread)
|
set(VPX_EXTRA_FLAGS --target=x86-win32-gcc --disable-multithread)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(VPX_EXTRA_FLAGS --target=x86_64-darwin13-gcc)
|
set(VPX_EXTRA_FLAGS --target=x86_64-darwin13-gcc)
|
||||||
else()
|
else()
|
||||||
set(VPX_EXTRA_FLAGS --target=generic-gnu)
|
set(VPX_EXTRA_FLAGS --target=generic-gnu)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_vpx
|
ExternalProject_Add(external_vpx
|
||||||
URL ${VPX_URI}
|
URL ${VPX_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${VPX_HASH}
|
URL_HASH SHA256=${VPX_HASH}
|
||||||
PREFIX ${BUILD_DIR}/vpx
|
PREFIX ${BUILD_DIR}/vpx
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
|
||||||
cd ${BUILD_DIR}/vpx/src/external_vpx/ &&
|
cd ${BUILD_DIR}/vpx/src/external_vpx/ &&
|
||||||
${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/vpx
|
${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/vpx
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-static
|
--enable-static
|
||||||
--disable-install-bins
|
--disable-install-bins
|
||||||
--disable-install-srcs
|
--disable-install-srcs
|
||||||
--disable-sse4_1
|
--disable-sse4_1
|
||||||
--disable-sse3
|
--disable-sse3
|
||||||
--disable-ssse3
|
--disable-ssse3
|
||||||
--disable-avx
|
--disable-avx
|
||||||
--disable-avx2
|
--disable-avx2
|
||||||
--disable-unit-tests
|
--disable-unit-tests
|
||||||
--disable-examples
|
--disable-examples
|
||||||
${VPX_EXTRA_FLAGS}
|
${VPX_EXTRA_FLAGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/vpx
|
INSTALL_DIR ${LIBDIR}/vpx
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_vpx PROPERTIES FOLDER Mingw)
|
set_target_properties(external_vpx PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -20,22 +20,22 @@
|
|||||||
# library itself does not depend on them, so should give no problems.
|
# library itself does not depend on them, so should give no problems.
|
||||||
|
|
||||||
set(WEBP_EXTRA_ARGS
|
set(WEBP_EXTRA_ARGS
|
||||||
-DWEBP_HAVE_SSE2=ON
|
-DWEBP_HAVE_SSE2=ON
|
||||||
-DWEBP_HAVE_SSE41=OFF
|
-DWEBP_HAVE_SSE41=OFF
|
||||||
-DWEBP_HAVE_AVX2=OFF
|
-DWEBP_HAVE_AVX2=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(WEBP_BUILD_DIR ${BUILD_MODE}/)
|
set(WEBP_BUILD_DIR ${BUILD_MODE}/)
|
||||||
else()
|
else()
|
||||||
set(WEBP_BUILD_DIR)
|
set(WEBP_BUILD_DIR)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_webp
|
ExternalProject_Add(external_webp
|
||||||
URL ${WEBP_URI}
|
URL ${WEBP_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${WEBP_HASH}
|
URL_HASH MD5=${WEBP_HASH}
|
||||||
PREFIX ${BUILD_DIR}/webp
|
PREFIX ${BUILD_DIR}/webp
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/webp -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${WEBP_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/webp -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${WEBP_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/webp
|
INSTALL_DIR ${LIBDIR}/webp
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,29 +17,29 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(X264_EXTRA_ARGS --enable-win32thread --cross-prefix=${MINGW_HOST}- --host=${MINGW_HOST})
|
set(X264_EXTRA_ARGS --enable-win32thread --cross-prefix=${MINGW_HOST}- --host=${MINGW_HOST})
|
||||||
set(X264_PATCH_CMD ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/x264/src/external_x264 < ${PATCH_DIR}/x264.diff)
|
set(X264_PATCH_CMD ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/x264/src/external_x264 < ${PATCH_DIR}/x264.diff)
|
||||||
else()
|
else()
|
||||||
set(X264_PATCH_CMD echo .)
|
set(X264_PATCH_CMD echo .)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
ExternalProject_Add(external_x264
|
ExternalProject_Add(external_x264
|
||||||
URL ${X264_URI}
|
URL ${X264_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${X264_HASH}
|
URL_HASH SHA256=${X264_HASH}
|
||||||
PREFIX ${BUILD_DIR}/x264
|
PREFIX ${BUILD_DIR}/x264
|
||||||
PATCH_COMMAND ${X264_PATCH_CMD}
|
PATCH_COMMAND ${X264_PATCH_CMD}
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/x264
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/x264
|
||||||
--enable-static
|
--enable-static
|
||||||
--enable-pic
|
--enable-pic
|
||||||
--disable-lavf
|
--disable-lavf
|
||||||
${X264_EXTRA_ARGS}
|
${X264_EXTRA_ARGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/x264
|
INSTALL_DIR ${LIBDIR}/x264
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
|
set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,20 +17,20 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_xml2
|
ExternalProject_Add(external_xml2
|
||||||
URL ${XML2_URI}
|
URL ${XML2_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${XML2_HASH}
|
URL_HASH MD5=${XML2_HASH}
|
||||||
PREFIX ${BUILD_DIR}/xml2
|
PREFIX ${BUILD_DIR}/xml2
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && ${CONFIGURE_COMMAND}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && ${CONFIGURE_COMMAND}
|
||||||
--prefix=${LIBDIR}/xml2
|
--prefix=${LIBDIR}/xml2
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-static
|
--enable-static
|
||||||
--with-pic
|
--with-pic
|
||||||
--with-python=no
|
--with-python=no
|
||||||
--with-lzma=no
|
--with-lzma=no
|
||||||
--with-zlib=no
|
--with-zlib=no
|
||||||
--with-iconv=no
|
--with-iconv=no
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/xml2
|
INSTALL_DIR ${LIBDIR}/xml2
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,28 +17,28 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(XVIDCORE_EXTRA_ARGS --host=${MINGW_HOST})
|
set(XVIDCORE_EXTRA_ARGS --host=${MINGW_HOST})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_xvidcore
|
ExternalProject_Add(external_xvidcore
|
||||||
URL ${XVIDCORE_URI}
|
URL ${XVIDCORE_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${XVIDCORE_HASH}
|
URL_HASH SHA256=${XVIDCORE_HASH}
|
||||||
PREFIX ${BUILD_DIR}/xvidcore
|
PREFIX ${BUILD_DIR}/xvidcore
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/xvidcore ${XVIDCORE_EXTRA_ARGS}
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/xvidcore ${XVIDCORE_EXTRA_ARGS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} &&
|
INSTALL_COMMAND ${CONFIGURE_ENV} &&
|
||||||
${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/* && # clean because re-installing fails otherwise
|
${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/* && # clean because re-installing fails otherwise
|
||||||
cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make install
|
cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make install
|
||||||
INSTALL_DIR ${LIBDIR}/xvidcore
|
INSTALL_DIR ${LIBDIR}/xvidcore
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add_Step(external_xvidcore after_install
|
ExternalProject_Add_Step(external_xvidcore after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E rename ${LIBDIR}/xvidcore/lib/xvidcore.a ${LIBDIR}/xvidcore/lib/libxvidcore.a || true
|
COMMAND ${CMAKE_COMMAND} -E rename ${LIBDIR}/xvidcore/lib/xvidcore.a ${LIBDIR}/xvidcore/lib/libxvidcore.a || true
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/xvidcore.dll.a
|
COMMAND ${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/xvidcore.dll.a
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_xvidcore PROPERTIES FOLDER Mingw)
|
set_target_properties(external_xvidcore PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,18 +17,18 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(YAMLCPP_EXTRA_ARGS
|
set(YAMLCPP_EXTRA_ARGS
|
||||||
-DBUILD_GMOCK=OFF
|
-DBUILD_GMOCK=OFF
|
||||||
-DYAML_CPP_BUILD_TESTS=OFF
|
-DYAML_CPP_BUILD_TESTS=OFF
|
||||||
-DYAML_CPP_BUILD_TOOLS=OFF
|
-DYAML_CPP_BUILD_TOOLS=OFF
|
||||||
-DYAML_CPP_BUILD_CONTRIB=OFF
|
-DYAML_CPP_BUILD_CONTRIB=OFF
|
||||||
-DMSVC_SHARED_RT=OFF
|
-DMSVC_SHARED_RT=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_yamlcpp
|
ExternalProject_Add(external_yamlcpp
|
||||||
URL ${YAMLCPP_URI}
|
URL ${YAMLCPP_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${YAMLCPP_HASH}
|
URL_HASH MD5=${YAMLCPP_HASH}
|
||||||
PREFIX ${BUILD_DIR}/yamlcpp
|
PREFIX ${BUILD_DIR}/yamlcpp
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/yamlcpp ${DEFAULT_CMAKE_FLAGS} ${YAMLCPP_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/yamlcpp ${DEFAULT_CMAKE_FLAGS} ${YAMLCPP_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/yamlcpp
|
INSTALL_DIR ${LIBDIR}/yamlcpp
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -17,31 +17,31 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_zlib
|
ExternalProject_Add(external_zlib
|
||||||
URL ${ZLIB_URI}
|
URL ${ZLIB_URI}
|
||||||
URL_HASH MD5=${ZLIB_HASH}
|
URL_HASH MD5=${ZLIB_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/zlib
|
PREFIX ${BUILD_DIR}/zlib
|
||||||
CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib ${DEFAULT_CMAKE_FLAGS}
|
CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib ${DEFAULT_CMAKE_FLAGS}
|
||||||
INSTALL_DIR ${LIBDIR}/zlib
|
INSTALL_DIR ${LIBDIR}/zlib
|
||||||
)
|
)
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_zlib after_install
|
ExternalProject_Add_Step(external_zlib after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstatic${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstatic${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/zlib/include/ ${HARVEST_TARGET}/zlib/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/zlib/include/ ${HARVEST_TARGET}/zlib/include/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_zlib after_install
|
ExternalProject_Add_Step(external_zlib after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
ExternalProject_Add_Step(external_zlib after_install
|
ExternalProject_Add_Step(external_zlib after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/libz.a ${LIBDIR}/zlib/lib/libz_pic.a
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/libz.a ${LIBDIR}/zlib/lib/libz_pic.a
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -17,23 +17,23 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_zlib_mingw
|
ExternalProject_Add(external_zlib_mingw
|
||||||
URL ${ZLIB_URI}
|
URL ${ZLIB_URI}
|
||||||
URL_HASH MD5=${ZLIB_HASH}
|
URL_HASH MD5=${ZLIB_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/zlib_mingw
|
PREFIX ${BUILD_DIR}/zlib_mingw
|
||||||
CONFIGURE_COMMAND echo .
|
CONFIGURE_COMMAND echo .
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/ && make -f win32/makefile.gcc -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/ && make -f win32/makefile.gcc -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND echo .
|
INSTALL_COMMAND echo .
|
||||||
INSTALL_DIR ${LIBDIR}/zlib_mingw
|
INSTALL_DIR ${LIBDIR}/zlib_mingw
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_zlib_mingw after_install
|
ExternalProject_Add_Step(external_zlib_mingw after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/libz.a ${LIBDIR}/zlib/lib/z.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/libz.a ${LIBDIR}/zlib/lib/z.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_zlib_mingw PROPERTIES FOLDER Mingw)
|
set_target_properties(external_zlib_mingw PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -6,29 +6,29 @@ include("${CMAKE_CURRENT_LIST_DIR}/../../cmake/config/blender_release.cmake")
|
|||||||
# Some of the paths will depend on this
|
# Some of the paths will depend on this
|
||||||
|
|
||||||
if(EXISTS "/lib/x86_64-linux-gnu/libc-2.24.so")
|
if(EXISTS "/lib/x86_64-linux-gnu/libc-2.24.so")
|
||||||
message(STATUS "Building in GLibc-2.24 environment")
|
message(STATUS "Building in GLibc-2.24 environment")
|
||||||
set(GLIBC "2.24")
|
set(GLIBC "2.24")
|
||||||
set(MULTILIB "/x86_64-linux-gnu")
|
set(MULTILIB "/x86_64-linux-gnu")
|
||||||
set(LIBDIR_NAME "linux_x86_64")
|
set(LIBDIR_NAME "linux_x86_64")
|
||||||
elseif(EXISTS "/lib/i386-linux-gnu//libc-2.24.so")
|
elseif(EXISTS "/lib/i386-linux-gnu//libc-2.24.so")
|
||||||
message(STATUS "Building in GLibc-2.24 environment")
|
message(STATUS "Building in GLibc-2.24 environment")
|
||||||
set(GLIBC "2.24")
|
set(GLIBC "2.24")
|
||||||
set(MULTILIB "/i386-linux-gnu")
|
set(MULTILIB "/i386-linux-gnu")
|
||||||
set(LIBDIR_NAME "linux_i686")
|
set(LIBDIR_NAME "linux_i686")
|
||||||
elseif(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so")
|
elseif(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so")
|
||||||
message(STATUS "Building in GLibc-2.19 environment")
|
message(STATUS "Building in GLibc-2.19 environment")
|
||||||
set(GLIBC "2.19")
|
set(GLIBC "2.19")
|
||||||
set(MULTILIB "/x86_64-linux-gnu")
|
set(MULTILIB "/x86_64-linux-gnu")
|
||||||
elseif(EXISTS "/lib/i386-linux-gnu//libc-2.19.so")
|
elseif(EXISTS "/lib/i386-linux-gnu//libc-2.19.so")
|
||||||
message(STATUS "Building in GLibc-2.19 environment")
|
message(STATUS "Building in GLibc-2.19 environment")
|
||||||
set(GLIBC "2.19")
|
set(GLIBC "2.19")
|
||||||
set(MULTILIB "/i386-linux-gnu")
|
set(MULTILIB "/i386-linux-gnu")
|
||||||
elseif(EXISTS "/lib/libc-2.11.3.so")
|
elseif(EXISTS "/lib/libc-2.11.3.so")
|
||||||
message(STATUS "Building in GLibc-2.11 environment")
|
message(STATUS "Building in GLibc-2.11 environment")
|
||||||
set(GLIBC "2.11")
|
set(GLIBC "2.11")
|
||||||
set(MULTILIB "")
|
set(MULTILIB "")
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Unknown build environment")
|
message(FATAL_ERROR "Unknown build environment")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Default to only build Blender
|
# Default to only build Blender
|
||||||
@@ -67,18 +67,18 @@ set(Boost_USE_STATIC_LIBS ON CACHE BOOL "" FORCE)
|
|||||||
# FFmpeg libraries
|
# FFmpeg libraries
|
||||||
set(FFMPEG "/opt/lib/ffmpeg" CACHE STRING "" FORCE)
|
set(FFMPEG "/opt/lib/ffmpeg" CACHE STRING "" FORCE)
|
||||||
set(FFMPEG_LIBRARIES
|
set(FFMPEG_LIBRARIES
|
||||||
avdevice avformat avcodec avutil avfilter swscale swresample
|
avdevice avformat avcodec avutil avfilter swscale swresample
|
||||||
/usr/lib${MULTILIB}/libxvidcore.a
|
/usr/lib${MULTILIB}/libxvidcore.a
|
||||||
/usr/lib${MULTILIB}/libx264.a
|
/usr/lib${MULTILIB}/libx264.a
|
||||||
/usr/lib${MULTILIB}/libmp3lame.a
|
/usr/lib${MULTILIB}/libmp3lame.a
|
||||||
/usr/lib${MULTILIB}/libvpx.a
|
/usr/lib${MULTILIB}/libvpx.a
|
||||||
/usr/lib${MULTILIB}/libvorbis.a
|
/usr/lib${MULTILIB}/libvorbis.a
|
||||||
/usr/lib${MULTILIB}/libogg.a
|
/usr/lib${MULTILIB}/libogg.a
|
||||||
/usr/lib${MULTILIB}/libvorbisenc.a
|
/usr/lib${MULTILIB}/libvorbisenc.a
|
||||||
/usr/lib${MULTILIB}/libtheora.a
|
/usr/lib${MULTILIB}/libtheora.a
|
||||||
/usr/lib${MULTILIB}/libschroedinger-1.0.a
|
/usr/lib${MULTILIB}/libschroedinger-1.0.a
|
||||||
/usr/lib${MULTILIB}/liborc-0.4.a
|
/usr/lib${MULTILIB}/liborc-0.4.a
|
||||||
CACHE STRING "" FORCE
|
CACHE STRING "" FORCE
|
||||||
)
|
)
|
||||||
|
|
||||||
# SndFile libraries
|
# SndFile libraries
|
||||||
@@ -88,9 +88,9 @@ set(SNDFILE_LIBRARY "/usr/lib${MULTILIB}/libsndfile.a;/usr/lib${MULTILI
|
|||||||
set(OPENAL_ROOT_DIR "/opt/lib/openal" CACHE STRING "" FORCE)
|
set(OPENAL_ROOT_DIR "/opt/lib/openal" CACHE STRING "" FORCE)
|
||||||
set(OPENAL_INCLUDE_DIR "${OPENAL_ROOT_DIR}/include/AL" CACHE STRING "" FORCE)
|
set(OPENAL_INCLUDE_DIR "${OPENAL_ROOT_DIR}/include/AL" CACHE STRING "" FORCE)
|
||||||
set(OPENAL_LIBRARY
|
set(OPENAL_LIBRARY
|
||||||
${OPENAL_ROOT_DIR}/lib/libopenal.a
|
${OPENAL_ROOT_DIR}/lib/libopenal.a
|
||||||
${OPENAL_ROOT_DIR}/lib/libcommon.a
|
${OPENAL_ROOT_DIR}/lib/libcommon.a
|
||||||
CACHE STRING "" FORCE
|
CACHE STRING "" FORCE
|
||||||
)
|
)
|
||||||
|
|
||||||
# OpenCollada libraries
|
# OpenCollada libraries
|
||||||
@@ -112,15 +112,15 @@ set(FREETYPE_LIBRARY "/usr/lib${MULTILIB}/libfreetype.a" CACHE STRING "" FORCE)
|
|||||||
|
|
||||||
# OpenImageIO
|
# OpenImageIO
|
||||||
if(GLIBC EQUAL "2.19")
|
if(GLIBC EQUAL "2.19")
|
||||||
set(OPENIMAGEIO_LIBRARY
|
set(OPENIMAGEIO_LIBRARY
|
||||||
/opt/lib/oiio/lib/libOpenImageIO.a
|
/opt/lib/oiio/lib/libOpenImageIO.a
|
||||||
/opt/lib/oiio/lib/libOpenImageIO_Util.a
|
/opt/lib/oiio/lib/libOpenImageIO_Util.a
|
||||||
/usr/lib${MULTILIB}/libwebp.a
|
/usr/lib${MULTILIB}/libwebp.a
|
||||||
/usr/lib${MULTILIB}/liblzma.a
|
/usr/lib${MULTILIB}/liblzma.a
|
||||||
/usr/lib${MULTILIB}/libjbig.a
|
/usr/lib${MULTILIB}/libjbig.a
|
||||||
${FREETYPE_LIBRARY}
|
${FREETYPE_LIBRARY}
|
||||||
CACHE STRING "" FORCE
|
CACHE STRING "" FORCE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OpenSubdiv libraries
|
# OpenSubdiv libraries
|
||||||
@@ -151,13 +151,13 @@ set(ZLIB_LIBRARY "/usr/lib${MULTILIB}/libz.a" CACHE STRING "" FORCE)
|
|||||||
|
|
||||||
# OpenVDB
|
# OpenVDB
|
||||||
set(OPENVDB_LIBRARY
|
set(OPENVDB_LIBRARY
|
||||||
/opt/lib/openvdb/lib/libopenvdb.a
|
/opt/lib/openvdb/lib/libopenvdb.a
|
||||||
CACHE BOOL "" FORCE
|
CACHE BOOL "" FORCE
|
||||||
)
|
)
|
||||||
|
|
||||||
set(BLOSC_LIBRARY
|
set(BLOSC_LIBRARY
|
||||||
/opt/lib/blosc/lib/libblosc.a
|
/opt/lib/blosc/lib/libblosc.a
|
||||||
CACHE BOOL "" FORCE
|
CACHE BOOL "" FORCE
|
||||||
)
|
)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
# If GLEW_ROOT_DIR was defined in the environment, use it.
|
# If GLEW_ROOT_DIR was defined in the environment, use it.
|
||||||
IF(NOT GLEW_ROOT_DIR AND NOT $ENV{GLEW_ROOT_DIR} STREQUAL "")
|
IF(NOT GLEW_ROOT_DIR AND NOT $ENV{GLEW_ROOT_DIR} STREQUAL "")
|
||||||
SET(GLEW_ROOT_DIR $ENV{GLEW_ROOT_DIR})
|
SET(GLEW_ROOT_DIR $ENV{GLEW_ROOT_DIR})
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
SET(_glew_SEARCH_DIRS
|
SET(_glew_SEARCH_DIRS
|
||||||
|
|||||||
@@ -22,65 +22,65 @@
|
|||||||
#=============================================================================
|
#=============================================================================
|
||||||
|
|
||||||
if(LLVM_ROOT_DIR)
|
if(LLVM_ROOT_DIR)
|
||||||
if(DEFINED LLVM_VERSION)
|
if(DEFINED LLVM_VERSION)
|
||||||
find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION} HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
|
find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION} HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
|
||||||
endif()
|
endif()
|
||||||
if(NOT LLVM_CONFIG)
|
if(NOT LLVM_CONFIG)
|
||||||
find_program(LLVM_CONFIG llvm-config HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
|
find_program(LLVM_CONFIG llvm-config HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
if(DEFINED LLVM_VERSION)
|
if(DEFINED LLVM_VERSION)
|
||||||
message(running llvm-config-${LLVM_VERSION})
|
message(running llvm-config-${LLVM_VERSION})
|
||||||
find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION})
|
find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION})
|
||||||
endif()
|
endif()
|
||||||
if(NOT LLVM_CONFIG)
|
if(NOT LLVM_CONFIG)
|
||||||
find_program(LLVM_CONFIG llvm-config)
|
find_program(LLVM_CONFIG llvm-config)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT DEFINED LLVM_VERSION)
|
if(NOT DEFINED LLVM_VERSION)
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --version
|
execute_process(COMMAND ${LLVM_CONFIG} --version
|
||||||
OUTPUT_VARIABLE LLVM_VERSION
|
OUTPUT_VARIABLE LLVM_VERSION
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
set(LLVM_VERSION ${LLVM_VERSION} CACHE STRING "Version of LLVM to use")
|
set(LLVM_VERSION ${LLVM_VERSION} CACHE STRING "Version of LLVM to use")
|
||||||
endif()
|
endif()
|
||||||
if(NOT LLVM_ROOT_DIR)
|
if(NOT LLVM_ROOT_DIR)
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --prefix
|
execute_process(COMMAND ${LLVM_CONFIG} --prefix
|
||||||
OUTPUT_VARIABLE LLVM_ROOT_DIR
|
OUTPUT_VARIABLE LLVM_ROOT_DIR
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
set(LLVM_ROOT_DIR ${LLVM_ROOT_DIR} CACHE PATH "Path to the LLVM installation")
|
set(LLVM_ROOT_DIR ${LLVM_ROOT_DIR} CACHE PATH "Path to the LLVM installation")
|
||||||
endif()
|
endif()
|
||||||
if(NOT LLVM_LIBPATH)
|
if(NOT LLVM_LIBPATH)
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --libdir
|
execute_process(COMMAND ${LLVM_CONFIG} --libdir
|
||||||
OUTPUT_VARIABLE LLVM_LIBPATH
|
OUTPUT_VARIABLE LLVM_LIBPATH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
set(LLVM_LIBPATH ${LLVM_LIBPATH} CACHE PATH "Path to the LLVM library path")
|
set(LLVM_LIBPATH ${LLVM_LIBPATH} CACHE PATH "Path to the LLVM library path")
|
||||||
mark_as_advanced(LLVM_LIBPATH)
|
mark_as_advanced(LLVM_LIBPATH)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(LLVM_STATIC)
|
if(LLVM_STATIC)
|
||||||
find_library(LLVM_LIBRARY
|
find_library(LLVM_LIBRARY
|
||||||
NAMES LLVMAnalysis # first of a whole bunch of libs to get
|
NAMES LLVMAnalysis # first of a whole bunch of libs to get
|
||||||
PATHS ${LLVM_LIBPATH})
|
PATHS ${LLVM_LIBPATH})
|
||||||
else()
|
else()
|
||||||
find_library(LLVM_LIBRARY
|
find_library(LLVM_LIBRARY
|
||||||
NAMES
|
NAMES
|
||||||
LLVM-${LLVM_VERSION}
|
LLVM-${LLVM_VERSION}
|
||||||
LLVMAnalysis # check for the static library as a fall-back
|
LLVMAnalysis # check for the static library as a fall-back
|
||||||
PATHS ${LLVM_LIBPATH})
|
PATHS ${LLVM_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
|
if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
|
||||||
if(LLVM_STATIC)
|
if(LLVM_STATIC)
|
||||||
# if static LLVM libraries were requested, use llvm-config to generate
|
# if static LLVM libraries were requested, use llvm-config to generate
|
||||||
# the list of what libraries we need, and substitute that in the right
|
# the list of what libraries we need, and substitute that in the right
|
||||||
# way for LLVM_LIBRARY.
|
# way for LLVM_LIBRARY.
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --libfiles
|
execute_process(COMMAND ${LLVM_CONFIG} --libfiles
|
||||||
OUTPUT_VARIABLE LLVM_LIBRARY
|
OUTPUT_VARIABLE LLVM_LIBRARY
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
string(REPLACE " " ";" LLVM_LIBRARY "${LLVM_LIBRARY}")
|
string(REPLACE " " ";" LLVM_LIBRARY "${LLVM_LIBRARY}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -24,11 +24,11 @@
|
|||||||
|
|
||||||
# If LIBSNDFILE_ROOT_DIR was defined in the environment, use it.
|
# If LIBSNDFILE_ROOT_DIR was defined in the environment, use it.
|
||||||
IF(NOT LIBSNDFILE_ROOT_DIR AND NOT $ENV{LIBSNDFILE_ROOT_DIR} STREQUAL "")
|
IF(NOT LIBSNDFILE_ROOT_DIR AND NOT $ENV{LIBSNDFILE_ROOT_DIR} STREQUAL "")
|
||||||
SET(LIBSNDFILE_ROOT_DIR $ENV{LIBSNDFILE_ROOT_DIR})
|
SET(LIBSNDFILE_ROOT_DIR $ENV{LIBSNDFILE_ROOT_DIR})
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
SET(_sndfile_SEARCH_DIRS
|
SET(_sndfile_SEARCH_DIRS
|
||||||
${LIBSNDFILE_ROOT_DIR}
|
${LIBSNDFILE_ROOT_DIR}
|
||||||
/usr/local
|
/usr/local
|
||||||
/sw # Fink
|
/sw # Fink
|
||||||
/opt/local # DarwinPorts
|
/opt/local # DarwinPorts
|
||||||
@@ -54,14 +54,14 @@ FIND_LIBRARY(LIBSNDFILE_LIBRARY
|
|||||||
# all listed variables are TRUE
|
# all listed variables are TRUE
|
||||||
INCLUDE(FindPackageHandleStandardArgs)
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SndFile DEFAULT_MSG
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SndFile DEFAULT_MSG
|
||||||
LIBSNDFILE_LIBRARY LIBSNDFILE_INCLUDE_DIR)
|
LIBSNDFILE_LIBRARY LIBSNDFILE_INCLUDE_DIR)
|
||||||
|
|
||||||
IF(LIBSNDFILE_FOUND)
|
IF(LIBSNDFILE_FOUND)
|
||||||
SET(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBRARY})
|
SET(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBRARY})
|
||||||
SET(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE_INCLUDE_DIR})
|
SET(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE_INCLUDE_DIR})
|
||||||
ENDIF(LIBSNDFILE_FOUND)
|
ENDIF(LIBSNDFILE_FOUND)
|
||||||
|
|
||||||
MARK_AS_ADVANCED(
|
MARK_AS_ADVANCED(
|
||||||
LIBSNDFILE_INCLUDE_DIR
|
LIBSNDFILE_INCLUDE_DIR
|
||||||
LIBSNDFILE_LIBRARY
|
LIBSNDFILE_LIBRARY
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -13,55 +13,55 @@
|
|||||||
#=============================================================================
|
#=============================================================================
|
||||||
|
|
||||||
macro(BLENDER_SRC_GTEST_EX NAME SRC EXTRA_LIBS DO_ADD_TEST)
|
macro(BLENDER_SRC_GTEST_EX NAME SRC EXTRA_LIBS DO_ADD_TEST)
|
||||||
if(WITH_GTESTS)
|
if(WITH_GTESTS)
|
||||||
get_property(_current_include_directories
|
get_property(_current_include_directories
|
||||||
DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
PROPERTY INCLUDE_DIRECTORIES)
|
PROPERTY INCLUDE_DIRECTORIES)
|
||||||
set(TEST_INC
|
set(TEST_INC
|
||||||
${_current_include_directories}
|
${_current_include_directories}
|
||||||
${CMAKE_SOURCE_DIR}/tests/gtests
|
${CMAKE_SOURCE_DIR}/tests/gtests
|
||||||
${GLOG_INCLUDE_DIRS}
|
${GLOG_INCLUDE_DIRS}
|
||||||
${GFLAGS_INCLUDE_DIRS}
|
${GFLAGS_INCLUDE_DIRS}
|
||||||
${CMAKE_SOURCE_DIR}/extern/gtest/include
|
${CMAKE_SOURCE_DIR}/extern/gtest/include
|
||||||
${CMAKE_SOURCE_DIR}/extern/gmock/include
|
${CMAKE_SOURCE_DIR}/extern/gmock/include
|
||||||
)
|
)
|
||||||
unset(_current_include_directories)
|
unset(_current_include_directories)
|
||||||
|
|
||||||
add_executable(${NAME}_test ${SRC})
|
add_executable(${NAME}_test ${SRC})
|
||||||
target_link_libraries(${NAME}_test
|
target_link_libraries(${NAME}_test
|
||||||
${EXTRA_LIBS}
|
${EXTRA_LIBS}
|
||||||
${PLATFORM_LINKLIBS}
|
${PLATFORM_LINKLIBS}
|
||||||
bf_testing_main
|
bf_testing_main
|
||||||
bf_intern_eigen
|
bf_intern_eigen
|
||||||
bf_intern_guardedalloc
|
bf_intern_guardedalloc
|
||||||
extern_gtest
|
extern_gtest
|
||||||
extern_gmock
|
extern_gmock
|
||||||
# needed for glog
|
# needed for glog
|
||||||
${PTHREADS_LIBRARIES}
|
${PTHREADS_LIBRARIES}
|
||||||
${GLOG_LIBRARIES}
|
${GLOG_LIBRARIES}
|
||||||
${GFLAGS_LIBRARIES})
|
${GFLAGS_LIBRARIES})
|
||||||
if(WITH_OPENMP_STATIC)
|
if(WITH_OPENMP_STATIC)
|
||||||
target_link_libraries(${NAME}_test ${OpenMP_LIBRARIES})
|
target_link_libraries(${NAME}_test ${OpenMP_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
set_target_properties(${NAME}_test PROPERTIES
|
set_target_properties(${NAME}_test PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY "${TESTS_OUTPUT_DIR}"
|
RUNTIME_OUTPUT_DIRECTORY "${TESTS_OUTPUT_DIR}"
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${TESTS_OUTPUT_DIR}"
|
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${TESTS_OUTPUT_DIR}"
|
||||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${TESTS_OUTPUT_DIR}"
|
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${TESTS_OUTPUT_DIR}"
|
||||||
INCLUDE_DIRECTORIES "${TEST_INC}")
|
INCLUDE_DIRECTORIES "${TEST_INC}")
|
||||||
if(${DO_ADD_TEST})
|
if(${DO_ADD_TEST})
|
||||||
add_test(NAME ${NAME}_test COMMAND ${TESTS_OUTPUT_DIR}/${NAME}_test WORKING_DIRECTORY $<TARGET_FILE_DIR:blender>)
|
add_test(NAME ${NAME}_test COMMAND ${TESTS_OUTPUT_DIR}/${NAME}_test WORKING_DIRECTORY $<TARGET_FILE_DIR:blender>)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(BLENDER_SRC_GTEST NAME SRC EXTRA_LIBS)
|
macro(BLENDER_SRC_GTEST NAME SRC EXTRA_LIBS)
|
||||||
BLENDER_SRC_GTEST_EX("${NAME}" "${SRC}" "${EXTRA_LIBS}" "TRUE")
|
BLENDER_SRC_GTEST_EX("${NAME}" "${SRC}" "${EXTRA_LIBS}" "TRUE")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(BLENDER_TEST NAME EXTRA_LIBS)
|
macro(BLENDER_TEST NAME EXTRA_LIBS)
|
||||||
BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "TRUE")
|
BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "TRUE")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(BLENDER_TEST_PERFORMANCE NAME EXTRA_LIBS)
|
macro(BLENDER_TEST_PERFORMANCE NAME EXTRA_LIBS)
|
||||||
BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "FALSE")
|
BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "FALSE")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|||||||
@@ -4,22 +4,22 @@
|
|||||||
|
|
||||||
if(NOT DEFINED RPMBUILD)
|
if(NOT DEFINED RPMBUILD)
|
||||||
|
|
||||||
find_program(RPMBUILD
|
find_program(RPMBUILD
|
||||||
NAMES rpmbuild
|
NAMES rpmbuild
|
||||||
PATHS "/usr/bin")
|
PATHS "/usr/bin")
|
||||||
|
|
||||||
mark_as_advanced(RPMBUILD)
|
mark_as_advanced(RPMBUILD)
|
||||||
|
|
||||||
if(RPMBUILD)
|
if(RPMBUILD)
|
||||||
message(STATUS "RPM Build Found: ${RPMBUILD}")
|
message(STATUS "RPM Build Found: ${RPMBUILD}")
|
||||||
else()
|
else()
|
||||||
message(STATUS "RPM Build Not Found (rpmbuild). RPM generation will not be available")
|
message(STATUS "RPM Build Not Found (rpmbuild). RPM generation will not be available")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(RPMBUILD)
|
if(RPMBUILD)
|
||||||
set(RPMBUILD_FOUND TRUE)
|
set(RPMBUILD_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
set(RPMBUILD_FOUND FALSE)
|
set(RPMBUILD_FOUND FALSE)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -14,162 +14,162 @@ set(MY_WC_COMMIT_TIMESTAMP 0)
|
|||||||
|
|
||||||
# Guess if this is a git working copy and then look up the revision
|
# Guess if this is a git working copy and then look up the revision
|
||||||
if(EXISTS ${SOURCE_DIR}/.git)
|
if(EXISTS ${SOURCE_DIR}/.git)
|
||||||
execute_process(COMMAND git rev-parse --abbrev-ref HEAD
|
execute_process(COMMAND git rev-parse --abbrev-ref HEAD
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_BRANCH
|
OUTPUT_VARIABLE MY_WC_BRANCH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
if(MY_WC_BRANCH STREQUAL "HEAD")
|
if(MY_WC_BRANCH STREQUAL "HEAD")
|
||||||
# Detached HEAD, check whether commit hash is reachable
|
# Detached HEAD, check whether commit hash is reachable
|
||||||
# in the master branch
|
# in the master branch
|
||||||
execute_process(COMMAND git rev-parse --short=12 HEAD
|
execute_process(COMMAND git rev-parse --short=12 HEAD
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_HASH
|
OUTPUT_VARIABLE MY_WC_HASH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
execute_process(COMMAND git branch --list master blender-v* --contains ${MY_WC_HASH}
|
execute_process(COMMAND git branch --list master blender-v* --contains ${MY_WC_HASH}
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_contains_check
|
OUTPUT_VARIABLE _git_contains_check
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
if(NOT _git_contains_check STREQUAL "")
|
if(NOT _git_contains_check STREQUAL "")
|
||||||
set(MY_WC_BRANCH "master")
|
set(MY_WC_BRANCH "master")
|
||||||
else()
|
else()
|
||||||
execute_process(COMMAND git show-ref --tags -d
|
execute_process(COMMAND git show-ref --tags -d
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_tag_hashes
|
OUTPUT_VARIABLE _git_tag_hashes
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
execute_process(COMMAND git rev-parse HEAD
|
execute_process(COMMAND git rev-parse HEAD
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_head_hash
|
OUTPUT_VARIABLE _git_head_hash
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
if(_git_tag_hashes MATCHES "${_git_head_hash}")
|
if(_git_tag_hashes MATCHES "${_git_head_hash}")
|
||||||
set(MY_WC_BRANCH "master")
|
set(MY_WC_BRANCH "master")
|
||||||
else()
|
else()
|
||||||
execute_process(COMMAND git branch --contains ${MY_WC_HASH}
|
execute_process(COMMAND git branch --contains ${MY_WC_HASH}
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_contains_branches
|
OUTPUT_VARIABLE _git_contains_branches
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
string(REGEX REPLACE "^\\*[ \t]+" "" _git_contains_branches "${_git_contains_branches}")
|
string(REGEX REPLACE "^\\*[ \t]+" "" _git_contains_branches "${_git_contains_branches}")
|
||||||
string(REGEX REPLACE "[\r\n]+" ";" _git_contains_branches "${_git_contains_branches}")
|
string(REGEX REPLACE "[\r\n]+" ";" _git_contains_branches "${_git_contains_branches}")
|
||||||
string(REGEX REPLACE ";[ \t]+" ";" _git_contains_branches "${_git_contains_branches}")
|
string(REGEX REPLACE ";[ \t]+" ";" _git_contains_branches "${_git_contains_branches}")
|
||||||
foreach(_branch ${_git_contains_branches})
|
foreach(_branch ${_git_contains_branches})
|
||||||
if(NOT "${_branch}" MATCHES "\\(HEAD.*")
|
if(NOT "${_branch}" MATCHES "\\(HEAD.*")
|
||||||
set(MY_WC_BRANCH "${_branch}")
|
set(MY_WC_BRANCH "${_branch}")
|
||||||
break()
|
break()
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(_branch)
|
unset(_branch)
|
||||||
unset(_git_contains_branches)
|
unset(_git_contains_branches)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(_git_tag_hashes)
|
unset(_git_tag_hashes)
|
||||||
unset(_git_head_hashs)
|
unset(_git_head_hashs)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
unset(_git_contains_check)
|
unset(_git_contains_check)
|
||||||
else()
|
else()
|
||||||
execute_process(COMMAND git log HEAD..@{u}
|
execute_process(COMMAND git log HEAD..@{u}
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_below_check
|
OUTPUT_VARIABLE _git_below_check
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
ERROR_QUIET)
|
ERROR_QUIET)
|
||||||
if(NOT _git_below_check STREQUAL "")
|
if(NOT _git_below_check STREQUAL "")
|
||||||
# If there're commits between HEAD and upstream this means
|
# If there're commits between HEAD and upstream this means
|
||||||
# that we're reset-ed to older revision. Use it's hash then.
|
# that we're reset-ed to older revision. Use it's hash then.
|
||||||
execute_process(COMMAND git rev-parse --short=12 HEAD
|
execute_process(COMMAND git rev-parse --short=12 HEAD
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_HASH
|
OUTPUT_VARIABLE MY_WC_HASH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
else()
|
else()
|
||||||
execute_process(COMMAND git rev-parse --short=12 @{u}
|
execute_process(COMMAND git rev-parse --short=12 @{u}
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_HASH
|
OUTPUT_VARIABLE MY_WC_HASH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
ERROR_QUIET)
|
ERROR_QUIET)
|
||||||
|
|
||||||
if(MY_WC_HASH STREQUAL "")
|
if(MY_WC_HASH STREQUAL "")
|
||||||
# Local branch, not set to upstream.
|
# Local branch, not set to upstream.
|
||||||
# Well, let's use HEAD for now
|
# Well, let's use HEAD for now
|
||||||
execute_process(COMMAND git rev-parse --short=12 HEAD
|
execute_process(COMMAND git rev-parse --short=12 HEAD
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_HASH
|
OUTPUT_VARIABLE MY_WC_HASH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MY_WC_BRANCH MATCHES "^blender-v")
|
if(MY_WC_BRANCH MATCHES "^blender-v")
|
||||||
set(MY_WC_BRANCH "master")
|
set(MY_WC_BRANCH "master")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(_git_below_check)
|
unset(_git_below_check)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
execute_process(COMMAND git log -1 --format=%ct
|
execute_process(COMMAND git log -1 --format=%ct
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_COMMIT_TIMESTAMP
|
OUTPUT_VARIABLE MY_WC_COMMIT_TIMESTAMP
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
# May fail in rare cases
|
# May fail in rare cases
|
||||||
if(MY_WC_COMMIT_TIMESTAMP STREQUAL "")
|
if(MY_WC_COMMIT_TIMESTAMP STREQUAL "")
|
||||||
set(MY_WC_COMMIT_TIMESTAMP 0)
|
set(MY_WC_COMMIT_TIMESTAMP 0)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Update GIT index before getting dirty files
|
# Update GIT index before getting dirty files
|
||||||
execute_process(COMMAND git update-index -q --refresh
|
execute_process(COMMAND git update-index -q --refresh
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
execute_process(COMMAND git diff-index --name-only HEAD --
|
execute_process(COMMAND git diff-index --name-only HEAD --
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_changed_files
|
OUTPUT_VARIABLE _git_changed_files
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
if(NOT _git_changed_files STREQUAL "")
|
if(NOT _git_changed_files STREQUAL "")
|
||||||
set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
|
set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
|
||||||
else()
|
else()
|
||||||
# Unpushed commits are also considered local modifications
|
# Unpushed commits are also considered local modifications
|
||||||
execute_process(COMMAND git log @{u}..
|
execute_process(COMMAND git log @{u}..
|
||||||
WORKING_DIRECTORY ${SOURCE_DIR}
|
WORKING_DIRECTORY ${SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE _git_unpushed_log
|
OUTPUT_VARIABLE _git_unpushed_log
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
ERROR_QUIET)
|
ERROR_QUIET)
|
||||||
if(NOT _git_unpushed_log STREQUAL "")
|
if(NOT _git_unpushed_log STREQUAL "")
|
||||||
set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
|
set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
|
||||||
endif()
|
endif()
|
||||||
unset(_git_unpushed_log)
|
unset(_git_unpushed_log)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(_git_changed_files)
|
unset(_git_changed_files)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# BUILD_PLATFORM and BUILD_PLATFORM are taken from CMake
|
# BUILD_PLATFORM and BUILD_PLATFORM are taken from CMake
|
||||||
# but BUILD_DATE and BUILD_TIME are platform dependent
|
# but BUILD_DATE and BUILD_TIME are platform dependent
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
if(NOT BUILD_DATE)
|
if(NOT BUILD_DATE)
|
||||||
execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
if(NOT BUILD_TIME)
|
if(NOT BUILD_TIME)
|
||||||
execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
if(NOT BUILD_DATE)
|
if(NOT BUILD_DATE)
|
||||||
execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
if(NOT BUILD_TIME)
|
if(NOT BUILD_TIME)
|
||||||
execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Write a file with the BUILD_HASH define
|
# Write a file with the BUILD_HASH define
|
||||||
file(WRITE buildinfo.h.txt
|
file(WRITE buildinfo.h.txt
|
||||||
"#define BUILD_HASH \"${MY_WC_HASH}\"\n"
|
"#define BUILD_HASH \"${MY_WC_HASH}\"\n"
|
||||||
"#define BUILD_COMMIT_TIMESTAMP ${MY_WC_COMMIT_TIMESTAMP}\n"
|
"#define BUILD_COMMIT_TIMESTAMP ${MY_WC_COMMIT_TIMESTAMP}\n"
|
||||||
"#define BUILD_BRANCH \"${MY_WC_BRANCH}\"\n"
|
"#define BUILD_BRANCH \"${MY_WC_BRANCH}\"\n"
|
||||||
"#define BUILD_DATE \"${BUILD_DATE}\"\n"
|
"#define BUILD_DATE \"${BUILD_DATE}\"\n"
|
||||||
"#define BUILD_TIME \"${BUILD_TIME}\"\n"
|
"#define BUILD_TIME \"${BUILD_TIME}\"\n"
|
||||||
)
|
)
|
||||||
|
|
||||||
# cleanup
|
# cleanup
|
||||||
|
|||||||
@@ -55,12 +55,12 @@ set(WITH_MEM_JEMALLOC ON CACHE BOOL "" FORCE)
|
|||||||
|
|
||||||
# platform dependent options
|
# platform dependent options
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_DOC_MANPAGE ON CACHE BOOL "" FORCE)
|
set(WITH_DOC_MANPAGE ON CACHE BOOL "" FORCE)
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
# include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
|
# include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -58,12 +58,12 @@ set(CYCLES_CUDA_BINARIES_ARCH sm_30;sm_35;sm_37;sm_50;sm_52;sm_60;sm_61;sm_70;sm
|
|||||||
|
|
||||||
# platform dependent options
|
# platform dependent options
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_DOC_MANPAGE ON CACHE BOOL "" FORCE)
|
set(WITH_DOC_MANPAGE ON CACHE BOOL "" FORCE)
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
set(WITH_JACK ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
# include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
|
# include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -32,6 +32,6 @@ set(WITH_OPENVDB OFF CACHE BOOL "" FORCE)
|
|||||||
set(WITH_ALEMBIC OFF CACHE BOOL "" FORCE)
|
set(WITH_ALEMBIC OFF CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
# jemalloc causes linking error on import, disable.
|
# jemalloc causes linking error on import, disable.
|
||||||
set(WITH_MEM_JEMALLOC OFF CACHE BOOL "" FORCE)
|
set(WITH_MEM_JEMALLOC OFF CACHE BOOL "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,175 +19,175 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
macro(list_insert_after
|
macro(list_insert_after
|
||||||
list_id item_check item_add
|
list_id item_check item_add
|
||||||
)
|
)
|
||||||
set(_index)
|
set(_index)
|
||||||
list(FIND "${list_id}" "${item_check}" _index)
|
list(FIND "${list_id}" "${item_check}" _index)
|
||||||
if("${_index}" MATCHES "-1")
|
if("${_index}" MATCHES "-1")
|
||||||
message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
|
message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
|
||||||
endif()
|
endif()
|
||||||
math(EXPR _index "${_index} + 1")
|
math(EXPR _index "${_index} + 1")
|
||||||
list(INSERT ${list_id} "${_index}" ${item_add})
|
list(INSERT ${list_id} "${_index}" ${item_add})
|
||||||
unset(_index)
|
unset(_index)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(list_insert_before
|
macro(list_insert_before
|
||||||
list_id item_check item_add
|
list_id item_check item_add
|
||||||
)
|
)
|
||||||
set(_index)
|
set(_index)
|
||||||
list(FIND "${list_id}" "${item_check}" _index)
|
list(FIND "${list_id}" "${item_check}" _index)
|
||||||
if("${_index}" MATCHES "-1")
|
if("${_index}" MATCHES "-1")
|
||||||
message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
|
message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
|
||||||
endif()
|
endif()
|
||||||
list(INSERT ${list_id} "${_index}" ${item_add})
|
list(INSERT ${list_id} "${_index}" ${item_add})
|
||||||
unset(_index)
|
unset(_index)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
function(list_assert_duplicates
|
function(list_assert_duplicates
|
||||||
list_id
|
list_id
|
||||||
)
|
)
|
||||||
|
|
||||||
# message(STATUS "list data: ${list_id}")
|
# message(STATUS "list data: ${list_id}")
|
||||||
|
|
||||||
list(LENGTH list_id _len_before)
|
list(LENGTH list_id _len_before)
|
||||||
list(REMOVE_DUPLICATES list_id)
|
list(REMOVE_DUPLICATES list_id)
|
||||||
list(LENGTH list_id _len_after)
|
list(LENGTH list_id _len_after)
|
||||||
# message(STATUS "list size ${_len_before} -> ${_len_after}")
|
# message(STATUS "list size ${_len_before} -> ${_len_after}")
|
||||||
if(NOT _len_before EQUAL _len_after)
|
if(NOT _len_before EQUAL _len_after)
|
||||||
message(FATAL_ERROR "duplicate found in list which should not contain duplicates: ${list_id}")
|
message(FATAL_ERROR "duplicate found in list which should not contain duplicates: ${list_id}")
|
||||||
endif()
|
endif()
|
||||||
unset(_len_before)
|
unset(_len_before)
|
||||||
unset(_len_after)
|
unset(_len_after)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
# foo_bar.spam --> foo_barMySuffix.spam
|
# foo_bar.spam --> foo_barMySuffix.spam
|
||||||
macro(file_suffix
|
macro(file_suffix
|
||||||
file_name_new file_name file_suffix
|
file_name_new file_name file_suffix
|
||||||
)
|
)
|
||||||
|
|
||||||
get_filename_component(_file_name_PATH ${file_name} PATH)
|
get_filename_component(_file_name_PATH ${file_name} PATH)
|
||||||
get_filename_component(_file_name_NAME_WE ${file_name} NAME_WE)
|
get_filename_component(_file_name_NAME_WE ${file_name} NAME_WE)
|
||||||
get_filename_component(_file_name_EXT ${file_name} EXT)
|
get_filename_component(_file_name_EXT ${file_name} EXT)
|
||||||
set(${file_name_new} "${_file_name_PATH}/${_file_name_NAME_WE}${file_suffix}${_file_name_EXT}")
|
set(${file_name_new} "${_file_name_PATH}/${_file_name_NAME_WE}${file_suffix}${_file_name_EXT}")
|
||||||
|
|
||||||
unset(_file_name_PATH)
|
unset(_file_name_PATH)
|
||||||
unset(_file_name_NAME_WE)
|
unset(_file_name_NAME_WE)
|
||||||
unset(_file_name_EXT)
|
unset(_file_name_EXT)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# useful for adding debug suffix to library lists:
|
# useful for adding debug suffix to library lists:
|
||||||
# /somepath/foo.lib --> /somepath/foo_d.lib
|
# /somepath/foo.lib --> /somepath/foo_d.lib
|
||||||
macro(file_list_suffix
|
macro(file_list_suffix
|
||||||
fp_list_new fp_list fn_suffix
|
fp_list_new fp_list fn_suffix
|
||||||
)
|
)
|
||||||
|
|
||||||
# incase of empty list
|
# incase of empty list
|
||||||
set(_fp)
|
set(_fp)
|
||||||
set(_fp_suffixed)
|
set(_fp_suffixed)
|
||||||
|
|
||||||
set(fp_list_new)
|
set(fp_list_new)
|
||||||
|
|
||||||
foreach(_fp ${fp_list})
|
foreach(_fp ${fp_list})
|
||||||
file_suffix(_fp_suffixed "${_fp}" "${fn_suffix}")
|
file_suffix(_fp_suffixed "${_fp}" "${fn_suffix}")
|
||||||
list(APPEND "${fp_list_new}" "${_fp_suffixed}")
|
list(APPEND "${fp_list_new}" "${_fp_suffixed}")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
unset(_fp)
|
unset(_fp)
|
||||||
unset(_fp_suffixed)
|
unset(_fp_suffixed)
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
macro(find_package_static)
|
macro(find_package_static)
|
||||||
set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
find_package(${ARGV})
|
find_package(${ARGV})
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
|
||||||
unset(_cmake_find_library_suffixes_back)
|
unset(_cmake_find_library_suffixes_back)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(find_library_static)
|
macro(find_library_static)
|
||||||
set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
find_library(${ARGV})
|
find_library(${ARGV})
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
|
||||||
unset(_cmake_find_library_suffixes_back)
|
unset(_cmake_find_library_suffixes_back)
|
||||||
endmacro()
|
endmacro()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
function(target_link_libraries_optimized
|
function(target_link_libraries_optimized
|
||||||
TARGET
|
TARGET
|
||||||
LIBS
|
LIBS
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(_LIB ${LIBS})
|
foreach(_LIB ${LIBS})
|
||||||
target_link_libraries(${TARGET} optimized "${_LIB}")
|
target_link_libraries(${TARGET} optimized "${_LIB}")
|
||||||
endforeach()
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(target_link_libraries_debug
|
function(target_link_libraries_debug
|
||||||
TARGET
|
TARGET
|
||||||
LIBS
|
LIBS
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(_LIB ${LIBS})
|
foreach(_LIB ${LIBS})
|
||||||
target_link_libraries(${TARGET} debug "${_LIB}")
|
target_link_libraries(${TARGET} debug "${_LIB}")
|
||||||
endforeach()
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
|
# Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
|
||||||
# use it instead of include_directories()
|
# use it instead of include_directories()
|
||||||
function(blender_include_dirs
|
function(blender_include_dirs
|
||||||
includes
|
includes
|
||||||
)
|
)
|
||||||
|
|
||||||
set(_ALL_INCS "")
|
set(_ALL_INCS "")
|
||||||
foreach(_INC ${ARGV})
|
foreach(_INC ${ARGV})
|
||||||
get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
|
get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
|
||||||
list(APPEND _ALL_INCS ${_ABS_INC})
|
list(APPEND _ALL_INCS ${_ABS_INC})
|
||||||
# for checking for invalid includes, disable for regular use
|
# for checking for invalid includes, disable for regular use
|
||||||
##if(NOT EXISTS "${_ABS_INC}/")
|
##if(NOT EXISTS "${_ABS_INC}/")
|
||||||
## message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
|
## message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
|
||||||
##endif()
|
##endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
include_directories(${_ALL_INCS})
|
include_directories(${_ALL_INCS})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(blender_include_dirs_sys
|
function(blender_include_dirs_sys
|
||||||
includes
|
includes
|
||||||
)
|
)
|
||||||
|
|
||||||
set(_ALL_INCS "")
|
set(_ALL_INCS "")
|
||||||
foreach(_INC ${ARGV})
|
foreach(_INC ${ARGV})
|
||||||
get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
|
get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
|
||||||
list(APPEND _ALL_INCS ${_ABS_INC})
|
list(APPEND _ALL_INCS ${_ABS_INC})
|
||||||
##if(NOT EXISTS "${_ABS_INC}/")
|
##if(NOT EXISTS "${_ABS_INC}/")
|
||||||
## message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
|
## message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
|
||||||
##endif()
|
##endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
include_directories(SYSTEM ${_ALL_INCS})
|
include_directories(SYSTEM ${_ALL_INCS})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(blender_source_group
|
function(blender_source_group
|
||||||
sources
|
sources
|
||||||
)
|
)
|
||||||
|
|
||||||
# Group by location on disk
|
# Group by location on disk
|
||||||
source_group("Source Files" FILES CMakeLists.txt)
|
source_group("Source Files" FILES CMakeLists.txt)
|
||||||
|
|
||||||
foreach(_SRC ${sources})
|
foreach(_SRC ${sources})
|
||||||
get_filename_component(_SRC_EXT ${_SRC} EXT)
|
get_filename_component(_SRC_EXT ${_SRC} EXT)
|
||||||
if((${_SRC_EXT} MATCHES ".h") OR
|
if((${_SRC_EXT} MATCHES ".h") OR
|
||||||
(${_SRC_EXT} MATCHES ".hpp") OR
|
(${_SRC_EXT} MATCHES ".hpp") OR
|
||||||
(${_SRC_EXT} MATCHES ".hh"))
|
(${_SRC_EXT} MATCHES ".hh"))
|
||||||
|
|
||||||
set(GROUP_ID "Header Files")
|
set(GROUP_ID "Header Files")
|
||||||
else()
|
else()
|
||||||
set(GROUP_ID "Source Files")
|
set(GROUP_ID "Source Files")
|
||||||
endif()
|
endif()
|
||||||
source_group("${GROUP_ID}" FILES ${_SRC})
|
source_group("${GROUP_ID}" FILES ${_SRC})
|
||||||
endforeach()
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
@@ -199,412 +199,412 @@ endfunction()
|
|||||||
#
|
#
|
||||||
# Optionally takes an arg passed to set(), eg PARENT_SCOPE.
|
# Optionally takes an arg passed to set(), eg PARENT_SCOPE.
|
||||||
macro(add_cc_flags_custom_test
|
macro(add_cc_flags_custom_test
|
||||||
name
|
name
|
||||||
)
|
)
|
||||||
|
|
||||||
string(TOUPPER ${name} _name_upper)
|
string(TOUPPER ${name} _name_upper)
|
||||||
if(DEFINED CMAKE_C_FLAGS_${_name_upper})
|
if(DEFINED CMAKE_C_FLAGS_${_name_upper})
|
||||||
message(STATUS "Using custom CFLAGS: CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
message(STATUS "Using custom CFLAGS: CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${_name_upper}}" ${ARGV1})
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${_name_upper}}" ${ARGV1})
|
||||||
endif()
|
endif()
|
||||||
if(DEFINED CMAKE_CXX_FLAGS_${_name_upper})
|
if(DEFINED CMAKE_CXX_FLAGS_${_name_upper})
|
||||||
message(STATUS "Using custom CXXFLAGS: CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
message(STATUS "Using custom CXXFLAGS: CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${_name_upper}}" ${ARGV1})
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${_name_upper}}" ${ARGV1})
|
||||||
endif()
|
endif()
|
||||||
unset(_name_upper)
|
unset(_name_upper)
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
# only MSVC uses SOURCE_GROUP
|
# only MSVC uses SOURCE_GROUP
|
||||||
function(blender_add_lib__impl
|
function(blender_add_lib__impl
|
||||||
name
|
name
|
||||||
sources
|
sources
|
||||||
includes
|
includes
|
||||||
includes_sys
|
includes_sys
|
||||||
library_deps
|
library_deps
|
||||||
)
|
)
|
||||||
|
|
||||||
# message(STATUS "Configuring library ${name}")
|
# message(STATUS "Configuring library ${name}")
|
||||||
|
|
||||||
# include_directories(${includes})
|
# include_directories(${includes})
|
||||||
# include_directories(SYSTEM ${includes_sys})
|
# include_directories(SYSTEM ${includes_sys})
|
||||||
blender_include_dirs("${includes}")
|
blender_include_dirs("${includes}")
|
||||||
blender_include_dirs_sys("${includes_sys}")
|
blender_include_dirs_sys("${includes_sys}")
|
||||||
|
|
||||||
add_library(${name} ${sources})
|
add_library(${name} ${sources})
|
||||||
|
|
||||||
if (NOT "${library_deps}" STREQUAL "")
|
if (NOT "${library_deps}" STREQUAL "")
|
||||||
target_link_libraries(${name} "${library_deps}")
|
target_link_libraries(${name} "${library_deps}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# works fine without having the includes
|
# works fine without having the includes
|
||||||
# listed is helpful for IDE's (QtCreator/MSVC)
|
# listed is helpful for IDE's (QtCreator/MSVC)
|
||||||
blender_source_group("${sources}")
|
blender_source_group("${sources}")
|
||||||
|
|
||||||
#if enabled, set the FOLDER property for visual studio projects
|
#if enabled, set the FOLDER property for visual studio projects
|
||||||
if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
|
if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
|
||||||
get_filename_component(FolderDir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY)
|
get_filename_component(FolderDir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY)
|
||||||
string(REPLACE ${CMAKE_SOURCE_DIR} "" FolderDir ${FolderDir})
|
string(REPLACE ${CMAKE_SOURCE_DIR} "" FolderDir ${FolderDir})
|
||||||
set_target_properties(${name} PROPERTIES FOLDER ${FolderDir})
|
set_target_properties(${name} PROPERTIES FOLDER ${FolderDir})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
list_assert_duplicates("${sources}")
|
list_assert_duplicates("${sources}")
|
||||||
list_assert_duplicates("${includes}")
|
list_assert_duplicates("${includes}")
|
||||||
# Not for system includes because they can resolve to the same path
|
# Not for system includes because they can resolve to the same path
|
||||||
# list_assert_duplicates("${includes_sys}")
|
# list_assert_duplicates("${includes_sys}")
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
function(blender_add_lib_nolist
|
function(blender_add_lib_nolist
|
||||||
name
|
name
|
||||||
sources
|
sources
|
||||||
includes
|
includes
|
||||||
includes_sys
|
includes_sys
|
||||||
library_deps
|
library_deps
|
||||||
)
|
)
|
||||||
|
|
||||||
add_cc_flags_custom_test(${name} PARENT_SCOPE)
|
add_cc_flags_custom_test(${name} PARENT_SCOPE)
|
||||||
|
|
||||||
blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
|
blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(blender_add_lib
|
function(blender_add_lib
|
||||||
name
|
name
|
||||||
sources
|
sources
|
||||||
includes
|
includes
|
||||||
includes_sys
|
includes_sys
|
||||||
library_deps
|
library_deps
|
||||||
)
|
)
|
||||||
|
|
||||||
add_cc_flags_custom_test(${name} PARENT_SCOPE)
|
add_cc_flags_custom_test(${name} PARENT_SCOPE)
|
||||||
|
|
||||||
blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
|
blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
|
||||||
|
|
||||||
set_property(GLOBAL APPEND PROPERTY BLENDER_LINK_LIBS ${name})
|
set_property(GLOBAL APPEND PROPERTY BLENDER_LINK_LIBS ${name})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
function(SETUP_LIBDIRS)
|
function(SETUP_LIBDIRS)
|
||||||
|
|
||||||
# NOTE: For all new libraries, use absolute library paths.
|
# NOTE: For all new libraries, use absolute library paths.
|
||||||
# This should eventually be phased out.
|
# This should eventually be phased out.
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
link_directories(${JPEG_LIBPATH} ${PNG_LIBPATH} ${ZLIB_LIBPATH} ${FREETYPE_LIBPATH})
|
link_directories(${JPEG_LIBPATH} ${PNG_LIBPATH} ${ZLIB_LIBPATH} ${FREETYPE_LIBPATH})
|
||||||
|
|
||||||
if(WITH_PYTHON) # AND NOT WITH_PYTHON_MODULE # WIN32 needs
|
if(WITH_PYTHON) # AND NOT WITH_PYTHON_MODULE # WIN32 needs
|
||||||
link_directories(${PYTHON_LIBPATH})
|
link_directories(${PYTHON_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
|
if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
|
||||||
link_directories(${SDL_LIBPATH})
|
link_directories(${SDL_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
link_directories(${FFMPEG_LIBPATH})
|
link_directories(${FFMPEG_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
link_directories(${OPENEXR_LIBPATH})
|
link_directories(${OPENEXR_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
link_directories(${TIFF_LIBPATH})
|
link_directories(${TIFF_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_BOOST)
|
if(WITH_BOOST)
|
||||||
link_directories(${BOOST_LIBPATH})
|
link_directories(${BOOST_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
link_directories(${OPENIMAGEIO_LIBPATH})
|
link_directories(${OPENIMAGEIO_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
link_directories(${OPENCOLORIO_LIBPATH})
|
link_directories(${OPENCOLORIO_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
link_directories(${OPENVDB_LIBPATH})
|
link_directories(${OPENVDB_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
link_directories(${OPENAL_LIBPATH})
|
link_directories(${OPENAL_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
|
if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
|
||||||
link_directories(${JACK_LIBPATH})
|
link_directories(${JACK_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CODEC_SNDFILE)
|
if(WITH_CODEC_SNDFILE)
|
||||||
link_directories(${LIBSNDFILE_LIBPATH})
|
link_directories(${LIBSNDFILE_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
link_directories(${FFTW3_LIBPATH})
|
link_directories(${FFTW3_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
link_directories(${OPENCOLLADA_LIBPATH})
|
link_directories(${OPENCOLLADA_LIBPATH})
|
||||||
## Never set
|
## Never set
|
||||||
# link_directories(${PCRE_LIBPATH})
|
# link_directories(${PCRE_LIBPATH})
|
||||||
# link_directories(${EXPAT_LIBPATH})
|
# link_directories(${EXPAT_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_LLVM)
|
if(WITH_LLVM)
|
||||||
link_directories(${LLVM_LIBPATH})
|
link_directories(${LLVM_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
link_directories(${ALEMBIC_LIBPATH})
|
link_directories(${ALEMBIC_LIBPATH})
|
||||||
link_directories(${HDF5_LIBPATH})
|
link_directories(${HDF5_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
link_directories(${PTHREADS_LIBPATH})
|
link_directories(${PTHREADS_LIBPATH})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
macro(setup_platform_linker_flags)
|
macro(setup_platform_linker_flags)
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
|
||||||
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
|
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
function(setup_liblinks
|
function(setup_liblinks
|
||||||
target
|
target
|
||||||
)
|
)
|
||||||
|
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
||||||
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
||||||
|
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
||||||
|
|
||||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
|
||||||
set(CMAKE_MODULE_LINKER_FLAGS_DEBUG "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
set(CMAKE_MODULE_LINKER_FLAGS_DEBUG "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
|
||||||
|
|
||||||
# jemalloc must be early in the list, to be before pthread (see T57998)
|
# jemalloc must be early in the list, to be before pthread (see T57998)
|
||||||
if(WITH_MEM_JEMALLOC)
|
if(WITH_MEM_JEMALLOC)
|
||||||
target_link_libraries(${target} ${JEMALLOC_LIBRARIES})
|
target_link_libraries(${target} ${JEMALLOC_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
${target}
|
${target}
|
||||||
${PNG_LIBRARIES}
|
${PNG_LIBRARIES}
|
||||||
${FREETYPE_LIBRARY}
|
${FREETYPE_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
# since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
|
# since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
|
||||||
if(WITH_PYTHON) # AND NOT WITH_PYTHON_MODULE # WIN32 needs
|
if(WITH_PYTHON) # AND NOT WITH_PYTHON_MODULE # WIN32 needs
|
||||||
target_link_libraries(${target} ${PYTHON_LINKFLAGS})
|
target_link_libraries(${target} ${PYTHON_LINKFLAGS})
|
||||||
|
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
|
file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
|
||||||
target_link_libraries_debug(${target} "${PYTHON_LIBRARIES_DEBUG}")
|
target_link_libraries_debug(${target} "${PYTHON_LIBRARIES_DEBUG}")
|
||||||
target_link_libraries_optimized(${target} "${PYTHON_LIBRARIES}")
|
target_link_libraries_optimized(${target} "${PYTHON_LIBRARIES}")
|
||||||
unset(PYTHON_LIBRARIES_DEBUG)
|
unset(PYTHON_LIBRARIES_DEBUG)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(${target} ${PYTHON_LIBRARIES})
|
target_link_libraries(${target} ${PYTHON_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LZO AND WITH_SYSTEM_LZO)
|
if(WITH_LZO AND WITH_SYSTEM_LZO)
|
||||||
target_link_libraries(${target} ${LZO_LIBRARIES})
|
target_link_libraries(${target} ${LZO_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_SYSTEM_GLEW)
|
if(WITH_SYSTEM_GLEW)
|
||||||
target_link_libraries(${target} ${BLENDER_GLEW_LIBRARIES})
|
target_link_libraries(${target} ${BLENDER_GLEW_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_BULLET AND WITH_SYSTEM_BULLET)
|
if(WITH_BULLET AND WITH_SYSTEM_BULLET)
|
||||||
target_link_libraries(${target} ${BULLET_LIBRARIES})
|
target_link_libraries(${target} ${BULLET_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_AUDASPACE AND WITH_SYSTEM_AUDASPACE)
|
if(WITH_AUDASPACE AND WITH_SYSTEM_AUDASPACE)
|
||||||
target_link_libraries(${target} ${AUDASPACE_C_LIBRARIES} ${AUDASPACE_PY_LIBRARIES})
|
target_link_libraries(${target} ${AUDASPACE_C_LIBRARIES} ${AUDASPACE_PY_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
target_link_libraries(${target} ${OPENAL_LIBRARY})
|
target_link_libraries(${target} ${OPENAL_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
target_link_libraries(${target} ${FFTW3_LIBRARIES})
|
target_link_libraries(${target} ${FFTW3_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
|
if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
|
||||||
target_link_libraries(${target} ${JACK_LIBRARIES})
|
target_link_libraries(${target} ${JACK_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CODEC_SNDFILE)
|
if(WITH_CODEC_SNDFILE)
|
||||||
target_link_libraries(${target} ${LIBSNDFILE_LIBRARIES})
|
target_link_libraries(${target} ${LIBSNDFILE_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
|
if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
|
||||||
target_link_libraries(${target} ${SDL_LIBRARY})
|
target_link_libraries(${target} ${SDL_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
target_link_libraries(${target} ${OSL_LIBRARIES})
|
target_link_libraries(${target} ${OSL_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
target_link_libraries(${target} ${OPENVDB_LIBRARIES} ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
|
target_link_libraries(${target} ${OPENVDB_LIBRARIES} ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
target_link_libraries(${target} ${OPENIMAGEIO_LIBRARIES})
|
target_link_libraries(${target} ${OPENIMAGEIO_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
target_link_libraries(${target} ${OPENCOLORIO_LIBRARIES})
|
target_link_libraries(${target} ${OPENCOLORIO_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENSUBDIV)
|
if(WITH_OPENSUBDIV)
|
||||||
target_link_libraries(${target} ${OPENSUBDIV_LIBRARIES})
|
target_link_libraries(${target} ${OPENSUBDIV_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CYCLES_EMBREE)
|
if(WITH_CYCLES_EMBREE)
|
||||||
target_link_libraries(${target} ${EMBREE_LIBRARIES})
|
target_link_libraries(${target} ${EMBREE_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_BOOST)
|
if(WITH_BOOST)
|
||||||
target_link_libraries(${target} ${BOOST_LIBRARIES})
|
target_link_libraries(${target} ${BOOST_LIBRARIES})
|
||||||
if(Boost_USE_STATIC_LIBS AND Boost_USE_ICU)
|
if(Boost_USE_STATIC_LIBS AND Boost_USE_ICU)
|
||||||
target_link_libraries(${target} ${ICU_LIBRARIES})
|
target_link_libraries(${target} ${ICU_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
target_link_libraries(${target} ${JPEG_LIBRARIES})
|
target_link_libraries(${target} ${JPEG_LIBRARIES})
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
target_link_libraries(${target} ${ALEMBIC_LIBRARIES} ${HDF5_LIBRARIES})
|
target_link_libraries(${target} ${ALEMBIC_LIBRARIES} ${HDF5_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
target_link_libraries(${target} ${TIFF_LIBRARY})
|
target_link_libraries(${target} ${TIFF_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
target_link_libraries(${target} ${OPENEXR_LIBRARIES})
|
target_link_libraries(${target} ${OPENEXR_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENJPEG)
|
if(WITH_IMAGE_OPENJPEG)
|
||||||
target_link_libraries(${target} ${OPENJPEG_LIBRARIES})
|
target_link_libraries(${target} ${OPENJPEG_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
target_link_libraries(${target} ${FFMPEG_LIBRARIES})
|
target_link_libraries(${target} ${FFMPEG_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
|
file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
|
||||||
target_link_libraries_debug(${target} "${OPENCOLLADA_LIBRARIES_DEBUG}")
|
target_link_libraries_debug(${target} "${OPENCOLLADA_LIBRARIES_DEBUG}")
|
||||||
target_link_libraries_optimized(${target} "${OPENCOLLADA_LIBRARIES}")
|
target_link_libraries_optimized(${target} "${OPENCOLLADA_LIBRARIES}")
|
||||||
unset(OPENCOLLADA_LIBRARIES_DEBUG)
|
unset(OPENCOLLADA_LIBRARIES_DEBUG)
|
||||||
|
|
||||||
file_list_suffix(PCRE_LIBRARIES_DEBUG "${PCRE_LIBRARIES}" "_d")
|
file_list_suffix(PCRE_LIBRARIES_DEBUG "${PCRE_LIBRARIES}" "_d")
|
||||||
target_link_libraries_debug(${target} "${PCRE_LIBRARIES_DEBUG}")
|
target_link_libraries_debug(${target} "${PCRE_LIBRARIES_DEBUG}")
|
||||||
target_link_libraries_optimized(${target} "${PCRE_LIBRARIES}")
|
target_link_libraries_optimized(${target} "${PCRE_LIBRARIES}")
|
||||||
unset(PCRE_LIBRARIES_DEBUG)
|
unset(PCRE_LIBRARIES_DEBUG)
|
||||||
|
|
||||||
if(EXPAT_LIB)
|
if(EXPAT_LIB)
|
||||||
file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
|
file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
|
||||||
target_link_libraries_debug(${target} "${EXPAT_LIB_DEBUG}")
|
target_link_libraries_debug(${target} "${EXPAT_LIB_DEBUG}")
|
||||||
target_link_libraries_optimized(${target} "${EXPAT_LIB}")
|
target_link_libraries_optimized(${target} "${EXPAT_LIB}")
|
||||||
unset(EXPAT_LIB_DEBUG)
|
unset(EXPAT_LIB_DEBUG)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
${target}
|
${target}
|
||||||
${OPENCOLLADA_LIBRARIES}
|
${OPENCOLLADA_LIBRARIES}
|
||||||
${PCRE_LIBRARIES}
|
${PCRE_LIBRARIES}
|
||||||
${XML2_LIBRARIES}
|
${XML2_LIBRARIES}
|
||||||
${EXPAT_LIB}
|
${EXPAT_LIB}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(WITH_MOD_CLOTH_ELTOPO)
|
if(WITH_MOD_CLOTH_ELTOPO)
|
||||||
target_link_libraries(${target} ${LAPACK_LIBRARIES})
|
target_link_libraries(${target} ${LAPACK_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_LLVM)
|
if(WITH_LLVM)
|
||||||
target_link_libraries(${target} ${LLVM_LIBRARY})
|
target_link_libraries(${target} ${LLVM_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
target_link_libraries(${target} ${PTHREADS_LIBRARIES})
|
target_link_libraries(${target} ${PTHREADS_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
if(WITH_OPENMP_STATIC)
|
if(WITH_OPENMP_STATIC)
|
||||||
target_link_libraries(${target} ${OpenMP_LIBRARIES})
|
target_link_libraries(${target} ${OpenMP_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_INPUT_NDOF)
|
if(WITH_INPUT_NDOF)
|
||||||
target_link_libraries(${target} ${NDOF_LIBRARIES})
|
target_link_libraries(${target} ${NDOF_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(WITH_SYSTEM_GLOG)
|
if(WITH_SYSTEM_GLOG)
|
||||||
target_link_libraries(${target} ${GLOG_LIBRARIES})
|
target_link_libraries(${target} ${GLOG_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_SYSTEM_GFLAGS)
|
if(WITH_SYSTEM_GFLAGS)
|
||||||
target_link_libraries(${target} ${GFLAGS_LIBRARIES})
|
target_link_libraries(${target} ${GFLAGS_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES depends on them..
|
# We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES depends on them..
|
||||||
if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
|
if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
|
||||||
target_link_libraries(${target} "extern_clew")
|
target_link_libraries(${target} "extern_clew")
|
||||||
if(WITH_CUDA_DYNLOAD)
|
if(WITH_CUDA_DYNLOAD)
|
||||||
target_link_libraries(${target} "extern_cuew")
|
target_link_libraries(${target} "extern_cuew")
|
||||||
else()
|
else()
|
||||||
target_link_libraries(${target} ${CUDA_CUDA_LIBRARY})
|
target_link_libraries(${target} ${CUDA_CUDA_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
${target}
|
${target}
|
||||||
${ZLIB_LIBRARIES}
|
${ZLIB_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
|
||||||
#system libraries with no dependencies such as platform link libs or opengl should go last
|
#system libraries with no dependencies such as platform link libs or opengl should go last
|
||||||
target_link_libraries(${target}
|
target_link_libraries(${target}
|
||||||
${BLENDER_GL_LIBRARIES})
|
${BLENDER_GL_LIBRARIES})
|
||||||
|
|
||||||
#target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
|
#target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
|
||||||
target_link_libraries(${target} ${PLATFORM_LINKLIBS})
|
target_link_libraries(${target} ${PLATFORM_LINKLIBS})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
macro(TEST_SSE_SUPPORT
|
macro(TEST_SSE_SUPPORT
|
||||||
_sse_flags
|
_sse_flags
|
||||||
_sse2_flags)
|
_sse2_flags)
|
||||||
|
|
||||||
include(CheckCSourceRuns)
|
include(CheckCSourceRuns)
|
||||||
|
|
||||||
# message(STATUS "Detecting SSE support")
|
# message(STATUS "Detecting SSE support")
|
||||||
if(CMAKE_COMPILER_IS_GNUCC OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))
|
if(CMAKE_COMPILER_IS_GNUCC OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))
|
||||||
set(${_sse_flags} "-msse")
|
set(${_sse_flags} "-msse")
|
||||||
set(${_sse2_flags} "-msse2")
|
set(${_sse2_flags} "-msse2")
|
||||||
elseif(MSVC)
|
elseif(MSVC)
|
||||||
# x86_64 has this auto enabled
|
# x86_64 has this auto enabled
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(${_sse_flags} "")
|
set(${_sse_flags} "")
|
||||||
set(${_sse2_flags} "")
|
set(${_sse2_flags} "")
|
||||||
else()
|
else()
|
||||||
set(${_sse_flags} "/arch:SSE")
|
set(${_sse_flags} "/arch:SSE")
|
||||||
set(${_sse2_flags} "/arch:SSE2")
|
set(${_sse2_flags} "/arch:SSE2")
|
||||||
endif()
|
endif()
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
set(${_sse_flags} "") # icc defaults to -msse
|
set(${_sse_flags} "") # icc defaults to -msse
|
||||||
set(${_sse2_flags} "") # icc defaults to -msse2
|
set(${_sse2_flags} "") # icc defaults to -msse2
|
||||||
else()
|
else()
|
||||||
message(WARNING "SSE flags for this compiler: '${CMAKE_C_COMPILER_ID}' not known")
|
message(WARNING "SSE flags for this compiler: '${CMAKE_C_COMPILER_ID}' not known")
|
||||||
set(${_sse_flags})
|
set(${_sse_flags})
|
||||||
set(${_sse2_flags})
|
set(${_sse2_flags})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_REQUIRED_FLAGS "${${_sse_flags}} ${${_sse2_flags}}")
|
set(CMAKE_REQUIRED_FLAGS "${${_sse_flags}} ${${_sse2_flags}}")
|
||||||
|
|
||||||
if(NOT DEFINED SUPPORT_SSE_BUILD)
|
if(NOT DEFINED SUPPORT_SSE_BUILD)
|
||||||
# result cached
|
# result cached
|
||||||
check_c_source_runs("
|
check_c_source_runs("
|
||||||
#include <xmmintrin.h>
|
#include <xmmintrin.h>
|
||||||
int main(void) { __m128 v = _mm_setzero_ps(); return 0; }"
|
int main(void) { __m128 v = _mm_setzero_ps(); return 0; }"
|
||||||
SUPPORT_SSE_BUILD)
|
SUPPORT_SSE_BUILD)
|
||||||
|
|
||||||
if(SUPPORT_SSE_BUILD)
|
if(SUPPORT_SSE_BUILD)
|
||||||
message(STATUS "SSE Support: detected.")
|
message(STATUS "SSE Support: detected.")
|
||||||
else()
|
else()
|
||||||
message(STATUS "SSE Support: missing.")
|
message(STATUS "SSE Support: missing.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT DEFINED SUPPORT_SSE2_BUILD)
|
if(NOT DEFINED SUPPORT_SSE2_BUILD)
|
||||||
# result cached
|
# result cached
|
||||||
check_c_source_runs("
|
check_c_source_runs("
|
||||||
#include <emmintrin.h>
|
#include <emmintrin.h>
|
||||||
int main(void) { __m128d v = _mm_setzero_pd(); return 0; }"
|
int main(void) { __m128d v = _mm_setzero_pd(); return 0; }"
|
||||||
SUPPORT_SSE2_BUILD)
|
SUPPORT_SSE2_BUILD)
|
||||||
|
|
||||||
if(SUPPORT_SSE2_BUILD)
|
if(SUPPORT_SSE2_BUILD)
|
||||||
message(STATUS "SSE2 Support: detected.")
|
message(STATUS "SSE2 Support: detected.")
|
||||||
else()
|
else()
|
||||||
message(STATUS "SSE2 Support: missing.")
|
message(STATUS "SSE2 Support: missing.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(CMAKE_REQUIRED_FLAGS)
|
unset(CMAKE_REQUIRED_FLAGS)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# Only print message if running CMake first time
|
# Only print message if running CMake first time
|
||||||
macro(message_first_run)
|
macro(message_first_run)
|
||||||
if(FIRST_RUN)
|
if(FIRST_RUN)
|
||||||
message(${ARGV})
|
message(${ARGV})
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# when we have warnings as errors applied globally this
|
# when we have warnings as errors applied globally this
|
||||||
@@ -612,252 +612,252 @@ endmacro()
|
|||||||
|
|
||||||
# utility macro
|
# utility macro
|
||||||
macro(remove_cc_flag
|
macro(remove_cc_flag
|
||||||
_flag)
|
_flag)
|
||||||
|
|
||||||
foreach(flag ${ARGV})
|
foreach(flag ${ARGV})
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
|
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
|
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL}")
|
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
|
string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
|
||||||
|
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
|
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
|
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
|
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
|
||||||
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(flag)
|
unset(flag)
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(add_c_flag
|
macro(add_c_flag
|
||||||
flag)
|
flag)
|
||||||
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(add_cxx_flag
|
macro(add_cxx_flag
|
||||||
flag)
|
flag)
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(remove_strict_flags)
|
macro(remove_strict_flags)
|
||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wstrict-prototypes"
|
"-Wstrict-prototypes"
|
||||||
"-Wmissing-prototypes"
|
"-Wmissing-prototypes"
|
||||||
"-Wmissing-declarations"
|
"-Wmissing-declarations"
|
||||||
"-Wmissing-format-attribute"
|
"-Wmissing-format-attribute"
|
||||||
"-Wunused-local-typedefs"
|
"-Wunused-local-typedefs"
|
||||||
"-Wunused-macros"
|
"-Wunused-macros"
|
||||||
"-Wunused-parameter"
|
"-Wunused-parameter"
|
||||||
"-Wwrite-strings"
|
"-Wwrite-strings"
|
||||||
"-Wredundant-decls"
|
"-Wredundant-decls"
|
||||||
"-Wundef"
|
"-Wundef"
|
||||||
"-Wshadow"
|
"-Wshadow"
|
||||||
"-Wdouble-promotion"
|
"-Wdouble-promotion"
|
||||||
"-Wold-style-definition"
|
"-Wold-style-definition"
|
||||||
"-Werror=[^ ]+"
|
"-Werror=[^ ]+"
|
||||||
"-Werror"
|
"-Werror"
|
||||||
)
|
)
|
||||||
|
|
||||||
# negate flags implied by '-Wall'
|
# negate flags implied by '-Wall'
|
||||||
add_c_flag("${C_REMOVE_STRICT_FLAGS}")
|
add_c_flag("${C_REMOVE_STRICT_FLAGS}")
|
||||||
add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
|
add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wunused-parameter"
|
"-Wunused-parameter"
|
||||||
"-Wunused-variable"
|
"-Wunused-variable"
|
||||||
"-Werror=[^ ]+"
|
"-Werror=[^ ]+"
|
||||||
"-Werror"
|
"-Werror"
|
||||||
)
|
)
|
||||||
|
|
||||||
# negate flags implied by '-Wall'
|
# negate flags implied by '-Wall'
|
||||||
add_c_flag("${C_REMOVE_STRICT_FLAGS}")
|
add_c_flag("${C_REMOVE_STRICT_FLAGS}")
|
||||||
add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
|
add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# TODO
|
# TODO
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(remove_extra_strict_flags)
|
macro(remove_extra_strict_flags)
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wunused-parameter"
|
"-Wunused-parameter"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wunused-parameter"
|
"-Wunused-parameter"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# TODO
|
# TODO
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# note, we can only append flags on a single file so we need to negate the options.
|
# note, we can only append flags on a single file so we need to negate the options.
|
||||||
# at the moment we cant shut up ffmpeg deprecations, so use this, but will
|
# at the moment we cant shut up ffmpeg deprecations, so use this, but will
|
||||||
# probably add more removals here.
|
# probably add more removals here.
|
||||||
macro(remove_strict_c_flags_file
|
macro(remove_strict_c_flags_file
|
||||||
filenames)
|
filenames)
|
||||||
foreach(_SOURCE ${ARGV})
|
foreach(_SOURCE ${ARGV})
|
||||||
if(CMAKE_COMPILER_IS_GNUCC OR
|
if(CMAKE_COMPILER_IS_GNUCC OR
|
||||||
(CMAKE_C_COMPILER_ID MATCHES "Clang"))
|
(CMAKE_C_COMPILER_ID MATCHES "Clang"))
|
||||||
set_source_files_properties(${_SOURCE}
|
set_source_files_properties(${_SOURCE}
|
||||||
PROPERTIES
|
PROPERTIES
|
||||||
COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
|
COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# TODO
|
# TODO
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(_SOURCE)
|
unset(_SOURCE)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(remove_strict_cxx_flags_file
|
macro(remove_strict_cxx_flags_file
|
||||||
filenames)
|
filenames)
|
||||||
remove_strict_c_flags_file(${filenames} ${ARHV})
|
remove_strict_c_flags_file(${filenames} ${ARHV})
|
||||||
foreach(_SOURCE ${ARGV})
|
foreach(_SOURCE ${ARGV})
|
||||||
if(CMAKE_COMPILER_IS_GNUCC OR
|
if(CMAKE_COMPILER_IS_GNUCC OR
|
||||||
(CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
|
(CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
|
||||||
set_source_files_properties(${_SOURCE}
|
set_source_files_properties(${_SOURCE}
|
||||||
PROPERTIES
|
PROPERTIES
|
||||||
COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
|
COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# TODO
|
# TODO
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
unset(_SOURCE)
|
unset(_SOURCE)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# External libs may need 'signed char' to be default.
|
# External libs may need 'signed char' to be default.
|
||||||
macro(remove_cc_flag_unsigned_char)
|
macro(remove_cc_flag_unsigned_char)
|
||||||
if(CMAKE_COMPILER_IS_GNUCC OR
|
if(CMAKE_COMPILER_IS_GNUCC OR
|
||||||
(CMAKE_C_COMPILER_ID MATCHES "Clang") OR
|
(CMAKE_C_COMPILER_ID MATCHES "Clang") OR
|
||||||
(CMAKE_C_COMPILER_ID MATCHES "Intel"))
|
(CMAKE_C_COMPILER_ID MATCHES "Intel"))
|
||||||
remove_cc_flag("-funsigned-char")
|
remove_cc_flag("-funsigned-char")
|
||||||
elseif(MSVC)
|
elseif(MSVC)
|
||||||
remove_cc_flag("/J")
|
remove_cc_flag("/J")
|
||||||
else()
|
else()
|
||||||
message(WARNING
|
message(WARNING
|
||||||
"Compiler '${CMAKE_C_COMPILER_ID}' failed to disable 'unsigned char' flag."
|
"Compiler '${CMAKE_C_COMPILER_ID}' failed to disable 'unsigned char' flag."
|
||||||
"Build files need updating."
|
"Build files need updating."
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
function(ADD_CHECK_C_COMPILER_FLAG
|
function(ADD_CHECK_C_COMPILER_FLAG
|
||||||
_CFLAGS
|
_CFLAGS
|
||||||
_CACHE_VAR
|
_CACHE_VAR
|
||||||
_FLAG
|
_FLAG
|
||||||
)
|
)
|
||||||
|
|
||||||
include(CheckCCompilerFlag)
|
include(CheckCCompilerFlag)
|
||||||
|
|
||||||
CHECK_C_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
|
CHECK_C_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
|
||||||
if(${_CACHE_VAR})
|
if(${_CACHE_VAR})
|
||||||
# message(STATUS "Using CFLAG: ${_FLAG}")
|
# message(STATUS "Using CFLAG: ${_FLAG}")
|
||||||
set(${_CFLAGS} "${${_CFLAGS}} ${_FLAG}" PARENT_SCOPE)
|
set(${_CFLAGS} "${${_CFLAGS}} ${_FLAG}" PARENT_SCOPE)
|
||||||
else()
|
else()
|
||||||
message(STATUS "Unsupported CFLAG: ${_FLAG}")
|
message(STATUS "Unsupported CFLAG: ${_FLAG}")
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(ADD_CHECK_CXX_COMPILER_FLAG
|
function(ADD_CHECK_CXX_COMPILER_FLAG
|
||||||
_CXXFLAGS
|
_CXXFLAGS
|
||||||
_CACHE_VAR
|
_CACHE_VAR
|
||||||
_FLAG
|
_FLAG
|
||||||
)
|
)
|
||||||
|
|
||||||
include(CheckCXXCompilerFlag)
|
include(CheckCXXCompilerFlag)
|
||||||
|
|
||||||
CHECK_CXX_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
|
CHECK_CXX_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
|
||||||
if(${_CACHE_VAR})
|
if(${_CACHE_VAR})
|
||||||
# message(STATUS "Using CXXFLAG: ${_FLAG}")
|
# message(STATUS "Using CXXFLAG: ${_FLAG}")
|
||||||
set(${_CXXFLAGS} "${${_CXXFLAGS}} ${_FLAG}" PARENT_SCOPE)
|
set(${_CXXFLAGS} "${${_CXXFLAGS}} ${_FLAG}" PARENT_SCOPE)
|
||||||
else()
|
else()
|
||||||
message(STATUS "Unsupported CXXFLAG: ${_FLAG}")
|
message(STATUS "Unsupported CXXFLAG: ${_FLAG}")
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(get_blender_version)
|
function(get_blender_version)
|
||||||
# extracts header vars and defines them in the parent scope:
|
# extracts header vars and defines them in the parent scope:
|
||||||
#
|
#
|
||||||
# - BLENDER_VERSION (major.minor)
|
# - BLENDER_VERSION (major.minor)
|
||||||
# - BLENDER_VERSION_MAJOR
|
# - BLENDER_VERSION_MAJOR
|
||||||
# - BLENDER_VERSION_MINOR
|
# - BLENDER_VERSION_MINOR
|
||||||
# - BLENDER_SUBVERSION (used for internal versioning mainly)
|
# - BLENDER_SUBVERSION (used for internal versioning mainly)
|
||||||
# - BLENDER_VERSION_CHAR (a, b, c, ...or empty string)
|
# - BLENDER_VERSION_CHAR (a, b, c, ...or empty string)
|
||||||
# - BLENDER_VERSION_CYCLE (alpha, beta, rc, release)
|
# - BLENDER_VERSION_CYCLE (alpha, beta, rc, release)
|
||||||
|
|
||||||
# So cmake depends on BKE_blender.h, beware of inf-loops!
|
# So cmake depends on BKE_blender.h, beware of inf-loops!
|
||||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h
|
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h
|
||||||
${CMAKE_BINARY_DIR}/source/blender/blenkernel/BKE_blender_version.h.done)
|
${CMAKE_BINARY_DIR}/source/blender/blenkernel/BKE_blender_version.h.done)
|
||||||
|
|
||||||
file(STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h _contents REGEX "^#define[ \t]+BLENDER_.*$")
|
file(STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h _contents REGEX "^#define[ \t]+BLENDER_.*$")
|
||||||
|
|
||||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1" _out_version "${_contents}")
|
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1" _out_version "${_contents}")
|
||||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_SUBVERSION[ \t]+([0-9]+).*" "\\1" _out_subversion "${_contents}")
|
string(REGEX REPLACE ".*#define[ \t]+BLENDER_SUBVERSION[ \t]+([0-9]+).*" "\\1" _out_subversion "${_contents}")
|
||||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CHAR[ \t]+([a-z]+).*" "\\1" _out_version_char "${_contents}")
|
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CHAR[ \t]+([a-z]+).*" "\\1" _out_version_char "${_contents}")
|
||||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1" _out_version_cycle "${_contents}")
|
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1" _out_version_cycle "${_contents}")
|
||||||
|
|
||||||
if(NOT ${_out_version} MATCHES "[0-9]+")
|
if(NOT ${_out_version} MATCHES "[0-9]+")
|
||||||
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION")
|
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT ${_out_subversion} MATCHES "[0-9]+")
|
if(NOT ${_out_subversion} MATCHES "[0-9]+")
|
||||||
message(FATAL_ERROR "Version parsing failed for BLENDER_SUBVERSION")
|
message(FATAL_ERROR "Version parsing failed for BLENDER_SUBVERSION")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# clumsy regex, only single char are ok but it could be unset
|
# clumsy regex, only single char are ok but it could be unset
|
||||||
|
|
||||||
string(LENGTH "${_out_version_char}" _out_version_char_len)
|
string(LENGTH "${_out_version_char}" _out_version_char_len)
|
||||||
if(NOT _out_version_char_len EQUAL 1)
|
if(NOT _out_version_char_len EQUAL 1)
|
||||||
set(_out_version_char "")
|
set(_out_version_char "")
|
||||||
elseif(NOT ${_out_version_char} MATCHES "[a-z]+")
|
elseif(NOT ${_out_version_char} MATCHES "[a-z]+")
|
||||||
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CHAR")
|
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CHAR")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT ${_out_version_cycle} MATCHES "[a-z]+")
|
if(NOT ${_out_version_cycle} MATCHES "[a-z]+")
|
||||||
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CYCLE")
|
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CYCLE")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
math(EXPR _out_version_major "${_out_version} / 100")
|
math(EXPR _out_version_major "${_out_version} / 100")
|
||||||
math(EXPR _out_version_minor "${_out_version} % 100")
|
math(EXPR _out_version_minor "${_out_version} % 100")
|
||||||
|
|
||||||
# for packaging, alpha to numbers
|
# for packaging, alpha to numbers
|
||||||
string(COMPARE EQUAL "${_out_version_char}" "" _out_version_char_empty)
|
string(COMPARE EQUAL "${_out_version_char}" "" _out_version_char_empty)
|
||||||
if(${_out_version_char_empty})
|
if(${_out_version_char_empty})
|
||||||
set(_out_version_char_index "0")
|
set(_out_version_char_index "0")
|
||||||
else()
|
else()
|
||||||
set(_char_ls a b c d e f g h i j k l m n o p q r s t u v w x y z)
|
set(_char_ls a b c d e f g h i j k l m n o p q r s t u v w x y z)
|
||||||
list(FIND _char_ls ${_out_version_char} _out_version_char_index)
|
list(FIND _char_ls ${_out_version_char} _out_version_char_index)
|
||||||
math(EXPR _out_version_char_index "${_out_version_char_index} + 1")
|
math(EXPR _out_version_char_index "${_out_version_char_index} + 1")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# output vars
|
# output vars
|
||||||
set(BLENDER_VERSION "${_out_version_major}.${_out_version_minor}" PARENT_SCOPE)
|
set(BLENDER_VERSION "${_out_version_major}.${_out_version_minor}" PARENT_SCOPE)
|
||||||
set(BLENDER_VERSION_MAJOR "${_out_version_major}" PARENT_SCOPE)
|
set(BLENDER_VERSION_MAJOR "${_out_version_major}" PARENT_SCOPE)
|
||||||
set(BLENDER_VERSION_MINOR "${_out_version_minor}" PARENT_SCOPE)
|
set(BLENDER_VERSION_MINOR "${_out_version_minor}" PARENT_SCOPE)
|
||||||
set(BLENDER_SUBVERSION "${_out_subversion}" PARENT_SCOPE)
|
set(BLENDER_SUBVERSION "${_out_subversion}" PARENT_SCOPE)
|
||||||
set(BLENDER_VERSION_CHAR "${_out_version_char}" PARENT_SCOPE)
|
set(BLENDER_VERSION_CHAR "${_out_version_char}" PARENT_SCOPE)
|
||||||
set(BLENDER_VERSION_CHAR_INDEX "${_out_version_char_index}" PARENT_SCOPE)
|
set(BLENDER_VERSION_CHAR_INDEX "${_out_version_char_index}" PARENT_SCOPE)
|
||||||
set(BLENDER_VERSION_CYCLE "${_out_version_cycle}" PARENT_SCOPE)
|
set(BLENDER_VERSION_CYCLE "${_out_version_cycle}" PARENT_SCOPE)
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
@@ -865,48 +865,48 @@ endfunction()
|
|||||||
# hacks to override initial project settings
|
# hacks to override initial project settings
|
||||||
# these macros must be called directly before/after project(Blender)
|
# these macros must be called directly before/after project(Blender)
|
||||||
macro(blender_project_hack_pre)
|
macro(blender_project_hack_pre)
|
||||||
# ------------------
|
# ------------------
|
||||||
# GCC -O3 HACK START
|
# GCC -O3 HACK START
|
||||||
# needed because O3 can cause problems but
|
# needed because O3 can cause problems but
|
||||||
# allow the builder to set O3 manually after.
|
# allow the builder to set O3 manually after.
|
||||||
if(DEFINED CMAKE_C_FLAGS_RELEASE)
|
if(DEFINED CMAKE_C_FLAGS_RELEASE)
|
||||||
set(_reset_standard_cflags_rel OFF)
|
set(_reset_standard_cflags_rel OFF)
|
||||||
else()
|
else()
|
||||||
set(_reset_standard_cflags_rel ON)
|
set(_reset_standard_cflags_rel ON)
|
||||||
endif()
|
endif()
|
||||||
if(DEFINED CMAKE_CXX_FLAGS_RELEASE)
|
if(DEFINED CMAKE_CXX_FLAGS_RELEASE)
|
||||||
set(_reset_standard_cxxflags_rel OFF)
|
set(_reset_standard_cxxflags_rel OFF)
|
||||||
else()
|
else()
|
||||||
set(_reset_standard_cxxflags_rel ON)
|
set(_reset_standard_cxxflags_rel ON)
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
macro(blender_project_hack_post)
|
macro(blender_project_hack_post)
|
||||||
# ----------------
|
# ----------------
|
||||||
# GCC -O3 HACK END
|
# GCC -O3 HACK END
|
||||||
if(_reset_standard_cflags_rel)
|
if(_reset_standard_cflags_rel)
|
||||||
string(REGEX REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
|
string(REGEX REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
|
||||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "" FORCE)
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "" FORCE)
|
||||||
mark_as_advanced(CMAKE_C_FLAGS_RELEASE)
|
mark_as_advanced(CMAKE_C_FLAGS_RELEASE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(_reset_standard_cxxflags_rel)
|
if(_reset_standard_cxxflags_rel)
|
||||||
string(REGEX REPLACE "-O3" "-O2" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
|
string(REGEX REPLACE "-O3" "-O2" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "" FORCE)
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "" FORCE)
|
||||||
mark_as_advanced(CMAKE_CXX_FLAGS_RELEASE)
|
mark_as_advanced(CMAKE_CXX_FLAGS_RELEASE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(_reset_standard_cflags_rel)
|
unset(_reset_standard_cflags_rel)
|
||||||
unset(_reset_standard_cxxflags_rel)
|
unset(_reset_standard_cxxflags_rel)
|
||||||
|
|
||||||
# ------------------------------------------------------------------
|
# ------------------------------------------------------------------
|
||||||
# workaround for omission in cmake 2.8.4's GNU.cmake, fixed in 2.8.5
|
# workaround for omission in cmake 2.8.4's GNU.cmake, fixed in 2.8.5
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
if(NOT DARWIN)
|
if(NOT DARWIN)
|
||||||
set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ")
|
set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
@@ -914,297 +914,297 @@ endmacro()
|
|||||||
# only install them at the end so the directories don't get cleared with
|
# only install them at the end so the directories don't get cleared with
|
||||||
# the files in them. used by cycles to install addon.
|
# the files in them. used by cycles to install addon.
|
||||||
function(delayed_install
|
function(delayed_install
|
||||||
base
|
base
|
||||||
files
|
files
|
||||||
destination)
|
destination)
|
||||||
|
|
||||||
foreach(f ${files})
|
foreach(f ${files})
|
||||||
if(IS_ABSOLUTE ${f})
|
if(IS_ABSOLUTE ${f})
|
||||||
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${f})
|
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${f})
|
||||||
else()
|
else()
|
||||||
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${base}/${f})
|
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${base}/${f})
|
||||||
endif()
|
endif()
|
||||||
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_DESTINATIONS ${destination})
|
set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_DESTINATIONS ${destination})
|
||||||
endforeach()
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# note this is a function instead of a macro so that ${BUILD_TYPE} in targetdir
|
# note this is a function instead of a macro so that ${BUILD_TYPE} in targetdir
|
||||||
# does not get expanded in calling but is preserved
|
# does not get expanded in calling but is preserved
|
||||||
function(delayed_do_install
|
function(delayed_do_install
|
||||||
targetdir)
|
targetdir)
|
||||||
|
|
||||||
get_property(files GLOBAL PROPERTY DELAYED_INSTALL_FILES)
|
get_property(files GLOBAL PROPERTY DELAYED_INSTALL_FILES)
|
||||||
get_property(destinations GLOBAL PROPERTY DELAYED_INSTALL_DESTINATIONS)
|
get_property(destinations GLOBAL PROPERTY DELAYED_INSTALL_DESTINATIONS)
|
||||||
|
|
||||||
if(files)
|
if(files)
|
||||||
list(LENGTH files n)
|
list(LENGTH files n)
|
||||||
math(EXPR n "${n}-1")
|
math(EXPR n "${n}-1")
|
||||||
|
|
||||||
foreach(i RANGE ${n})
|
foreach(i RANGE ${n})
|
||||||
list(GET files ${i} f)
|
list(GET files ${i} f)
|
||||||
list(GET destinations ${i} d)
|
list(GET destinations ${i} d)
|
||||||
if(NOT IS_ABSOLUTE ${d})
|
if(NOT IS_ABSOLUTE ${d})
|
||||||
install(FILES ${f} DESTINATION ${targetdir}/${d})
|
install(FILES ${f} DESTINATION ${targetdir}/${d})
|
||||||
else()
|
else()
|
||||||
install(FILES ${f} DESTINATION ${d})
|
install(FILES ${f} DESTINATION ${d})
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
function(data_to_c
|
function(data_to_c
|
||||||
file_from file_to
|
file_from file_to
|
||||||
list_to_add
|
list_to_add
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND ${list_to_add} ${file_to})
|
list(APPEND ${list_to_add} ${file_to})
|
||||||
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
||||||
|
|
||||||
get_filename_component(_file_to_path ${file_to} PATH)
|
get_filename_component(_file_to_path ${file_to} PATH)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${file_to}
|
OUTPUT ${file_to}
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
||||||
COMMAND "$<TARGET_FILE:datatoc>" ${file_from} ${file_to}
|
COMMAND "$<TARGET_FILE:datatoc>" ${file_from} ${file_to}
|
||||||
DEPENDS ${file_from} datatoc)
|
DEPENDS ${file_from} datatoc)
|
||||||
|
|
||||||
set_source_files_properties(${file_to} PROPERTIES GENERATED TRUE)
|
set_source_files_properties(${file_to} PROPERTIES GENERATED TRUE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
# same as above but generates the var name and output automatic.
|
# same as above but generates the var name and output automatic.
|
||||||
function(data_to_c_simple
|
function(data_to_c_simple
|
||||||
file_from
|
file_from
|
||||||
list_to_add
|
list_to_add
|
||||||
)
|
)
|
||||||
|
|
||||||
# remove ../'s
|
# remove ../'s
|
||||||
get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
|
get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
|
||||||
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${file_from}.c REALPATH)
|
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${file_from}.c REALPATH)
|
||||||
|
|
||||||
list(APPEND ${list_to_add} ${_file_to})
|
list(APPEND ${list_to_add} ${_file_to})
|
||||||
source_group(Generated FILES ${_file_to})
|
source_group(Generated FILES ${_file_to})
|
||||||
list(APPEND ${list_to_add} ${file_from})
|
list(APPEND ${list_to_add} ${file_from})
|
||||||
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
||||||
|
|
||||||
get_filename_component(_file_to_path ${_file_to} PATH)
|
get_filename_component(_file_to_path ${_file_to} PATH)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${_file_to}
|
OUTPUT ${_file_to}
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
||||||
COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
|
COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
|
||||||
DEPENDS ${_file_from} datatoc)
|
DEPENDS ${_file_from} datatoc)
|
||||||
|
|
||||||
set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
|
set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# macro for converting pixmap directory to a png and then a c file
|
# macro for converting pixmap directory to a png and then a c file
|
||||||
function(data_to_c_simple_icons
|
function(data_to_c_simple_icons
|
||||||
path_from icon_prefix icon_names
|
path_from icon_prefix icon_names
|
||||||
list_to_add
|
list_to_add
|
||||||
)
|
)
|
||||||
|
|
||||||
# Conversion steps
|
# Conversion steps
|
||||||
# path_from -> _file_from -> _file_to
|
# path_from -> _file_from -> _file_to
|
||||||
# foo/*.dat -> foo.png -> foo.png.c
|
# foo/*.dat -> foo.png -> foo.png.c
|
||||||
|
|
||||||
get_filename_component(_path_from_abs ${path_from} ABSOLUTE)
|
get_filename_component(_path_from_abs ${path_from} ABSOLUTE)
|
||||||
# remove ../'s
|
# remove ../'s
|
||||||
get_filename_component(_file_from ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png REALPATH)
|
get_filename_component(_file_from ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png REALPATH)
|
||||||
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png.c REALPATH)
|
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png.c REALPATH)
|
||||||
|
|
||||||
list(APPEND ${list_to_add} ${_file_to})
|
list(APPEND ${list_to_add} ${_file_to})
|
||||||
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
||||||
|
|
||||||
get_filename_component(_file_to_path ${_file_to} PATH)
|
get_filename_component(_file_to_path ${_file_to} PATH)
|
||||||
|
|
||||||
# Construct a list of absolute paths from input
|
# Construct a list of absolute paths from input
|
||||||
set(_icon_files)
|
set(_icon_files)
|
||||||
foreach(_var ${icon_names})
|
foreach(_var ${icon_names})
|
||||||
list(APPEND _icon_files "${_path_from_abs}/${icon_prefix}${_var}.dat")
|
list(APPEND _icon_files "${_path_from_abs}/${icon_prefix}${_var}.dat")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${_file_from} ${_file_to}
|
OUTPUT ${_file_from} ${_file_to}
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
||||||
#COMMAND python3 ${CMAKE_SOURCE_DIR}/source/blender/datatoc/datatoc_icon.py ${_path_from_abs} ${_file_from}
|
#COMMAND python3 ${CMAKE_SOURCE_DIR}/source/blender/datatoc/datatoc_icon.py ${_path_from_abs} ${_file_from}
|
||||||
COMMAND "$<TARGET_FILE:datatoc_icon>" ${_path_from_abs} ${_file_from}
|
COMMAND "$<TARGET_FILE:datatoc_icon>" ${_path_from_abs} ${_file_from}
|
||||||
COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
|
COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
|
||||||
DEPENDS
|
DEPENDS
|
||||||
${_icon_files}
|
${_icon_files}
|
||||||
datatoc_icon
|
datatoc_icon
|
||||||
datatoc
|
datatoc
|
||||||
# could be an arg but for now we only create icons depending on UI_icons.h
|
# could be an arg but for now we only create icons depending on UI_icons.h
|
||||||
${CMAKE_SOURCE_DIR}/source/blender/editors/include/UI_icons.h
|
${CMAKE_SOURCE_DIR}/source/blender/editors/include/UI_icons.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set_source_files_properties(${_file_from} ${_file_to} PROPERTIES GENERATED TRUE)
|
set_source_files_properties(${_file_from} ${_file_to} PROPERTIES GENERATED TRUE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# XXX Not used for now...
|
# XXX Not used for now...
|
||||||
function(svg_to_png
|
function(svg_to_png
|
||||||
file_from
|
file_from
|
||||||
file_to
|
file_to
|
||||||
dpi
|
dpi
|
||||||
list_to_add
|
list_to_add
|
||||||
)
|
)
|
||||||
|
|
||||||
# remove ../'s
|
# remove ../'s
|
||||||
get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
|
get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
|
||||||
get_filename_component(_file_to ${CMAKE_CURRENT_SOURCE_DIR}/${file_to} REALPATH)
|
get_filename_component(_file_to ${CMAKE_CURRENT_SOURCE_DIR}/${file_to} REALPATH)
|
||||||
|
|
||||||
list(APPEND ${list_to_add} ${_file_to})
|
list(APPEND ${list_to_add} ${_file_to})
|
||||||
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
||||||
|
|
||||||
find_program(INKSCAPE_EXE inkscape)
|
find_program(INKSCAPE_EXE inkscape)
|
||||||
mark_as_advanced(INKSCAPE_EXE)
|
mark_as_advanced(INKSCAPE_EXE)
|
||||||
|
|
||||||
if(INKSCAPE_EXE)
|
if(INKSCAPE_EXE)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
# in OS X app bundle, the binary is a shim that doesn't take any
|
# in OS X app bundle, the binary is a shim that doesn't take any
|
||||||
# command line arguments, replace it with the actual binary
|
# command line arguments, replace it with the actual binary
|
||||||
string(REPLACE "MacOS/Inkscape" "Resources/bin/inkscape" INKSCAPE_REAL_EXE ${INKSCAPE_EXE})
|
string(REPLACE "MacOS/Inkscape" "Resources/bin/inkscape" INKSCAPE_REAL_EXE ${INKSCAPE_EXE})
|
||||||
if(EXISTS "${INKSCAPE_REAL_EXE}")
|
if(EXISTS "${INKSCAPE_REAL_EXE}")
|
||||||
set(INKSCAPE_EXE ${INKSCAPE_REAL_EXE})
|
set(INKSCAPE_EXE ${INKSCAPE_REAL_EXE})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${_file_to}
|
OUTPUT ${_file_to}
|
||||||
COMMAND ${INKSCAPE_EXE} ${_file_from} --export-dpi=${dpi} --without-gui --export-png=${_file_to}
|
COMMAND ${INKSCAPE_EXE} ${_file_from} --export-dpi=${dpi} --without-gui --export-png=${_file_to}
|
||||||
DEPENDS ${_file_from} ${INKSCAPE_EXE}
|
DEPENDS ${_file_from} ${INKSCAPE_EXE}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
message(WARNING "Inkscape not found, could not re-generate ${_file_to} from ${_file_from}!")
|
message(WARNING "Inkscape not found, could not re-generate ${_file_to} from ${_file_from}!")
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(msgfmt_simple
|
function(msgfmt_simple
|
||||||
file_from
|
file_from
|
||||||
list_to_add
|
list_to_add
|
||||||
)
|
)
|
||||||
|
|
||||||
# remove ../'s
|
# remove ../'s
|
||||||
get_filename_component(_file_from_we ${file_from} NAME_WE)
|
get_filename_component(_file_from_we ${file_from} NAME_WE)
|
||||||
|
|
||||||
get_filename_component(_file_from ${file_from} REALPATH)
|
get_filename_component(_file_from ${file_from} REALPATH)
|
||||||
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${_file_from_we}.mo REALPATH)
|
get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${_file_from_we}.mo REALPATH)
|
||||||
|
|
||||||
list(APPEND ${list_to_add} ${_file_to})
|
list(APPEND ${list_to_add} ${_file_to})
|
||||||
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
|
||||||
|
|
||||||
get_filename_component(_file_to_path ${_file_to} PATH)
|
get_filename_component(_file_to_path ${_file_to} PATH)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${_file_to}
|
OUTPUT ${_file_to}
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
||||||
COMMAND "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
|
COMMAND "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
|
||||||
DEPENDS msgfmt ${_file_from})
|
DEPENDS msgfmt ${_file_from})
|
||||||
|
|
||||||
set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
|
set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(find_python_package
|
function(find_python_package
|
||||||
package
|
package
|
||||||
)
|
)
|
||||||
|
|
||||||
string(TOUPPER ${package} _upper_package)
|
string(TOUPPER ${package} _upper_package)
|
||||||
|
|
||||||
# set but invalid
|
# set but invalid
|
||||||
if((NOT ${PYTHON_${_upper_package}_PATH} STREQUAL "") AND
|
if((NOT ${PYTHON_${_upper_package}_PATH} STREQUAL "") AND
|
||||||
(NOT ${PYTHON_${_upper_package}_PATH} MATCHES NOTFOUND))
|
(NOT ${PYTHON_${_upper_package}_PATH} MATCHES NOTFOUND))
|
||||||
# if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}/${package}")
|
# if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}/${package}")
|
||||||
# message(WARNING "PYTHON_${_upper_package}_PATH is invalid, ${package} not found in '${PYTHON_${_upper_package}_PATH}' "
|
# message(WARNING "PYTHON_${_upper_package}_PATH is invalid, ${package} not found in '${PYTHON_${_upper_package}_PATH}' "
|
||||||
# "WITH_PYTHON_INSTALL_${_upper_package} option will be ignored when installing python")
|
# "WITH_PYTHON_INSTALL_${_upper_package} option will be ignored when installing python")
|
||||||
# set(WITH_PYTHON_INSTALL${_upper_package} OFF)
|
# set(WITH_PYTHON_INSTALL${_upper_package} OFF)
|
||||||
# endif()
|
# endif()
|
||||||
# not set, so initialize
|
# not set, so initialize
|
||||||
else()
|
else()
|
||||||
string(REPLACE "." ";" _PY_VER_SPLIT "${PYTHON_VERSION}")
|
string(REPLACE "." ";" _PY_VER_SPLIT "${PYTHON_VERSION}")
|
||||||
list(GET _PY_VER_SPLIT 0 _PY_VER_MAJOR)
|
list(GET _PY_VER_SPLIT 0 _PY_VER_MAJOR)
|
||||||
|
|
||||||
# re-cache
|
# re-cache
|
||||||
unset(PYTHON_${_upper_package}_PATH CACHE)
|
unset(PYTHON_${_upper_package}_PATH CACHE)
|
||||||
find_path(PYTHON_${_upper_package}_PATH
|
find_path(PYTHON_${_upper_package}_PATH
|
||||||
NAMES
|
NAMES
|
||||||
${package}
|
${package}
|
||||||
HINTS
|
HINTS
|
||||||
"${PYTHON_LIBPATH}/"
|
"${PYTHON_LIBPATH}/"
|
||||||
"${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
|
"${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
|
||||||
"${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/"
|
"${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/"
|
||||||
PATH_SUFFIXES
|
PATH_SUFFIXES
|
||||||
site-packages
|
site-packages
|
||||||
dist-packages
|
dist-packages
|
||||||
vendor-packages
|
vendor-packages
|
||||||
NO_DEFAULT_PATH
|
NO_DEFAULT_PATH
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}")
|
if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}")
|
||||||
message(WARNING
|
message(WARNING
|
||||||
"Python package '${package}' path could not be found in:\n"
|
"Python package '${package}' path could not be found in:\n"
|
||||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${package}', "
|
||||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${package}', "
|
||||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${package}', "
|
||||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${package}', "
|
||||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}', "
|
||||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}', "
|
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}', "
|
||||||
"\n"
|
"\n"
|
||||||
"The 'WITH_PYTHON_INSTALL_${_upper_package}' option will be ignored when installing Python.\n"
|
"The 'WITH_PYTHON_INSTALL_${_upper_package}' option will be ignored when installing Python.\n"
|
||||||
"The build will be usable, only add-ons that depend on this package won't be functional."
|
"The build will be usable, only add-ons that depend on this package won't be functional."
|
||||||
)
|
)
|
||||||
set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
|
set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
|
||||||
else()
|
else()
|
||||||
message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
|
message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# like Python's 'print(dir())'
|
# like Python's 'print(dir())'
|
||||||
function(print_all_vars)
|
function(print_all_vars)
|
||||||
get_cmake_property(_vars VARIABLES)
|
get_cmake_property(_vars VARIABLES)
|
||||||
foreach(_var ${_vars})
|
foreach(_var ${_vars})
|
||||||
message("${_var}=${${_var}}")
|
message("${_var}=${${_var}}")
|
||||||
endforeach()
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
macro(openmp_delayload
|
macro(openmp_delayload
|
||||||
projectname
|
projectname
|
||||||
)
|
)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
if(MSVC_VERSION EQUAL 1800)
|
if(MSVC_VERSION EQUAL 1800)
|
||||||
set(OPENMP_DLL_NAME "vcomp120")
|
set(OPENMP_DLL_NAME "vcomp120")
|
||||||
else()
|
else()
|
||||||
set(OPENMP_DLL_NAME "vcomp140")
|
set(OPENMP_DLL_NAME "vcomp140")
|
||||||
endif()
|
endif()
|
||||||
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELEASE "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELEASE "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||||
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_DEBUG "/DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib")
|
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_DEBUG "/DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib")
|
||||||
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||||
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_MINSIZEREL "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_MINSIZEREL "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(WINDOWS_SIGN_TARGET target)
|
macro(WINDOWS_SIGN_TARGET target)
|
||||||
if(WITH_WINDOWS_CODESIGN)
|
if(WITH_WINDOWS_CODESIGN)
|
||||||
if(!SIGNTOOL_EXE)
|
if(!SIGNTOOL_EXE)
|
||||||
error("Codesigning is enabled, but signtool is not found")
|
error("Codesigning is enabled, but signtool is not found")
|
||||||
else()
|
else()
|
||||||
if(WINDOWS_CODESIGN_PFX_PASSWORD)
|
if(WINDOWS_CODESIGN_PFX_PASSWORD)
|
||||||
set(CODESIGNPASSWORD /p ${WINDOWS_CODESIGN_PFX_PASSWORD})
|
set(CODESIGNPASSWORD /p ${WINDOWS_CODESIGN_PFX_PASSWORD})
|
||||||
else()
|
else()
|
||||||
if($ENV{PFXPASSWORD})
|
if($ENV{PFXPASSWORD})
|
||||||
set(CODESIGNPASSWORD /p $ENV{PFXPASSWORD})
|
set(CODESIGNPASSWORD /p $ENV{PFXPASSWORD})
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "WITH_WINDOWS_CODESIGN is on but WINDOWS_CODESIGN_PFX_PASSWORD not set, and environment variable PFXPASSWORD not found, unable to sign code.")
|
message(FATAL_ERROR "WITH_WINDOWS_CODESIGN is on but WINDOWS_CODESIGN_PFX_PASSWORD not set, and environment variable PFXPASSWORD not found, unable to sign code.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
add_custom_command(TARGET ${target}
|
add_custom_command(TARGET ${target}
|
||||||
POST_BUILD
|
POST_BUILD
|
||||||
COMMAND ${SIGNTOOL_EXE} sign /f ${WINDOWS_CODESIGN_PFX} ${CODESIGNPASSWORD} $<TARGET_FILE:${target}>
|
COMMAND ${SIGNTOOL_EXE} sign /f ${WINDOWS_CODESIGN_PFX} ${CODESIGNPASSWORD} $<TARGET_FILE:${target}>
|
||||||
VERBATIM
|
VERBATIM
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|||||||
@@ -23,15 +23,15 @@ SET(CPACK_PACKAGE_VERSION_PATCH "${PATCH_VERSION}")
|
|||||||
# Get the build revision, note that this can get out-of-sync, so for packaging run cmake first.
|
# Get the build revision, note that this can get out-of-sync, so for packaging run cmake first.
|
||||||
set(MY_WC_HASH "unknown")
|
set(MY_WC_HASH "unknown")
|
||||||
if(EXISTS ${CMAKE_SOURCE_DIR}/.git/)
|
if(EXISTS ${CMAKE_SOURCE_DIR}/.git/)
|
||||||
find_package(Git)
|
find_package(Git)
|
||||||
if(GIT_FOUND)
|
if(GIT_FOUND)
|
||||||
# message(STATUS "Found Git: ${GIT_EXECUTABLE}")
|
# message(STATUS "Found Git: ${GIT_EXECUTABLE}")
|
||||||
execute_process(COMMAND git rev-parse --short=12 HEAD
|
execute_process(COMMAND git rev-parse --short=12 HEAD
|
||||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||||
OUTPUT_VARIABLE MY_WC_HASH
|
OUTPUT_VARIABLE MY_WC_HASH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
ERROR_QUIET)
|
ERROR_QUIET)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
set(BUILD_REV ${MY_WC_HASH})
|
set(BUILD_REV ${MY_WC_HASH})
|
||||||
unset(MY_WC_HASH)
|
unset(MY_WC_HASH)
|
||||||
@@ -41,61 +41,61 @@ unset(MY_WC_HASH)
|
|||||||
execute_process(COMMAND date "+%Y%m%d" OUTPUT_VARIABLE CPACK_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND date "+%Y%m%d" OUTPUT_VARIABLE CPACK_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER)
|
string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(PACKAGE_ARCH windows64)
|
set(PACKAGE_ARCH windows64)
|
||||||
else()
|
else()
|
||||||
set(PACKAGE_ARCH windows32)
|
set(PACKAGE_ARCH windows32)
|
||||||
endif()
|
endif()
|
||||||
else(MSVC)
|
else(MSVC)
|
||||||
set(PACKAGE_ARCH ${CMAKE_SYSTEM_PROCESSOR})
|
set(PACKAGE_ARCH ${CMAKE_SYSTEM_PROCESSOR})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CPACK_OVERRIDE_PACKAGENAME)
|
if(CPACK_OVERRIDE_PACKAGENAME)
|
||||||
set(CPACK_PACKAGE_FILE_NAME ${CPACK_OVERRIDE_PACKAGENAME}-${PACKAGE_ARCH})
|
set(CPACK_PACKAGE_FILE_NAME ${CPACK_OVERRIDE_PACKAGENAME}-${PACKAGE_ARCH})
|
||||||
else()
|
else()
|
||||||
set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME_LOWER}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-git${CPACK_DATE}.${BUILD_REV}-${PACKAGE_ARCH})
|
set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME_LOWER}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-git${CPACK_DATE}.${BUILD_REV}-${PACKAGE_ARCH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
# RPM packages
|
# RPM packages
|
||||||
include(build_files/cmake/RpmBuild.cmake)
|
include(build_files/cmake/RpmBuild.cmake)
|
||||||
if(RPMBUILD_FOUND)
|
if(RPMBUILD_FOUND)
|
||||||
set(CPACK_GENERATOR "RPM")
|
set(CPACK_GENERATOR "RPM")
|
||||||
set(CPACK_RPM_PACKAGE_RELEASE "git${CPACK_DATE}.${BUILD_REV}")
|
set(CPACK_RPM_PACKAGE_RELEASE "git${CPACK_DATE}.${BUILD_REV}")
|
||||||
set(CPACK_SET_DESTDIR "true")
|
set(CPACK_SET_DESTDIR "true")
|
||||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
|
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
|
||||||
set(CPACK_PACKAGE_RELOCATABLE "false")
|
set(CPACK_PACKAGE_RELOCATABLE "false")
|
||||||
set(CPACK_RPM_PACKAGE_LICENSE "GPLv2+ and Apache 2.0")
|
set(CPACK_RPM_PACKAGE_LICENSE "GPLv2+ and Apache 2.0")
|
||||||
set(CPACK_RPM_PACKAGE_GROUP "Amusements/Multimedia")
|
set(CPACK_RPM_PACKAGE_GROUP "Amusements/Multimedia")
|
||||||
set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_SOURCE_DIR}/build_files/package_spec/rpm/blender.spec.in")
|
set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_SOURCE_DIR}/build_files/package_spec/rpm/blender.spec.in")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Mac Bundle
|
# Mac Bundle
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(CPACK_GENERATOR "DragNDrop")
|
set(CPACK_GENERATOR "DragNDrop")
|
||||||
|
|
||||||
# Libraries are bundled directly
|
# Libraries are bundled directly
|
||||||
set(CPACK_COMPONENT_LIBRARIES_HIDDEN TRUE)
|
set(CPACK_COMPONENT_LIBRARIES_HIDDEN TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Blender Foundation/Blender")
|
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Blender Foundation/Blender")
|
||||||
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Blender Foundation/Blender")
|
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Blender Foundation/Blender")
|
||||||
|
|
||||||
set(CPACK_NSIS_MUI_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
|
set(CPACK_NSIS_MUI_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
|
||||||
set(CPACK_NSIS_COMPRESSOR "/SOLID lzma")
|
set(CPACK_NSIS_COMPRESSOR "/SOLID lzma")
|
||||||
|
|
||||||
set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/release/text/GPL3-license.txt)
|
set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/release/text/GPL3-license.txt)
|
||||||
set(CPACK_WIX_PRODUCT_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
|
set(CPACK_WIX_PRODUCT_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
|
||||||
set(CPACK_WIX_UPGRADE_GUID "B767E4FD-7DE7-4094-B051-3AE62E13A17A")
|
set(CPACK_WIX_UPGRADE_GUID "B767E4FD-7DE7-4094-B051-3AE62E13A17A")
|
||||||
|
|
||||||
set(CPACK_WIX_TEMPLATE ${LIBDIR}/package/installer_wix/WIX.template)
|
set(CPACK_WIX_TEMPLATE ${LIBDIR}/package/installer_wix/WIX.template)
|
||||||
set(CPACK_WIX_UI_BANNER ${LIBDIR}/package/installer_wix/WIX_UI_BANNER.bmp)
|
set(CPACK_WIX_UI_BANNER ${LIBDIR}/package/installer_wix/WIX_UI_BANNER.bmp)
|
||||||
set(CPACK_WIX_UI_DIALOG ${LIBDIR}/package/installer_wix/WIX_UI_DIALOG.bmp)
|
set(CPACK_WIX_UI_DIALOG ${LIBDIR}/package/installer_wix/WIX_UI_DIALOG.bmp)
|
||||||
|
|
||||||
#force lzma instead of deflate
|
#force lzma instead of deflate
|
||||||
set(CPACK_WIX_LIGHT_EXTRA_FLAGS -dcl:high)
|
set(CPACK_WIX_LIGHT_EXTRA_FLAGS -dcl:high)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CPACK_PACKAGE_EXECUTABLES "blender" "blender")
|
set(CPACK_PACKAGE_EXECUTABLES "blender" "blender")
|
||||||
@@ -106,30 +106,30 @@ include(CPack)
|
|||||||
# Target for build_archive.py script, to automatically pass along
|
# Target for build_archive.py script, to automatically pass along
|
||||||
# version, revision, platform, build directory
|
# version, revision, platform, build directory
|
||||||
macro(add_package_archive packagename extension)
|
macro(add_package_archive packagename extension)
|
||||||
set(build_archive python ${CMAKE_SOURCE_DIR}/build_files/package_spec/build_archive.py)
|
set(build_archive python ${CMAKE_SOURCE_DIR}/build_files/package_spec/build_archive.py)
|
||||||
set(package_output ${CMAKE_BINARY_DIR}/release/${packagename}.${extension})
|
set(package_output ${CMAKE_BINARY_DIR}/release/${packagename}.${extension})
|
||||||
|
|
||||||
add_custom_target(package_archive DEPENDS ${package_output})
|
add_custom_target(package_archive DEPENDS ${package_output})
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${package_output}
|
OUTPUT ${package_output}
|
||||||
COMMAND ${build_archive} ${packagename} ${extension} bin release
|
COMMAND ${build_archive} ${packagename} ${extension} bin release
|
||||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||||
unset(build_archive)
|
unset(build_archive)
|
||||||
unset(package_output)
|
unset(package_output)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
add_package_archive(
|
add_package_archive(
|
||||||
"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}"
|
"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}"
|
||||||
"zip")
|
"zip")
|
||||||
elseif(UNIX)
|
elseif(UNIX)
|
||||||
# platform name could be tweaked, to include glibc, and ensure processor is correct (i386 vs i686)
|
# platform name could be tweaked, to include glibc, and ensure processor is correct (i386 vs i686)
|
||||||
string(TOLOWER ${CMAKE_SYSTEM_NAME} PACKAGE_SYSTEM_NAME)
|
string(TOLOWER ${CMAKE_SYSTEM_NAME} PACKAGE_SYSTEM_NAME)
|
||||||
|
|
||||||
add_package_archive(
|
add_package_archive(
|
||||||
"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}"
|
"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}"
|
||||||
"tar.bz2")
|
"tar.bz2")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(MAJOR_VERSION)
|
unset(MAJOR_VERSION)
|
||||||
|
|||||||
@@ -27,102 +27,102 @@ macro(find_package_wrapper)
|
|||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
if(NOT DEFINED LIBDIR)
|
if(NOT DEFINED LIBDIR)
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin)
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin)
|
||||||
# Prefer lib directory paths
|
# Prefer lib directory paths
|
||||||
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
||||||
set(CMAKE_PREFIX_PATH ${LIB_SUBDIRS})
|
set(CMAKE_PREFIX_PATH ${LIB_SUBDIRS})
|
||||||
else()
|
else()
|
||||||
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
||||||
endif()
|
endif()
|
||||||
if(NOT EXISTS "${LIBDIR}/")
|
if(NOT EXISTS "${LIBDIR}/")
|
||||||
message(FATAL_ERROR "Mac OSX requires pre-compiled libs at: '${LIBDIR}'")
|
message(FATAL_ERROR "Mac OSX requires pre-compiled libs at: '${LIBDIR}'")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
find_package(OpenAL)
|
find_package(OpenAL)
|
||||||
if(OPENAL_FOUND)
|
if(OPENAL_FOUND)
|
||||||
set(WITH_OPENAL ON)
|
set(WITH_OPENAL ON)
|
||||||
else()
|
else()
|
||||||
set(WITH_OPENAL OFF)
|
set(WITH_OPENAL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
set(ALEMBIC ${LIBDIR}/alembic)
|
set(ALEMBIC ${LIBDIR}/alembic)
|
||||||
set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
|
set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
|
||||||
set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
|
set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
|
||||||
set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
|
set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
|
||||||
set(ALEMBIC_LIBRARIES Alembic)
|
set(ALEMBIC_LIBRARIES Alembic)
|
||||||
set(ALEMBIC_FOUND ON)
|
set(ALEMBIC_FOUND ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENSUBDIV)
|
if(WITH_OPENSUBDIV)
|
||||||
set(OPENSUBDIV ${LIBDIR}/opensubdiv)
|
set(OPENSUBDIV ${LIBDIR}/opensubdiv)
|
||||||
set(OPENSUBDIV_LIBPATH ${OPENSUBDIV}/lib)
|
set(OPENSUBDIV_LIBPATH ${OPENSUBDIV}/lib)
|
||||||
find_library(OSD_LIB_CPU NAMES osdCPU PATHS ${OPENSUBDIV_LIBPATH})
|
find_library(OSD_LIB_CPU NAMES osdCPU PATHS ${OPENSUBDIV_LIBPATH})
|
||||||
find_library(OSD_LIB_GPU NAMES osdGPU PATHS ${OPENSUBDIV_LIBPATH})
|
find_library(OSD_LIB_GPU NAMES osdGPU PATHS ${OPENSUBDIV_LIBPATH})
|
||||||
set(OPENSUBDIV_INCLUDE_DIR ${OPENSUBDIV}/include)
|
set(OPENSUBDIV_INCLUDE_DIR ${OPENSUBDIV}/include)
|
||||||
set(OPENSUBDIV_INCLUDE_DIRS ${OPENSUBDIV_INCLUDE_DIR})
|
set(OPENSUBDIV_INCLUDE_DIRS ${OPENSUBDIV_INCLUDE_DIR})
|
||||||
list(APPEND OPENSUBDIV_LIBRARIES ${OSD_LIB_CPU} ${OSD_LIB_GPU})
|
list(APPEND OPENSUBDIV_LIBRARIES ${OSD_LIB_CPU} ${OSD_LIB_GPU})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
find_library(JACK_FRAMEWORK
|
find_library(JACK_FRAMEWORK
|
||||||
NAMES jackmp
|
NAMES jackmp
|
||||||
)
|
)
|
||||||
set(JACK_INCLUDE_DIRS ${JACK_FRAMEWORK}/headers)
|
set(JACK_INCLUDE_DIRS ${JACK_FRAMEWORK}/headers)
|
||||||
if(NOT JACK_FRAMEWORK)
|
if(NOT JACK_FRAMEWORK)
|
||||||
set(WITH_JACK OFF)
|
set(WITH_JACK OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_SNDFILE)
|
if(WITH_CODEC_SNDFILE)
|
||||||
set(LIBSNDFILE ${LIBDIR}/sndfile)
|
set(LIBSNDFILE ${LIBDIR}/sndfile)
|
||||||
set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
|
set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
|
||||||
set(LIBSNDFILE_LIBRARIES sndfile FLAC ogg vorbis vorbisenc)
|
set(LIBSNDFILE_LIBRARIES sndfile FLAC ogg vorbis vorbisenc)
|
||||||
set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib ${LIBDIR}/ffmpeg/lib) # TODO, deprecate
|
set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib ${LIBDIR}/ffmpeg/lib) # TODO, deprecate
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
# we use precompiled libraries for py 3.7 and up by default
|
# we use precompiled libraries for py 3.7 and up by default
|
||||||
set(PYTHON_VERSION 3.7)
|
set(PYTHON_VERSION 3.7)
|
||||||
if(NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK)
|
if(NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK)
|
||||||
# normally cached but not since we include them with blender
|
# normally cached but not since we include them with blender
|
||||||
set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m")
|
set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m")
|
||||||
set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m")
|
set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m")
|
||||||
set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a)
|
set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a)
|
||||||
set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
|
set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
|
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
|
||||||
else()
|
else()
|
||||||
# module must be compiled against Python framework
|
# module must be compiled against Python framework
|
||||||
set(_py_framework "/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}")
|
set(_py_framework "/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}")
|
||||||
|
|
||||||
set(PYTHON_INCLUDE_DIR "${_py_framework}/include/python${PYTHON_VERSION}m")
|
set(PYTHON_INCLUDE_DIR "${_py_framework}/include/python${PYTHON_VERSION}m")
|
||||||
set(PYTHON_EXECUTABLE "${_py_framework}/bin/python${PYTHON_VERSION}m")
|
set(PYTHON_EXECUTABLE "${_py_framework}/bin/python${PYTHON_VERSION}m")
|
||||||
set(PYTHON_LIBPATH "${_py_framework}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}m")
|
set(PYTHON_LIBPATH "${_py_framework}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}m")
|
||||||
#set(PYTHON_LIBRARY python${PYTHON_VERSION})
|
#set(PYTHON_LIBRARY python${PYTHON_VERSION})
|
||||||
#set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework Python") # won't build with this enabled
|
#set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework Python") # won't build with this enabled
|
||||||
|
|
||||||
unset(_py_framework)
|
unset(_py_framework)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# uncached vars
|
# uncached vars
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
|
||||||
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
|
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
|
||||||
|
|
||||||
# needed for Audaspace, numpy is installed into python site-packages
|
# needed for Audaspace, numpy is installed into python site-packages
|
||||||
set(PYTHON_NUMPY_INCLUDE_DIRS "${PYTHON_LIBPATH}/site-packages/numpy/core/include")
|
set(PYTHON_NUMPY_INCLUDE_DIRS "${PYTHON_LIBPATH}/site-packages/numpy/core/include")
|
||||||
|
|
||||||
if(NOT EXISTS "${PYTHON_EXECUTABLE}")
|
if(NOT EXISTS "${PYTHON_EXECUTABLE}")
|
||||||
message(FATAL_ERROR "Python executable missing: ${PYTHON_EXECUTABLE}")
|
message(FATAL_ERROR "Python executable missing: ${PYTHON_EXECUTABLE}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
set(FFTW3 ${LIBDIR}/fftw3)
|
set(FFTW3 ${LIBDIR}/fftw3)
|
||||||
set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
|
set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
|
||||||
set(FFTW3_LIBRARIES fftw3)
|
set(FFTW3_LIBRARIES fftw3)
|
||||||
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PNG_LIBRARIES png)
|
set(PNG_LIBRARIES png)
|
||||||
@@ -138,101 +138,101 @@ set(FREETYPE_LIBPATH ${FREETYPE}/lib)
|
|||||||
set(FREETYPE_LIBRARY freetype)
|
set(FREETYPE_LIBRARY freetype)
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
set(OPENEXR ${LIBDIR}/openexr)
|
set(OPENEXR ${LIBDIR}/openexr)
|
||||||
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
||||||
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
|
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
|
||||||
set(OPENEXR_LIBRARIES
|
set(OPENEXR_LIBRARIES
|
||||||
Iex
|
Iex
|
||||||
Half
|
Half
|
||||||
IlmImf
|
IlmImf
|
||||||
Imath
|
Imath
|
||||||
IlmThread)
|
IlmThread)
|
||||||
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
set(FFMPEG ${LIBDIR}/ffmpeg)
|
set(FFMPEG ${LIBDIR}/ffmpeg)
|
||||||
set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
|
set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
|
||||||
set(FFMPEG_LIBRARIES
|
set(FFMPEG_LIBRARIES
|
||||||
avcodec avdevice avformat avutil
|
avcodec avdevice avformat avutil
|
||||||
mp3lame swscale x264 xvidcore
|
mp3lame swscale x264 xvidcore
|
||||||
theora theoradec theoraenc
|
theora theoradec theoraenc
|
||||||
vorbis vorbisenc vorbisfile ogg
|
vorbis vorbisenc vorbisfile ogg
|
||||||
vpx swresample)
|
vpx swresample)
|
||||||
set(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
set(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENJPEG OR WITH_CODEC_FFMPEG)
|
if(WITH_IMAGE_OPENJPEG OR WITH_CODEC_FFMPEG)
|
||||||
# use openjpeg from libdir that is linked into ffmpeg
|
# use openjpeg from libdir that is linked into ffmpeg
|
||||||
set(OPENJPEG ${LIBDIR}/openjpeg)
|
set(OPENJPEG ${LIBDIR}/openjpeg)
|
||||||
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include)
|
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include)
|
||||||
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/libopenjp2.a)
|
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/libopenjp2.a)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_library(SYSTEMSTUBS_LIBRARY
|
find_library(SYSTEMSTUBS_LIBRARY
|
||||||
NAMES
|
NAMES
|
||||||
SystemStubs
|
SystemStubs
|
||||||
PATHS
|
PATHS
|
||||||
)
|
)
|
||||||
mark_as_advanced(SYSTEMSTUBS_LIBRARY)
|
mark_as_advanced(SYSTEMSTUBS_LIBRARY)
|
||||||
if(SYSTEMSTUBS_LIBRARY)
|
if(SYSTEMSTUBS_LIBRARY)
|
||||||
list(APPEND PLATFORM_LINKLIBS SystemStubs)
|
list(APPEND PLATFORM_LINKLIBS SystemStubs)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PLATFORM_CFLAGS "-pipe -funsigned-char")
|
set(PLATFORM_CFLAGS "-pipe -funsigned-char")
|
||||||
set(PLATFORM_LINKFLAGS
|
set(PLATFORM_LINKFLAGS
|
||||||
"-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Cocoa -framework Carbon -framework AudioUnit -framework AudioToolbox -framework CoreAudio"
|
"-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Cocoa -framework Carbon -framework AudioUnit -framework AudioToolbox -framework CoreAudio"
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND PLATFORM_LINKLIBS c++)
|
list(APPEND PLATFORM_LINKLIBS c++)
|
||||||
|
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -F/Library/Frameworks -weak_framework jackmp")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -F/Library/Frameworks -weak_framework jackmp")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON_MODULE OR WITH_PYTHON_FRAMEWORK)
|
if(WITH_PYTHON_MODULE OR WITH_PYTHON_FRAMEWORK)
|
||||||
# force cmake to link right framework
|
# force cmake to link right framework
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/Python")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/Python")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
set(OPENCOLLADA ${LIBDIR}/opencollada)
|
set(OPENCOLLADA ${LIBDIR}/opencollada)
|
||||||
|
|
||||||
set(OPENCOLLADA_INCLUDE_DIRS
|
set(OPENCOLLADA_INCLUDE_DIRS
|
||||||
${LIBDIR}/opencollada/include/COLLADAStreamWriter
|
${LIBDIR}/opencollada/include/COLLADAStreamWriter
|
||||||
${LIBDIR}/opencollada/include/COLLADABaseUtils
|
${LIBDIR}/opencollada/include/COLLADABaseUtils
|
||||||
${LIBDIR}/opencollada/include/COLLADAFramework
|
${LIBDIR}/opencollada/include/COLLADAFramework
|
||||||
${LIBDIR}/opencollada/include/COLLADASaxFrameworkLoader
|
${LIBDIR}/opencollada/include/COLLADASaxFrameworkLoader
|
||||||
${LIBDIR}/opencollada/include/GeneratedSaxParser
|
${LIBDIR}/opencollada/include/GeneratedSaxParser
|
||||||
)
|
)
|
||||||
|
|
||||||
set(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
|
set(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
|
||||||
set(OPENCOLLADA_LIBRARIES
|
set(OPENCOLLADA_LIBRARIES
|
||||||
OpenCOLLADASaxFrameworkLoader
|
OpenCOLLADASaxFrameworkLoader
|
||||||
-lOpenCOLLADAFramework
|
-lOpenCOLLADAFramework
|
||||||
-lOpenCOLLADABaseUtils
|
-lOpenCOLLADABaseUtils
|
||||||
-lOpenCOLLADAStreamWriter
|
-lOpenCOLLADAStreamWriter
|
||||||
-lMathMLSolver
|
-lMathMLSolver
|
||||||
-lGeneratedSaxParser
|
-lGeneratedSaxParser
|
||||||
-lbuffer -lftoa -lUTF
|
-lbuffer -lftoa -lUTF
|
||||||
${OPENCOLLADA_LIBPATH}/libxml2.a
|
${OPENCOLLADA_LIBPATH}/libxml2.a
|
||||||
)
|
)
|
||||||
# PCRE is bundled with openCollada
|
# PCRE is bundled with openCollada
|
||||||
#set(PCRE ${LIBDIR}/pcre)
|
#set(PCRE ${LIBDIR}/pcre)
|
||||||
#set(PCRE_LIBPATH ${PCRE}/lib)
|
#set(PCRE_LIBPATH ${PCRE}/lib)
|
||||||
set(PCRE_LIBRARIES pcre)
|
set(PCRE_LIBRARIES pcre)
|
||||||
# libxml2 is used
|
# libxml2 is used
|
||||||
#set(EXPAT ${LIBDIR}/expat)
|
#set(EXPAT ${LIBDIR}/expat)
|
||||||
#set(EXPAT_LIBPATH ${EXPAT}/lib)
|
#set(EXPAT_LIBPATH ${EXPAT}/lib)
|
||||||
set(EXPAT_LIB)
|
set(EXPAT_LIB)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SDL)
|
if(WITH_SDL)
|
||||||
set(SDL ${LIBDIR}/sdl)
|
set(SDL ${LIBDIR}/sdl)
|
||||||
set(SDL_INCLUDE_DIR ${SDL}/include)
|
set(SDL_INCLUDE_DIR ${SDL}/include)
|
||||||
set(SDL_LIBRARY SDL2)
|
set(SDL_LIBRARY SDL2)
|
||||||
set(SDL_LIBPATH ${SDL}/lib)
|
set(SDL_LIBPATH ${SDL}/lib)
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -framework ForceFeedback")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -framework ForceFeedback")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PNG "${LIBDIR}/png")
|
set(PNG "${LIBDIR}/png")
|
||||||
@@ -244,166 +244,166 @@ set(JPEG_INCLUDE_DIR "${JPEG}/include")
|
|||||||
set(JPEG_LIBPATH ${JPEG}/lib)
|
set(JPEG_LIBPATH ${JPEG}/lib)
|
||||||
|
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
set(TIFF ${LIBDIR}/tiff)
|
set(TIFF ${LIBDIR}/tiff)
|
||||||
set(TIFF_INCLUDE_DIR ${TIFF}/include)
|
set(TIFF_INCLUDE_DIR ${TIFF}/include)
|
||||||
set(TIFF_LIBRARY tiff)
|
set(TIFF_LIBRARY tiff)
|
||||||
set(TIFF_LIBPATH ${TIFF}/lib)
|
set(TIFF_LIBPATH ${TIFF}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BOOST)
|
if(WITH_BOOST)
|
||||||
set(BOOST ${LIBDIR}/boost)
|
set(BOOST ${LIBDIR}/boost)
|
||||||
set(BOOST_INCLUDE_DIR ${BOOST}/include)
|
set(BOOST_INCLUDE_DIR ${BOOST}/include)
|
||||||
set(BOOST_POSTFIX)
|
set(BOOST_POSTFIX)
|
||||||
set(BOOST_LIBRARIES
|
set(BOOST_LIBRARIES
|
||||||
boost_date_time${BOOST_POSTFIX}
|
boost_date_time${BOOST_POSTFIX}
|
||||||
boost_filesystem${BOOST_POSTFIX}
|
boost_filesystem${BOOST_POSTFIX}
|
||||||
boost_regex${BOOST_POSTFIX}
|
boost_regex${BOOST_POSTFIX}
|
||||||
boost_system${BOOST_POSTFIX}
|
boost_system${BOOST_POSTFIX}
|
||||||
boost_thread${BOOST_POSTFIX}
|
boost_thread${BOOST_POSTFIX}
|
||||||
boost_wave${BOOST_POSTFIX}
|
boost_wave${BOOST_POSTFIX}
|
||||||
)
|
)
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
list(APPEND BOOST_LIBRARIES boost_locale${BOOST_POSTFIX})
|
list(APPEND BOOST_LIBRARIES boost_locale${BOOST_POSTFIX})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CYCLES_NETWORK)
|
if(WITH_CYCLES_NETWORK)
|
||||||
list(APPEND BOOST_LIBRARIES boost_serialization${BOOST_POSTFIX})
|
list(APPEND BOOST_LIBRARIES boost_serialization${BOOST_POSTFIX})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
list(APPEND BOOST_LIBRARIES boost_iostreams${BOOST_POSTFIX})
|
list(APPEND BOOST_LIBRARIES boost_iostreams${BOOST_POSTFIX})
|
||||||
endif()
|
endif()
|
||||||
set(BOOST_LIBPATH ${BOOST}/lib)
|
set(BOOST_LIBPATH ${BOOST}/lib)
|
||||||
set(BOOST_DEFINITIONS)
|
set(BOOST_DEFINITIONS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG)
|
if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG)
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -liconv") # boost_locale and ffmpeg needs it !
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -liconv") # boost_locale and ffmpeg needs it !
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
set(OPENIMAGEIO ${LIBDIR}/openimageio)
|
set(OPENIMAGEIO ${LIBDIR}/openimageio)
|
||||||
set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
|
set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
|
||||||
set(OPENIMAGEIO_LIBRARIES
|
set(OPENIMAGEIO_LIBRARIES
|
||||||
${OPENIMAGEIO}/lib/libOpenImageIO.a
|
${OPENIMAGEIO}/lib/libOpenImageIO.a
|
||||||
${PNG_LIBRARIES}
|
${PNG_LIBRARIES}
|
||||||
${JPEG_LIBRARIES}
|
${JPEG_LIBRARIES}
|
||||||
${TIFF_LIBRARY}
|
${TIFF_LIBRARY}
|
||||||
${OPENEXR_LIBRARIES}
|
${OPENEXR_LIBRARIES}
|
||||||
${OPENJPEG_LIBRARIES}
|
${OPENJPEG_LIBRARIES}
|
||||||
${ZLIB_LIBRARIES}
|
${ZLIB_LIBRARIES}
|
||||||
)
|
)
|
||||||
set(OPENIMAGEIO_LIBPATH
|
set(OPENIMAGEIO_LIBPATH
|
||||||
${OPENIMAGEIO}/lib
|
${OPENIMAGEIO}/lib
|
||||||
${JPEG_LIBPATH}
|
${JPEG_LIBPATH}
|
||||||
${PNG_LIBPATH}
|
${PNG_LIBPATH}
|
||||||
${TIFF_LIBPATH}
|
${TIFF_LIBPATH}
|
||||||
${OPENEXR_LIBPATH}
|
${OPENEXR_LIBPATH}
|
||||||
${ZLIB_LIBPATH}
|
${ZLIB_LIBPATH}
|
||||||
)
|
)
|
||||||
set(OPENIMAGEIO_DEFINITIONS "-DOIIO_STATIC_BUILD")
|
set(OPENIMAGEIO_DEFINITIONS "-DOIIO_STATIC_BUILD")
|
||||||
set(OPENIMAGEIO_IDIFF "${LIBDIR}/openimageio/bin/idiff")
|
set(OPENIMAGEIO_IDIFF "${LIBDIR}/openimageio/bin/idiff")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
set(OPENCOLORIO ${LIBDIR}/opencolorio)
|
set(OPENCOLORIO ${LIBDIR}/opencolorio)
|
||||||
set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
|
set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
|
||||||
set(OPENCOLORIO_LIBRARIES OpenColorIO tinyxml yaml-cpp)
|
set(OPENCOLORIO_LIBRARIES OpenColorIO tinyxml yaml-cpp)
|
||||||
set(OPENCOLORIO_LIBPATH ${OPENCOLORIO}/lib)
|
set(OPENCOLORIO_LIBPATH ${OPENCOLORIO}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
set(OPENVDB ${LIBDIR}/openvdb)
|
set(OPENVDB ${LIBDIR}/openvdb)
|
||||||
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
|
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
|
||||||
set(TBB_INCLUDE_DIRS ${LIBDIR}/tbb/include)
|
set(TBB_INCLUDE_DIRS ${LIBDIR}/tbb/include)
|
||||||
set(TBB_LIBRARIES ${LIBDIR}/tbb/lib/libtbb.a)
|
set(TBB_LIBRARIES ${LIBDIR}/tbb/lib/libtbb.a)
|
||||||
set(OPENVDB_LIBRARIES openvdb blosc ${TBB_LIBRARIES})
|
set(OPENVDB_LIBRARIES openvdb blosc ${TBB_LIBRARIES})
|
||||||
set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
|
set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
|
||||||
set(OPENVDB_DEFINITIONS)
|
set(OPENVDB_DEFINITIONS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LLVM)
|
if(WITH_LLVM)
|
||||||
set(LLVM_ROOT_DIR ${LIBDIR}/llvm)
|
set(LLVM_ROOT_DIR ${LIBDIR}/llvm)
|
||||||
set(LLVM_VERSION 3.4)
|
set(LLVM_VERSION 3.4)
|
||||||
if(EXISTS "${LLVM_ROOT_DIR}/bin/llvm-config")
|
if(EXISTS "${LLVM_ROOT_DIR}/bin/llvm-config")
|
||||||
set(LLVM_CONFIG "${LLVM_ROOT_DIR}/bin/llvm-config")
|
set(LLVM_CONFIG "${LLVM_ROOT_DIR}/bin/llvm-config")
|
||||||
else()
|
else()
|
||||||
set(LLVM_CONFIG llvm-config)
|
set(LLVM_CONFIG llvm-config)
|
||||||
endif()
|
endif()
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --version
|
execute_process(COMMAND ${LLVM_CONFIG} --version
|
||||||
OUTPUT_VARIABLE LLVM_VERSION
|
OUTPUT_VARIABLE LLVM_VERSION
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --prefix
|
execute_process(COMMAND ${LLVM_CONFIG} --prefix
|
||||||
OUTPUT_VARIABLE LLVM_ROOT_DIR
|
OUTPUT_VARIABLE LLVM_ROOT_DIR
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --libdir
|
execute_process(COMMAND ${LLVM_CONFIG} --libdir
|
||||||
OUTPUT_VARIABLE LLVM_LIBPATH
|
OUTPUT_VARIABLE LLVM_LIBPATH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
find_library(LLVM_LIBRARY
|
find_library(LLVM_LIBRARY
|
||||||
NAMES LLVMAnalysis # first of a whole bunch of libs to get
|
NAMES LLVMAnalysis # first of a whole bunch of libs to get
|
||||||
PATHS ${LLVM_LIBPATH})
|
PATHS ${LLVM_LIBPATH})
|
||||||
|
|
||||||
if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
|
if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
|
||||||
if(LLVM_STATIC)
|
if(LLVM_STATIC)
|
||||||
# if static LLVM libraries were requested, use llvm-config to generate
|
# if static LLVM libraries were requested, use llvm-config to generate
|
||||||
# the list of what libraries we need, and substitute that in the right
|
# the list of what libraries we need, and substitute that in the right
|
||||||
# way for LLVM_LIBRARY.
|
# way for LLVM_LIBRARY.
|
||||||
execute_process(COMMAND ${LLVM_CONFIG} --libfiles
|
execute_process(COMMAND ${LLVM_CONFIG} --libfiles
|
||||||
OUTPUT_VARIABLE LLVM_LIBRARY
|
OUTPUT_VARIABLE LLVM_LIBRARY
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
string(REPLACE ".a /" ".a;/" LLVM_LIBRARY ${LLVM_LIBRARY})
|
string(REPLACE ".a /" ".a;/" LLVM_LIBRARY ${LLVM_LIBRARY})
|
||||||
else()
|
else()
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -lLLVM-3.4")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -lLLVM-3.4")
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "LLVM not found.")
|
message(FATAL_ERROR "LLVM not found.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(CYCLES_OSL ${LIBDIR}/osl)
|
set(CYCLES_OSL ${LIBDIR}/osl)
|
||||||
|
|
||||||
find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
|
||||||
# WARNING! depends on correct order of OSL libs linking
|
# WARNING! depends on correct order of OSL libs linking
|
||||||
list(APPEND OSL_LIBRARIES ${OSL_LIB_COMP} -force_load ${OSL_LIB_EXEC} ${OSL_LIB_QUERY})
|
list(APPEND OSL_LIBRARIES ${OSL_LIB_COMP} -force_load ${OSL_LIB_EXEC} ${OSL_LIB_QUERY})
|
||||||
find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
|
find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
|
||||||
find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
|
find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
|
||||||
|
|
||||||
if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
|
if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
|
||||||
set(OSL_FOUND TRUE)
|
set(OSL_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
message(STATUS "OSL not found")
|
message(STATUS "OSL not found")
|
||||||
set(WITH_CYCLES_OSL OFF)
|
set(WITH_CYCLES_OSL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_EMBREE)
|
if(WITH_CYCLES_EMBREE)
|
||||||
find_package(Embree 3.2.4 REQUIRED)
|
find_package(Embree 3.2.4 REQUIRED)
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Xlinker -stack_size -Xlinker 0x100000")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Xlinker -stack_size -Xlinker 0x100000")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# CMake FindOpenMP doesn't know about AppleClang before 3.12, so provide custom flags.
|
# CMake FindOpenMP doesn't know about AppleClang before 3.12, so provide custom flags.
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
if(CMAKE_C_COMPILER_ID MATCHES "AppleClang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "7.0")
|
if(CMAKE_C_COMPILER_ID MATCHES "AppleClang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "7.0")
|
||||||
# Use OpenMP from our precompiled libraries.
|
# Use OpenMP from our precompiled libraries.
|
||||||
message(STATUS "Using ${LIBDIR}/openmp for OpenMP")
|
message(STATUS "Using ${LIBDIR}/openmp for OpenMP")
|
||||||
set(OPENMP_CUSTOM ON)
|
set(OPENMP_CUSTOM ON)
|
||||||
set(OPENMP_FOUND ON)
|
set(OPENMP_FOUND ON)
|
||||||
set(OpenMP_C_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
|
set(OpenMP_C_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
|
||||||
set(OpenMP_CXX_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
|
set(OpenMP_CXX_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L'${LIBDIR}/openmp/lib' -lomp")
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L'${LIBDIR}/openmp/lib' -lomp")
|
||||||
|
|
||||||
# Copy libomp.dylib to allow executables like datatoc to work.
|
# Copy libomp.dylib to allow executables like datatoc to work.
|
||||||
if(CMAKE_MAKE_PROGRAM MATCHES "xcodebuild")
|
if(CMAKE_MAKE_PROGRAM MATCHES "xcodebuild")
|
||||||
set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}/bin")
|
set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}/bin")
|
||||||
else()
|
else()
|
||||||
set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}")
|
set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND mkdir -p ${OPENMP_DYLIB_AUX_PATH}/Resources/lib
|
COMMAND mkdir -p ${OPENMP_DYLIB_AUX_PATH}/Resources/lib
|
||||||
COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${OPENMP_DYLIB_AUX_PATH}/Resources/lib/libomp.dylib)
|
COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${OPENMP_DYLIB_AUX_PATH}/Resources/lib/libomp.dylib)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(EXETYPE MACOSX_BUNDLE)
|
set(EXETYPE MACOSX_BUNDLE)
|
||||||
@@ -411,24 +411,24 @@ set(EXETYPE MACOSX_BUNDLE)
|
|||||||
set(CMAKE_C_FLAGS_DEBUG "-fno-strict-aliasing -g")
|
set(CMAKE_C_FLAGS_DEBUG "-fno-strict-aliasing -g")
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "-fno-strict-aliasing -g")
|
set(CMAKE_CXX_FLAGS_DEBUG "-fno-strict-aliasing -g")
|
||||||
if(CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" OR CMAKE_OSX_ARCHITECTURES MATCHES "i386")
|
if(CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" OR CMAKE_OSX_ARCHITECTURES MATCHES "i386")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
|
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
|
||||||
set(CMAKE_C_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
|
set(CMAKE_C_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
|
||||||
if(NOT CMAKE_C_COMPILER_ID MATCHES "Clang")
|
if(NOT CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ftree-vectorize -fvariable-expansion-in-unroller")
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ftree-vectorize -fvariable-expansion-in-unroller")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ftree-vectorize -fvariable-expansion-in-unroller")
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ftree-vectorize -fvariable-expansion-in-unroller")
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(CMAKE_C_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
|
set(CMAKE_C_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
|
set(CMAKE_CXX_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(${XCODE_VERSION} VERSION_EQUAL 5 OR ${XCODE_VERSION} VERSION_GREATER 5)
|
if(${XCODE_VERSION} VERSION_EQUAL 5 OR ${XCODE_VERSION} VERSION_GREATER 5)
|
||||||
# Xcode 5 is always using CLANG, which has too low template depth of 128 for libmv
|
# Xcode 5 is always using CLANG, which has too low template depth of 128 for libmv
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth=1024")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth=1024")
|
||||||
endif()
|
endif()
|
||||||
# Get rid of eventually clashes, we export some symbols explicitly as local
|
# Get rid of eventually clashes, we export some symbols explicitly as local
|
||||||
set(PLATFORM_LINKFLAGS
|
set(PLATFORM_LINKFLAGS
|
||||||
"${PLATFORM_LINKFLAGS} -Xlinker -unexported_symbols_list -Xlinker '${CMAKE_SOURCE_DIR}/source/creator/osx_locals.map'"
|
"${PLATFORM_LINKFLAGS} -Xlinker -unexported_symbols_list -Xlinker '${CMAKE_SOURCE_DIR}/source/creator/osx_locals.map'"
|
||||||
)
|
)
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
||||||
|
|||||||
@@ -25,92 +25,92 @@
|
|||||||
cmake_minimum_required(VERSION 3.0.0)
|
cmake_minimum_required(VERSION 3.0.0)
|
||||||
|
|
||||||
if(NOT CMAKE_OSX_ARCHITECTURES)
|
if(NOT CMAKE_OSX_ARCHITECTURES)
|
||||||
set(CMAKE_OSX_ARCHITECTURES x86_64 CACHE STRING
|
set(CMAKE_OSX_ARCHITECTURES x86_64 CACHE STRING
|
||||||
"Choose the architecture you want to build Blender for: i386, x86_64 or ppc"
|
"Choose the architecture you want to build Blender for: i386, x86_64 or ppc"
|
||||||
FORCE)
|
FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT DEFINED OSX_SYSTEM)
|
if(NOT DEFINED OSX_SYSTEM)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND xcodebuild -version -sdk macosx SDKVersion
|
COMMAND xcodebuild -version -sdk macosx SDKVersion
|
||||||
OUTPUT_VARIABLE OSX_SYSTEM
|
OUTPUT_VARIABLE OSX_SYSTEM
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# workaround for incorrect cmake xcode lookup for developer previews - XCODE_VERSION does not
|
# workaround for incorrect cmake xcode lookup for developer previews - XCODE_VERSION does not
|
||||||
# take xcode-select path into account but would always look into /Applications/Xcode.app
|
# take xcode-select path into account but would always look into /Applications/Xcode.app
|
||||||
# while dev versions are named Xcode<version>-DP<preview_number>
|
# while dev versions are named Xcode<version>-DP<preview_number>
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND xcode-select --print-path
|
COMMAND xcode-select --print-path
|
||||||
OUTPUT_VARIABLE XCODE_CHECK OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_VARIABLE XCODE_CHECK OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
string(REPLACE "/Contents/Developer" "" XCODE_BUNDLE ${XCODE_CHECK}) # truncate to bundlepath in any case
|
string(REPLACE "/Contents/Developer" "" XCODE_BUNDLE ${XCODE_CHECK}) # truncate to bundlepath in any case
|
||||||
|
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
|
|
||||||
# earlier xcode has no bundled developer dir, no sense in getting xcode path from
|
# earlier xcode has no bundled developer dir, no sense in getting xcode path from
|
||||||
if(${XCODE_VERSION} VERSION_GREATER 4.2)
|
if(${XCODE_VERSION} VERSION_GREATER 4.2)
|
||||||
# reduce to XCode name without dp extension
|
# reduce to XCode name without dp extension
|
||||||
string(SUBSTRING "${XCODE_CHECK}" 14 6 DP_NAME)
|
string(SUBSTRING "${XCODE_CHECK}" 14 6 DP_NAME)
|
||||||
if(${DP_NAME} MATCHES Xcode5)
|
if(${DP_NAME} MATCHES Xcode5)
|
||||||
set(XCODE_VERSION 5)
|
set(XCODE_VERSION 5)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
##### cmake incompatibility with xcode 4.3 and higher #####
|
##### cmake incompatibility with xcode 4.3 and higher #####
|
||||||
if(${XCODE_VERSION} MATCHES '') # cmake fails due looking for xcode in the wrong path, thus will be empty var
|
if(${XCODE_VERSION} MATCHES '') # cmake fails due looking for xcode in the wrong path, thus will be empty var
|
||||||
message(FATAL_ERROR "Xcode 4.3 and higher must be used with cmake 2.8-8 or higher")
|
message(FATAL_ERROR "Xcode 4.3 and higher must be used with cmake 2.8-8 or higher")
|
||||||
endif()
|
endif()
|
||||||
### end cmake incompatibility with xcode 4.3 and higher ###
|
### end cmake incompatibility with xcode 4.3 and higher ###
|
||||||
|
|
||||||
if(${XCODE_VERSION} VERSION_EQUAL 4 OR ${XCODE_VERSION} VERSION_GREATER 4 AND ${XCODE_VERSION} VERSION_LESS 4.3)
|
if(${XCODE_VERSION} VERSION_EQUAL 4 OR ${XCODE_VERSION} VERSION_GREATER 4 AND ${XCODE_VERSION} VERSION_LESS 4.3)
|
||||||
# Xcode 4 defaults to the Apple LLVM Compiler.
|
# Xcode 4 defaults to the Apple LLVM Compiler.
|
||||||
# Override the default compiler selection because Blender only compiles with gcc up to xcode 4.2
|
# Override the default compiler selection because Blender only compiles with gcc up to xcode 4.2
|
||||||
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
|
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
|
||||||
message(STATUS "Setting compiler to: " ${CMAKE_XCODE_ATTRIBUTE_GCC_VERSION})
|
message(STATUS "Setting compiler to: " ${CMAKE_XCODE_ATTRIBUTE_GCC_VERSION})
|
||||||
endif()
|
endif()
|
||||||
else() # unix makefile generator does not fill XCODE_VERSION var, so we get it with a command
|
else() # unix makefile generator does not fill XCODE_VERSION var, so we get it with a command
|
||||||
execute_process(COMMAND xcodebuild -version OUTPUT_VARIABLE XCODE_VERS_BUILD_NR)
|
execute_process(COMMAND xcodebuild -version OUTPUT_VARIABLE XCODE_VERS_BUILD_NR)
|
||||||
string(SUBSTRING "${XCODE_VERS_BUILD_NR}" 6 3 XCODE_VERSION) # truncate away build-nr
|
string(SUBSTRING "${XCODE_VERS_BUILD_NR}" 6 3 XCODE_VERSION) # truncate away build-nr
|
||||||
unset(XCODE_VERS_BUILD_NR)
|
unset(XCODE_VERS_BUILD_NR)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message(STATUS "Detected OS X ${OSX_SYSTEM} and Xcode ${XCODE_VERSION} at ${XCODE_BUNDLE}")
|
message(STATUS "Detected OS X ${OSX_SYSTEM} and Xcode ${XCODE_VERSION} at ${XCODE_BUNDLE}")
|
||||||
|
|
||||||
if(${XCODE_VERSION} VERSION_LESS 4.3)
|
if(${XCODE_VERSION} VERSION_LESS 4.3)
|
||||||
# use guaranteed existing sdk
|
# use guaranteed existing sdk
|
||||||
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk CACHE PATH "" FORCE)
|
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk CACHE PATH "" FORCE)
|
||||||
else()
|
else()
|
||||||
# note: xcode-select path could be ambiguous,
|
# note: xcode-select path could be ambiguous,
|
||||||
# cause /Applications/Xcode.app/Contents/Developer or /Applications/Xcode.app would be allowed
|
# cause /Applications/Xcode.app/Contents/Developer or /Applications/Xcode.app would be allowed
|
||||||
# so i use a selfcomposed bundlepath here
|
# so i use a selfcomposed bundlepath here
|
||||||
set(OSX_SYSROOT_PREFIX ${XCODE_BUNDLE}/Contents/Developer/Platforms/MacOSX.platform)
|
set(OSX_SYSROOT_PREFIX ${XCODE_BUNDLE}/Contents/Developer/Platforms/MacOSX.platform)
|
||||||
message(STATUS "OSX_SYSROOT_PREFIX: " ${OSX_SYSROOT_PREFIX})
|
message(STATUS "OSX_SYSROOT_PREFIX: " ${OSX_SYSROOT_PREFIX})
|
||||||
set(OSX_DEVELOPER_PREFIX /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk) # use guaranteed existing sdk
|
set(OSX_DEVELOPER_PREFIX /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk) # use guaranteed existing sdk
|
||||||
set(CMAKE_OSX_SYSROOT ${OSX_SYSROOT_PREFIX}/${OSX_DEVELOPER_PREFIX} CACHE PATH "" FORCE)
|
set(CMAKE_OSX_SYSROOT ${OSX_SYSROOT_PREFIX}/${OSX_DEVELOPER_PREFIX} CACHE PATH "" FORCE)
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
# to silence sdk not found warning, just overrides CMAKE_OSX_SYSROOT
|
# to silence sdk not found warning, just overrides CMAKE_OSX_SYSROOT
|
||||||
set(CMAKE_XCODE_ATTRIBUTE_SDKROOT macosx${OSX_SYSTEM})
|
set(CMAKE_XCODE_ATTRIBUTE_SDKROOT macosx${OSX_SYSTEM})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(OSX_SYSTEM MATCHES 10.9)
|
if(OSX_SYSTEM MATCHES 10.9)
|
||||||
# make sure syslibs and headers are looked up in sdk ( especially for 10.9 openGL atm. )
|
# make sure syslibs and headers are looked up in sdk ( especially for 10.9 openGL atm. )
|
||||||
set(CMAKE_FIND_ROOT_PATH ${CMAKE_OSX_SYSROOT})
|
set(CMAKE_FIND_ROOT_PATH ${CMAKE_OSX_SYSROOT})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# 10.9 is our min. target, if you use higher sdk, weak linking happens
|
# 10.9 is our min. target, if you use higher sdk, weak linking happens
|
||||||
if(CMAKE_OSX_DEPLOYMENT_TARGET)
|
if(CMAKE_OSX_DEPLOYMENT_TARGET)
|
||||||
if(${CMAKE_OSX_DEPLOYMENT_TARGET} VERSION_LESS 10.9)
|
if(${CMAKE_OSX_DEPLOYMENT_TARGET} VERSION_LESS 10.9)
|
||||||
message(STATUS "Setting deployment target to 10.9, lower versions are not supported")
|
message(STATUS "Setting deployment target to 10.9, lower versions are not supported")
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT ${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(NOT ${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
# force CMAKE_OSX_DEPLOYMENT_TARGET for makefiles, will not work else ( cmake bug ? )
|
# force CMAKE_OSX_DEPLOYMENT_TARGET for makefiles, will not work else ( cmake bug ? )
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||||
add_definitions("-DMACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
add_definitions("-DMACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -22,34 +22,34 @@
|
|||||||
|
|
||||||
# Detect precompiled library directory
|
# Detect precompiled library directory
|
||||||
if(NOT DEFINED LIBDIR)
|
if(NOT DEFINED LIBDIR)
|
||||||
set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR})
|
set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR})
|
||||||
string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME)
|
string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME)
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME})
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME})
|
||||||
else()
|
else()
|
||||||
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(EXISTS ${LIBDIR})
|
if(EXISTS ${LIBDIR})
|
||||||
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
||||||
# NOTE: Make sure "proper" compiled zlib comes first before the one
|
# NOTE: Make sure "proper" compiled zlib comes first before the one
|
||||||
# which is a part of OpenCollada. They have different ABI, and we
|
# which is a part of OpenCollada. They have different ABI, and we
|
||||||
# do need to use the official one.
|
# do need to use the official one.
|
||||||
set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
|
set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
|
||||||
set(WITH_STATIC_LIBS ON)
|
set(WITH_STATIC_LIBS ON)
|
||||||
set(WITH_OPENMP_STATIC ON)
|
set(WITH_OPENMP_STATIC ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_STATIC_LIBS)
|
if(WITH_STATIC_LIBS)
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++")
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Wrapper to prefer static libraries
|
# Wrapper to prefer static libraries
|
||||||
macro(find_package_wrapper)
|
macro(find_package_wrapper)
|
||||||
if(WITH_STATIC_LIBS)
|
if(WITH_STATIC_LIBS)
|
||||||
find_package_static(${ARGV})
|
find_package_static(${ARGV})
|
||||||
else()
|
else()
|
||||||
find_package(${ARGV})
|
find_package(${ARGV})
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
find_package_wrapper(JPEG REQUIRED)
|
find_package_wrapper(JPEG REQUIRED)
|
||||||
@@ -58,360 +58,360 @@ find_package_wrapper(ZLIB REQUIRED)
|
|||||||
find_package_wrapper(Freetype REQUIRED)
|
find_package_wrapper(Freetype REQUIRED)
|
||||||
|
|
||||||
if(WITH_LZO AND WITH_SYSTEM_LZO)
|
if(WITH_LZO AND WITH_SYSTEM_LZO)
|
||||||
find_package_wrapper(LZO)
|
find_package_wrapper(LZO)
|
||||||
if(NOT LZO_FOUND)
|
if(NOT LZO_FOUND)
|
||||||
message(FATAL_ERROR "Failed finding system LZO version!")
|
message(FATAL_ERROR "Failed finding system LZO version!")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SYSTEM_EIGEN3)
|
if(WITH_SYSTEM_EIGEN3)
|
||||||
find_package_wrapper(Eigen3)
|
find_package_wrapper(Eigen3)
|
||||||
if(NOT EIGEN3_FOUND)
|
if(NOT EIGEN3_FOUND)
|
||||||
message(FATAL_ERROR "Failed finding system Eigen3 version!")
|
message(FATAL_ERROR "Failed finding system Eigen3 version!")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
# else values are set below for all platforms
|
# else values are set below for all platforms
|
||||||
|
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
# No way to set py35, remove for now.
|
# No way to set py35, remove for now.
|
||||||
# find_package(PythonLibs)
|
# find_package(PythonLibs)
|
||||||
|
|
||||||
# Use our own instead, since without py is such a rare case,
|
# Use our own instead, since without py is such a rare case,
|
||||||
# require this package
|
# require this package
|
||||||
# XXX Linking errors with debian static python :/
|
# XXX Linking errors with debian static python :/
|
||||||
# find_package_wrapper(PythonLibsUnix REQUIRED)
|
# find_package_wrapper(PythonLibsUnix REQUIRED)
|
||||||
find_package(PythonLibsUnix REQUIRED)
|
find_package(PythonLibsUnix REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
find_package_wrapper(OpenEXR) # our own module
|
find_package_wrapper(OpenEXR) # our own module
|
||||||
if(NOT OPENEXR_FOUND)
|
if(NOT OPENEXR_FOUND)
|
||||||
set(WITH_IMAGE_OPENEXR OFF)
|
set(WITH_IMAGE_OPENEXR OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENJPEG)
|
if(WITH_IMAGE_OPENJPEG)
|
||||||
find_package_wrapper(OpenJPEG)
|
find_package_wrapper(OpenJPEG)
|
||||||
if(NOT OPENJPEG_FOUND)
|
if(NOT OPENJPEG_FOUND)
|
||||||
set(WITH_IMAGE_OPENJPEG OFF)
|
set(WITH_IMAGE_OPENJPEG OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
# XXX Linking errors with debian static tiff :/
|
# XXX Linking errors with debian static tiff :/
|
||||||
# find_package_wrapper(TIFF)
|
# find_package_wrapper(TIFF)
|
||||||
find_package(TIFF)
|
find_package(TIFF)
|
||||||
if(NOT TIFF_FOUND)
|
if(NOT TIFF_FOUND)
|
||||||
set(WITH_IMAGE_TIFF OFF)
|
set(WITH_IMAGE_TIFF OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Audio IO
|
# Audio IO
|
||||||
if(WITH_SYSTEM_AUDASPACE)
|
if(WITH_SYSTEM_AUDASPACE)
|
||||||
find_package_wrapper(Audaspace)
|
find_package_wrapper(Audaspace)
|
||||||
if(NOT AUDASPACE_FOUND OR NOT AUDASPACE_C_FOUND)
|
if(NOT AUDASPACE_FOUND OR NOT AUDASPACE_C_FOUND)
|
||||||
message(FATAL_ERROR "Audaspace external library not found!")
|
message(FATAL_ERROR "Audaspace external library not found!")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
find_package_wrapper(OpenAL)
|
find_package_wrapper(OpenAL)
|
||||||
if(NOT OPENAL_FOUND)
|
if(NOT OPENAL_FOUND)
|
||||||
set(WITH_OPENAL OFF)
|
set(WITH_OPENAL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SDL)
|
if(WITH_SDL)
|
||||||
if(WITH_SDL_DYNLOAD)
|
if(WITH_SDL_DYNLOAD)
|
||||||
set(SDL_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/extern/sdlew/include/SDL2")
|
set(SDL_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/extern/sdlew/include/SDL2")
|
||||||
set(SDL_LIBRARY)
|
set(SDL_LIBRARY)
|
||||||
else()
|
else()
|
||||||
find_package_wrapper(SDL2)
|
find_package_wrapper(SDL2)
|
||||||
if(SDL2_FOUND)
|
if(SDL2_FOUND)
|
||||||
# Use same names for both versions of SDL until we move to 2.x.
|
# Use same names for both versions of SDL until we move to 2.x.
|
||||||
set(SDL_INCLUDE_DIR "${SDL2_INCLUDE_DIR}")
|
set(SDL_INCLUDE_DIR "${SDL2_INCLUDE_DIR}")
|
||||||
set(SDL_LIBRARY "${SDL2_LIBRARY}")
|
set(SDL_LIBRARY "${SDL2_LIBRARY}")
|
||||||
set(SDL_FOUND "${SDL2_FOUND}")
|
set(SDL_FOUND "${SDL2_FOUND}")
|
||||||
else()
|
else()
|
||||||
find_package_wrapper(SDL)
|
find_package_wrapper(SDL)
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
SDL_INCLUDE_DIR
|
SDL_INCLUDE_DIR
|
||||||
SDL_LIBRARY
|
SDL_LIBRARY
|
||||||
)
|
)
|
||||||
# unset(SDLMAIN_LIBRARY CACHE)
|
# unset(SDLMAIN_LIBRARY CACHE)
|
||||||
if(NOT SDL_FOUND)
|
if(NOT SDL_FOUND)
|
||||||
set(WITH_SDL OFF)
|
set(WITH_SDL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
find_package_wrapper(Jack)
|
find_package_wrapper(Jack)
|
||||||
if(NOT JACK_FOUND)
|
if(NOT JACK_FOUND)
|
||||||
set(WITH_JACK OFF)
|
set(WITH_JACK OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Codecs
|
# Codecs
|
||||||
if(WITH_CODEC_SNDFILE)
|
if(WITH_CODEC_SNDFILE)
|
||||||
find_package_wrapper(SndFile)
|
find_package_wrapper(SndFile)
|
||||||
if(NOT LIBSNDFILE_FOUND)
|
if(NOT LIBSNDFILE_FOUND)
|
||||||
set(WITH_CODEC_SNDFILE OFF)
|
set(WITH_CODEC_SNDFILE OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
if(EXISTS ${LIBDIR})
|
if(EXISTS ${LIBDIR})
|
||||||
# For precompiled lib directory, all ffmpeg dependencies are in the same folder
|
# For precompiled lib directory, all ffmpeg dependencies are in the same folder
|
||||||
file(GLOB ffmpeg_libs ${LIBDIR}/ffmpeg/lib/*.a ${LIBDIR}/sndfile/lib/*.a)
|
file(GLOB ffmpeg_libs ${LIBDIR}/ffmpeg/lib/*.a ${LIBDIR}/sndfile/lib/*.a)
|
||||||
set(FFMPEG ${LIBDIR}/ffmpeg CACHE PATH "FFMPEG Directory")
|
set(FFMPEG ${LIBDIR}/ffmpeg CACHE PATH "FFMPEG Directory")
|
||||||
set(FFMPEG_LIBRARIES ${ffmpeg_libs} ${ffmpeg_libs} CACHE STRING "FFMPEG Libraries")
|
set(FFMPEG_LIBRARIES ${ffmpeg_libs} ${ffmpeg_libs} CACHE STRING "FFMPEG Libraries")
|
||||||
else()
|
else()
|
||||||
set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
|
set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
|
||||||
set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
|
set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
mark_as_advanced(FFMPEG)
|
mark_as_advanced(FFMPEG)
|
||||||
|
|
||||||
# lame, but until we have proper find module for ffmpeg
|
# lame, but until we have proper find module for ffmpeg
|
||||||
set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
|
set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
|
||||||
if(EXISTS "${FFMPEG}/include/ffmpeg/")
|
if(EXISTS "${FFMPEG}/include/ffmpeg/")
|
||||||
list(APPEND FFMPEG_INCLUDE_DIRS "${FFMPEG}/include/ffmpeg")
|
list(APPEND FFMPEG_INCLUDE_DIRS "${FFMPEG}/include/ffmpeg")
|
||||||
endif()
|
endif()
|
||||||
# end lameness
|
# end lameness
|
||||||
|
|
||||||
mark_as_advanced(FFMPEG_LIBRARIES)
|
mark_as_advanced(FFMPEG_LIBRARIES)
|
||||||
set(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
set(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
find_package_wrapper(Fftw3)
|
find_package_wrapper(Fftw3)
|
||||||
if(NOT FFTW3_FOUND)
|
if(NOT FFTW3_FOUND)
|
||||||
set(WITH_FFTW3 OFF)
|
set(WITH_FFTW3 OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
find_package_wrapper(OpenCOLLADA)
|
find_package_wrapper(OpenCOLLADA)
|
||||||
if(OPENCOLLADA_FOUND)
|
if(OPENCOLLADA_FOUND)
|
||||||
find_package_wrapper(XML2)
|
find_package_wrapper(XML2)
|
||||||
find_package_wrapper(PCRE)
|
find_package_wrapper(PCRE)
|
||||||
else()
|
else()
|
||||||
set(WITH_OPENCOLLADA OFF)
|
set(WITH_OPENCOLLADA OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_MEM_JEMALLOC)
|
if(WITH_MEM_JEMALLOC)
|
||||||
find_package_wrapper(JeMalloc)
|
find_package_wrapper(JeMalloc)
|
||||||
if(NOT JEMALLOC_FOUND)
|
if(NOT JEMALLOC_FOUND)
|
||||||
set(WITH_MEM_JEMALLOC OFF)
|
set(WITH_MEM_JEMALLOC OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_INPUT_NDOF)
|
if(WITH_INPUT_NDOF)
|
||||||
find_package_wrapper(Spacenav)
|
find_package_wrapper(Spacenav)
|
||||||
if(SPACENAV_FOUND)
|
if(SPACENAV_FOUND)
|
||||||
# use generic names within blenders buildsystem.
|
# use generic names within blenders buildsystem.
|
||||||
set(NDOF_INCLUDE_DIRS ${SPACENAV_INCLUDE_DIRS})
|
set(NDOF_INCLUDE_DIRS ${SPACENAV_INCLUDE_DIRS})
|
||||||
set(NDOF_LIBRARIES ${SPACENAV_LIBRARIES})
|
set(NDOF_LIBRARIES ${SPACENAV_LIBRARIES})
|
||||||
else()
|
else()
|
||||||
set(WITH_INPUT_NDOF OFF)
|
set(WITH_INPUT_NDOF OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
|
set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
|
||||||
if(NOT OSL_ROOT)
|
if(NOT OSL_ROOT)
|
||||||
set(OSL_ROOT ${CYCLES_OSL})
|
set(OSL_ROOT ${CYCLES_OSL})
|
||||||
endif()
|
endif()
|
||||||
find_package_wrapper(OpenShadingLanguage)
|
find_package_wrapper(OpenShadingLanguage)
|
||||||
if(OSL_FOUND)
|
if(OSL_FOUND)
|
||||||
if(${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6")
|
if(${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6")
|
||||||
# Note: --whole-archive is needed to force loading of all symbols in liboslexec,
|
# Note: --whole-archive is needed to force loading of all symbols in liboslexec,
|
||||||
# otherwise LLVM is missing the osl_allocate_closure_component function
|
# otherwise LLVM is missing the osl_allocate_closure_component function
|
||||||
set(OSL_LIBRARIES
|
set(OSL_LIBRARIES
|
||||||
${OSL_OSLCOMP_LIBRARY}
|
${OSL_OSLCOMP_LIBRARY}
|
||||||
-Wl,--whole-archive ${OSL_OSLEXEC_LIBRARY}
|
-Wl,--whole-archive ${OSL_OSLEXEC_LIBRARY}
|
||||||
-Wl,--no-whole-archive ${OSL_OSLQUERY_LIBRARY}
|
-Wl,--no-whole-archive ${OSL_OSLQUERY_LIBRARY}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
message(STATUS "OSL not found, disabling it from Cycles")
|
message(STATUS "OSL not found, disabling it from Cycles")
|
||||||
set(WITH_CYCLES_OSL OFF)
|
set(WITH_CYCLES_OSL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
find_package_wrapper(OpenVDB)
|
find_package_wrapper(OpenVDB)
|
||||||
find_package_wrapper(TBB)
|
find_package_wrapper(TBB)
|
||||||
find_package_wrapper(Blosc)
|
find_package_wrapper(Blosc)
|
||||||
if(NOT TBB_FOUND)
|
if(NOT TBB_FOUND)
|
||||||
set(WITH_OPENVDB OFF)
|
set(WITH_OPENVDB OFF)
|
||||||
set(WITH_OPENVDB_BLOSC OFF)
|
set(WITH_OPENVDB_BLOSC OFF)
|
||||||
message(STATUS "TBB not found, disabling OpenVDB")
|
message(STATUS "TBB not found, disabling OpenVDB")
|
||||||
elseif(NOT OPENVDB_FOUND)
|
elseif(NOT OPENVDB_FOUND)
|
||||||
set(WITH_OPENVDB OFF)
|
set(WITH_OPENVDB OFF)
|
||||||
set(WITH_OPENVDB_BLOSC OFF)
|
set(WITH_OPENVDB_BLOSC OFF)
|
||||||
message(STATUS "OpenVDB not found, disabling it")
|
message(STATUS "OpenVDB not found, disabling it")
|
||||||
elseif(NOT BLOSC_FOUND)
|
elseif(NOT BLOSC_FOUND)
|
||||||
set(WITH_OPENVDB_BLOSC OFF)
|
set(WITH_OPENVDB_BLOSC OFF)
|
||||||
message(STATUS "Blosc not found, disabling it for OpenVBD")
|
message(STATUS "Blosc not found, disabling it for OpenVBD")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
find_package_wrapper(Alembic)
|
find_package_wrapper(Alembic)
|
||||||
|
|
||||||
if(WITH_ALEMBIC_HDF5)
|
if(WITH_ALEMBIC_HDF5)
|
||||||
set(HDF5_ROOT_DIR ${LIBDIR}/hdf5)
|
set(HDF5_ROOT_DIR ${LIBDIR}/hdf5)
|
||||||
find_package_wrapper(HDF5)
|
find_package_wrapper(HDF5)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT ALEMBIC_FOUND OR (WITH_ALEMBIC_HDF5 AND NOT HDF5_FOUND))
|
if(NOT ALEMBIC_FOUND OR (WITH_ALEMBIC_HDF5 AND NOT HDF5_FOUND))
|
||||||
set(WITH_ALEMBIC OFF)
|
set(WITH_ALEMBIC OFF)
|
||||||
set(WITH_ALEMBIC_HDF5 OFF)
|
set(WITH_ALEMBIC_HDF5 OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BOOST)
|
if(WITH_BOOST)
|
||||||
# uses in build instructions to override include and library variables
|
# uses in build instructions to override include and library variables
|
||||||
if(NOT BOOST_CUSTOM)
|
if(NOT BOOST_CUSTOM)
|
||||||
if(WITH_STATIC_LIBS)
|
if(WITH_STATIC_LIBS)
|
||||||
set(Boost_USE_STATIC_LIBS ON)
|
set(Boost_USE_STATIC_LIBS ON)
|
||||||
endif()
|
endif()
|
||||||
set(Boost_USE_MULTITHREADED ON)
|
set(Boost_USE_MULTITHREADED ON)
|
||||||
set(__boost_packages filesystem regex thread date_time)
|
set(__boost_packages filesystem regex thread date_time)
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
if(NOT (${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6"))
|
if(NOT (${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6"))
|
||||||
list(APPEND __boost_packages wave)
|
list(APPEND __boost_packages wave)
|
||||||
else()
|
else()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
list(APPEND __boost_packages locale)
|
list(APPEND __boost_packages locale)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_CYCLES_NETWORK)
|
if(WITH_CYCLES_NETWORK)
|
||||||
list(APPEND __boost_packages serialization)
|
list(APPEND __boost_packages serialization)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
list(APPEND __boost_packages iostreams)
|
list(APPEND __boost_packages iostreams)
|
||||||
endif()
|
endif()
|
||||||
list(APPEND __boost_packages system)
|
list(APPEND __boost_packages system)
|
||||||
find_package(Boost 1.48 COMPONENTS ${__boost_packages})
|
find_package(Boost 1.48 COMPONENTS ${__boost_packages})
|
||||||
if(NOT Boost_FOUND)
|
if(NOT Boost_FOUND)
|
||||||
# try to find non-multithreaded if -mt not found, this flag
|
# try to find non-multithreaded if -mt not found, this flag
|
||||||
# doesn't matter for us, it has nothing to do with thread
|
# doesn't matter for us, it has nothing to do with thread
|
||||||
# safety, but keep it to not disturb build setups
|
# safety, but keep it to not disturb build setups
|
||||||
set(Boost_USE_MULTITHREADED OFF)
|
set(Boost_USE_MULTITHREADED OFF)
|
||||||
find_package(Boost 1.48 COMPONENTS ${__boost_packages})
|
find_package(Boost 1.48 COMPONENTS ${__boost_packages})
|
||||||
endif()
|
endif()
|
||||||
unset(__boost_packages)
|
unset(__boost_packages)
|
||||||
if(Boost_USE_STATIC_LIBS AND WITH_BOOST_ICU)
|
if(Boost_USE_STATIC_LIBS AND WITH_BOOST_ICU)
|
||||||
find_package(IcuLinux)
|
find_package(IcuLinux)
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(Boost_DIR) # why doesn't boost do this?
|
mark_as_advanced(Boost_DIR) # why doesn't boost do this?
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
|
set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
|
||||||
set(BOOST_LIBRARIES ${Boost_LIBRARIES})
|
set(BOOST_LIBRARIES ${Boost_LIBRARIES})
|
||||||
set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
|
set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
|
||||||
set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
|
set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
find_package_wrapper(OpenImageIO)
|
find_package_wrapper(OpenImageIO)
|
||||||
if(NOT OPENIMAGEIO_PUGIXML_FOUND AND WITH_CYCLES_STANDALONE)
|
if(NOT OPENIMAGEIO_PUGIXML_FOUND AND WITH_CYCLES_STANDALONE)
|
||||||
find_package_wrapper(PugiXML)
|
find_package_wrapper(PugiXML)
|
||||||
else()
|
else()
|
||||||
set(PUGIXML_INCLUDE_DIR "${OPENIMAGEIO_INCLUDE_DIR/OpenImageIO}")
|
set(PUGIXML_INCLUDE_DIR "${OPENIMAGEIO_INCLUDE_DIR/OpenImageIO}")
|
||||||
set(PUGIXML_LIBRARIES "")
|
set(PUGIXML_LIBRARIES "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENIMAGEIO_LIBRARIES
|
set(OPENIMAGEIO_LIBRARIES
|
||||||
${OPENIMAGEIO_LIBRARIES}
|
${OPENIMAGEIO_LIBRARIES}
|
||||||
${PNG_LIBRARIES}
|
${PNG_LIBRARIES}
|
||||||
${JPEG_LIBRARIES}
|
${JPEG_LIBRARIES}
|
||||||
${ZLIB_LIBRARIES}
|
${ZLIB_LIBRARIES}
|
||||||
${BOOST_LIBRARIES}
|
${BOOST_LIBRARIES}
|
||||||
)
|
)
|
||||||
set(OPENIMAGEIO_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
set(OPENIMAGEIO_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
||||||
set(OPENIMAGEIO_DEFINITIONS "")
|
set(OPENIMAGEIO_DEFINITIONS "")
|
||||||
|
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
list(APPEND OPENIMAGEIO_LIBRARIES "${TIFF_LIBRARY}")
|
list(APPEND OPENIMAGEIO_LIBRARIES "${TIFF_LIBRARY}")
|
||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
|
list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT OPENIMAGEIO_FOUND)
|
if(NOT OPENIMAGEIO_FOUND)
|
||||||
set(WITH_OPENIMAGEIO OFF)
|
set(WITH_OPENIMAGEIO OFF)
|
||||||
message(STATUS "OpenImageIO not found, disabling WITH_CYCLES")
|
message(STATUS "OpenImageIO not found, disabling WITH_CYCLES")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
find_package_wrapper(OpenColorIO)
|
find_package_wrapper(OpenColorIO)
|
||||||
|
|
||||||
set(OPENCOLORIO_LIBRARIES ${OPENCOLORIO_LIBRARIES})
|
set(OPENCOLORIO_LIBRARIES ${OPENCOLORIO_LIBRARIES})
|
||||||
set(OPENCOLORIO_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
set(OPENCOLORIO_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
||||||
set(OPENCOLORIO_DEFINITIONS)
|
set(OPENCOLORIO_DEFINITIONS)
|
||||||
|
|
||||||
if(NOT OPENCOLORIO_FOUND)
|
if(NOT OPENCOLORIO_FOUND)
|
||||||
set(WITH_OPENCOLORIO OFF)
|
set(WITH_OPENCOLORIO OFF)
|
||||||
message(STATUS "OpenColorIO not found")
|
message(STATUS "OpenColorIO not found")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_EMBREE)
|
if(WITH_CYCLES_EMBREE)
|
||||||
find_package(Embree 3.2.4 REQUIRED)
|
find_package(Embree 3.2.4 REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LLVM)
|
if(WITH_LLVM)
|
||||||
if(EXISTS ${LIBDIR})
|
if(EXISTS ${LIBDIR})
|
||||||
set(LLVM_STATIC ON)
|
set(LLVM_STATIC ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package_wrapper(LLVM)
|
find_package_wrapper(LLVM)
|
||||||
|
|
||||||
# Symbol conflicts with same UTF library used by OpenCollada
|
# Symbol conflicts with same UTF library used by OpenCollada
|
||||||
if(EXISTS ${LIBDIR})
|
if(EXISTS ${LIBDIR})
|
||||||
if(WITH_OPENCOLLADA AND (${LLVM_VERSION} VERSION_LESS "4.0.0"))
|
if(WITH_OPENCOLLADA AND (${LLVM_VERSION} VERSION_LESS "4.0.0"))
|
||||||
list(REMOVE_ITEM OPENCOLLADA_LIBRARIES ${OPENCOLLADA_UTF_LIBRARY})
|
list(REMOVE_ITEM OPENCOLLADA_LIBRARIES ${OPENCOLLADA_UTF_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT LLVM_FOUND)
|
if(NOT LLVM_FOUND)
|
||||||
set(WITH_LLVM OFF)
|
set(WITH_LLVM OFF)
|
||||||
message(STATUS "LLVM not found")
|
message(STATUS "LLVM not found")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LLVM OR WITH_SDL_DYNLOAD)
|
if(WITH_LLVM OR WITH_SDL_DYNLOAD)
|
||||||
# Fix for conflict with Mesa llvmpipe
|
# Fix for conflict with Mesa llvmpipe
|
||||||
set(PLATFORM_LINKFLAGS
|
set(PLATFORM_LINKFLAGS
|
||||||
"${PLATFORM_LINKFLAGS} -Wl,--version-script='${CMAKE_SOURCE_DIR}/source/creator/blender.map'"
|
"${PLATFORM_LINKFLAGS} -Wl,--version-script='${CMAKE_SOURCE_DIR}/source/creator/blender.map'"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENSUBDIV)
|
if(WITH_OPENSUBDIV)
|
||||||
find_package_wrapper(OpenSubdiv)
|
find_package_wrapper(OpenSubdiv)
|
||||||
|
|
||||||
set(OPENSUBDIV_LIBRARIES ${OPENSUBDIV_LIBRARIES})
|
set(OPENSUBDIV_LIBRARIES ${OPENSUBDIV_LIBRARIES})
|
||||||
set(OPENSUBDIV_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
set(OPENSUBDIV_LIBPATH) # TODO, remove and reference the absolute path everywhere
|
||||||
|
|
||||||
if(NOT OPENSUBDIV_FOUND)
|
if(NOT OPENSUBDIV_FOUND)
|
||||||
set(WITH_OPENSUBDIV OFF)
|
set(WITH_OPENSUBDIV OFF)
|
||||||
message(STATUS "OpenSubdiv not found")
|
message(STATUS "OpenSubdiv not found")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
|
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
|
||||||
if(HAIKU)
|
if(HAIKU)
|
||||||
list(APPEND PLATFORM_LINKLIBS -lnetwork)
|
list(APPEND PLATFORM_LINKLIBS -lnetwork)
|
||||||
else()
|
else()
|
||||||
list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
|
list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(Threads REQUIRED)
|
find_package(Threads REQUIRED)
|
||||||
@@ -420,15 +420,15 @@ list(APPEND PLATFORM_LINKLIBS ${CMAKE_THREAD_LIBS_INIT})
|
|||||||
set(PTHREADS_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
set(PTHREADS_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
||||||
|
|
||||||
if(CMAKE_DL_LIBS)
|
if(CMAKE_DL_LIBS)
|
||||||
list(APPEND PLATFORM_LINKLIBS ${CMAKE_DL_LIBS})
|
list(APPEND PLATFORM_LINKLIBS ${CMAKE_DL_LIBS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
if(NOT WITH_PYTHON_MODULE)
|
if(NOT WITH_PYTHON_MODULE)
|
||||||
# binreloc is linux only
|
# binreloc is linux only
|
||||||
set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
|
set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
|
||||||
set(WITH_BINRELOC ON)
|
set(WITH_BINRELOC ON)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# lfs on glibc, all compilers should use
|
# lfs on glibc, all compilers should use
|
||||||
@@ -436,43 +436,43 @@ add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
|
|||||||
|
|
||||||
# GNU Compiler
|
# GNU Compiler
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
||||||
|
|
||||||
if(WITH_LINKER_GOLD)
|
if(WITH_LINKER_GOLD)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version
|
COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version
|
||||||
ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
|
ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
|
||||||
if("${LD_VERSION}" MATCHES "GNU gold")
|
if("${LD_VERSION}" MATCHES "GNU gold")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fuse-ld=gold")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fuse-ld=gold")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fuse-ld=gold")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fuse-ld=gold")
|
||||||
else()
|
else()
|
||||||
message(STATUS "GNU gold linker isn't available, using the default system linker.")
|
message(STATUS "GNU gold linker isn't available, using the default system linker.")
|
||||||
endif()
|
endif()
|
||||||
unset(LD_VERSION)
|
unset(LD_VERSION)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# CLang is the same as GCC for now.
|
# CLang is the same as GCC for now.
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
||||||
# Intel C++ Compiler
|
# Intel C++ Compiler
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
# think these next two are broken
|
# think these next two are broken
|
||||||
find_program(XIAR xiar)
|
find_program(XIAR xiar)
|
||||||
if(XIAR)
|
if(XIAR)
|
||||||
set(CMAKE_AR "${XIAR}")
|
set(CMAKE_AR "${XIAR}")
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(XIAR)
|
mark_as_advanced(XIAR)
|
||||||
|
|
||||||
find_program(XILD xild)
|
find_program(XILD xild)
|
||||||
if(XILD)
|
if(XILD)
|
||||||
set(CMAKE_LINKER "${XILD}")
|
set(CMAKE_LINKER "${XILD}")
|
||||||
endif()
|
endif()
|
||||||
mark_as_advanced(XILD)
|
mark_as_advanced(XILD)
|
||||||
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fp-model precise -prec_div -parallel")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fp-model precise -prec_div -parallel")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fp-model precise -prec_div -parallel")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fp-model precise -prec_div -parallel")
|
||||||
|
|
||||||
# set(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -diag-enable sc3")
|
# set(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -diag-enable sc3")
|
||||||
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
||||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -static-intel")
|
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -static-intel")
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -23,44 +23,44 @@
|
|||||||
add_definitions(-DWIN32)
|
add_definitions(-DWIN32)
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
message(FATAL_ERROR "Compiler is unsupported")
|
message(FATAL_ERROR "Compiler is unsupported")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||||
set(MSVC_CLANG On)
|
set(MSVC_CLANG On)
|
||||||
set(VC_TOOLS_DIR $ENV{VCToolsRedistDir} CACHE STRING "Location of the msvc redistributables")
|
set(VC_TOOLS_DIR $ENV{VCToolsRedistDir} CACHE STRING "Location of the msvc redistributables")
|
||||||
set(MSVC_REDIST_DIR ${VC_TOOLS_DIR})
|
set(MSVC_REDIST_DIR ${VC_TOOLS_DIR})
|
||||||
if (DEFINED MSVC_REDIST_DIR)
|
if (DEFINED MSVC_REDIST_DIR)
|
||||||
file(TO_CMAKE_PATH ${MSVC_REDIST_DIR} MSVC_REDIST_DIR)
|
file(TO_CMAKE_PATH ${MSVC_REDIST_DIR} MSVC_REDIST_DIR)
|
||||||
else()
|
else()
|
||||||
message("Unable to detect the Visual Studio redist directory, copying of the runtime dlls will not work, try running from the visual studio developer prompt.")
|
message("Unable to detect the Visual Studio redist directory, copying of the runtime dlls will not work, try running from the visual studio developer prompt.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set_property(GLOBAL PROPERTY USE_FOLDERS ${WINDOWS_USE_VISUAL_STUDIO_FOLDERS})
|
set_property(GLOBAL PROPERTY USE_FOLDERS ${WINDOWS_USE_VISUAL_STUDIO_FOLDERS})
|
||||||
|
|
||||||
if(NOT WITH_PYTHON_MODULE)
|
if(NOT WITH_PYTHON_MODULE)
|
||||||
set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT blender)
|
set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT blender)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
macro(warn_hardcoded_paths package_name
|
macro(warn_hardcoded_paths package_name
|
||||||
)
|
)
|
||||||
if(WITH_WINDOWS_FIND_MODULES)
|
if(WITH_WINDOWS_FIND_MODULES)
|
||||||
message(WARNING "Using HARDCODED ${package_name} locations")
|
message(WARNING "Using HARDCODED ${package_name} locations")
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(windows_find_package package_name
|
macro(windows_find_package package_name
|
||||||
)
|
)
|
||||||
if(WITH_WINDOWS_FIND_MODULES)
|
if(WITH_WINDOWS_FIND_MODULES)
|
||||||
find_package(${package_name})
|
find_package(${package_name})
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
macro(find_package_wrapper)
|
macro(find_package_wrapper)
|
||||||
if(WITH_WINDOWS_FIND_MODULES)
|
if(WITH_WINDOWS_FIND_MODULES)
|
||||||
find_package(${ARGV})
|
find_package(${ARGV})
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
add_definitions(-DWIN32)
|
add_definitions(-DWIN32)
|
||||||
@@ -71,22 +71,22 @@ add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
|
|||||||
|
|
||||||
# Minimum MSVC Version
|
# Minimum MSVC Version
|
||||||
if(CMAKE_CXX_COMPILER_ID MATCHES MSVC)
|
if(CMAKE_CXX_COMPILER_ID MATCHES MSVC)
|
||||||
if(MSVC_VERSION EQUAL 1800)
|
if(MSVC_VERSION EQUAL 1800)
|
||||||
set(_min_ver "18.0.31101")
|
set(_min_ver "18.0.31101")
|
||||||
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Visual Studio 2013 (Update 4, ${_min_ver}) required, "
|
"Visual Studio 2013 (Update 4, ${_min_ver}) required, "
|
||||||
"found (${CMAKE_CXX_COMPILER_VERSION})")
|
"found (${CMAKE_CXX_COMPILER_VERSION})")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(MSVC_VERSION EQUAL 1900)
|
if(MSVC_VERSION EQUAL 1900)
|
||||||
set(_min_ver "19.0.24210")
|
set(_min_ver "19.0.24210")
|
||||||
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Visual Studio 2015 (Update 3, ${_min_ver}) required, "
|
"Visual Studio 2015 (Update 3, ${_min_ver}) required, "
|
||||||
"found (${CMAKE_CXX_COMPILER_VERSION})")
|
"found (${CMAKE_CXX_COMPILER_VERSION})")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
unset(_min_ver)
|
unset(_min_ver)
|
||||||
|
|
||||||
@@ -96,20 +96,20 @@ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /SAFESEH:NO")
|
|||||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /SAFESEH:NO")
|
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /SAFESEH:NO")
|
||||||
|
|
||||||
list(APPEND PLATFORM_LINKLIBS
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32
|
ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32
|
||||||
advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp
|
advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_INPUT_IME)
|
if(WITH_INPUT_IME)
|
||||||
list(APPEND PLATFORM_LINKLIBS imm32)
|
list(APPEND PLATFORM_LINKLIBS imm32)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-D_CRT_NONSTDC_NO_DEPRECATE
|
-D_CRT_NONSTDC_NO_DEPRECATE
|
||||||
-D_CRT_SECURE_NO_DEPRECATE
|
-D_CRT_SECURE_NO_DEPRECATE
|
||||||
-D_SCL_SECURE_NO_DEPRECATE
|
-D_SCL_SECURE_NO_DEPRECATE
|
||||||
-D_CONSOLE
|
-D_CONSOLE
|
||||||
-D_LIB
|
-D_LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
# MSVC11 needs _ALLOW_KEYWORD_MACROS to build
|
# MSVC11 needs _ALLOW_KEYWORD_MACROS to build
|
||||||
@@ -128,11 +128,11 @@ include(InstallRequiredSystemLibraries)
|
|||||||
remove_cc_flag("/MDd" "/MD")
|
remove_cc_flag("/MDd" "/MD")
|
||||||
|
|
||||||
if(MSVC_CLANG) # Clangs version of cl doesn't support all flags
|
if(MSVC_CLANG) # Clangs version of cl doesn't support all flags
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARN_FLAGS} /nologo /J /Gd /EHsc -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference ")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARN_FLAGS} /nologo /J /Gd /EHsc -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference ")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /nologo /J /Gd -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /nologo /J /Gd -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference")
|
||||||
else()
|
else()
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /nologo /J /Gd /MP /EHsc")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /nologo /J /Gd /MP /EHsc")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /nologo /J /Gd /MP")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /nologo /J /Gd /MP")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
|
||||||
@@ -152,50 +152,50 @@ set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /ignore:4049 /ignore:4217 /ignore:
|
|||||||
set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /ignore:4221")
|
set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /ignore:4221")
|
||||||
|
|
||||||
if(CMAKE_CL_64)
|
if(CMAKE_CL_64)
|
||||||
set(PLATFORM_LINKFLAGS "/MACHINE:X64 ${PLATFORM_LINKFLAGS}")
|
set(PLATFORM_LINKFLAGS "/MACHINE:X64 ${PLATFORM_LINKFLAGS}")
|
||||||
else()
|
else()
|
||||||
set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
|
set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PLATFORM_LINKFLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG} /IGNORE:4099 /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libc.lib")
|
set(PLATFORM_LINKFLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG} /IGNORE:4099 /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libc.lib")
|
||||||
|
|
||||||
if(NOT DEFINED LIBDIR)
|
if(NOT DEFINED LIBDIR)
|
||||||
|
|
||||||
# Setup 64bit and 64bit windows systems
|
# Setup 64bit and 64bit windows systems
|
||||||
if(CMAKE_CL_64)
|
if(CMAKE_CL_64)
|
||||||
message(STATUS "64 bit compiler detected.")
|
message(STATUS "64 bit compiler detected.")
|
||||||
set(LIBDIR_BASE "win64")
|
set(LIBDIR_BASE "win64")
|
||||||
else()
|
else()
|
||||||
message(STATUS "32 bit compiler detected.")
|
message(STATUS "32 bit compiler detected.")
|
||||||
set(LIBDIR_BASE "windows")
|
set(LIBDIR_BASE "windows")
|
||||||
endif()
|
endif()
|
||||||
# Can be 1910..1912
|
# Can be 1910..1912
|
||||||
if(MSVC_VERSION GREATER 1919)
|
if(MSVC_VERSION GREATER 1919)
|
||||||
message(STATUS "Visual Studio 2019 detected.")
|
message(STATUS "Visual Studio 2019 detected.")
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
||||||
elseif(MSVC_VERSION GREATER 1909)
|
elseif(MSVC_VERSION GREATER 1909)
|
||||||
message(STATUS "Visual Studio 2017 detected.")
|
message(STATUS "Visual Studio 2017 detected.")
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
||||||
elseif(MSVC_VERSION EQUAL 1900)
|
elseif(MSVC_VERSION EQUAL 1900)
|
||||||
message(STATUS "Visual Studio 2015 detected.")
|
message(STATUS "Visual Studio 2015 detected.")
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
|
||||||
else()
|
else()
|
||||||
message(STATUS "Visual Studio 2013 detected.")
|
message(STATUS "Visual Studio 2013 detected.")
|
||||||
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc12)
|
set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc12)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
||||||
endif()
|
endif()
|
||||||
if(NOT EXISTS "${LIBDIR}/")
|
if(NOT EXISTS "${LIBDIR}/")
|
||||||
message(FATAL_ERROR "Windows requires pre-compiled libs at: '${LIBDIR}'")
|
message(FATAL_ERROR "Windows requires pre-compiled libs at: '${LIBDIR}'")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Add each of our libraries to our cmake_prefix_path so find_package() could work
|
# Add each of our libraries to our cmake_prefix_path so find_package() could work
|
||||||
file(GLOB children RELATIVE ${LIBDIR} ${LIBDIR}/*)
|
file(GLOB children RELATIVE ${LIBDIR} ${LIBDIR}/*)
|
||||||
foreach(child ${children})
|
foreach(child ${children})
|
||||||
if(IS_DIRECTORY ${LIBDIR}/${child})
|
if(IS_DIRECTORY ${LIBDIR}/${child})
|
||||||
list(APPEND CMAKE_PREFIX_PATH ${LIBDIR}/${child})
|
list(APPEND CMAKE_PREFIX_PATH ${LIBDIR}/${child})
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
set(ZLIB_INCLUDE_DIRS ${LIBDIR}/zlib/include)
|
set(ZLIB_INCLUDE_DIRS ${LIBDIR}/zlib/include)
|
||||||
@@ -208,20 +208,20 @@ windows_find_package(zlib) # we want to find before finding things that depend o
|
|||||||
windows_find_package(png)
|
windows_find_package(png)
|
||||||
|
|
||||||
if(NOT PNG_FOUND)
|
if(NOT PNG_FOUND)
|
||||||
warn_hardcoded_paths(libpng)
|
warn_hardcoded_paths(libpng)
|
||||||
set(PNG_PNG_INCLUDE_DIR ${LIBDIR}/png/include)
|
set(PNG_PNG_INCLUDE_DIR ${LIBDIR}/png/include)
|
||||||
set(PNG_LIBRARIES ${LIBDIR}/png/lib/libpng.lib)
|
set(PNG_LIBRARIES ${LIBDIR}/png/lib/libpng.lib)
|
||||||
set(PNG "${LIBDIR}/png")
|
set(PNG "${LIBDIR}/png")
|
||||||
set(PNG_INCLUDE_DIRS "${PNG}/include")
|
set(PNG_INCLUDE_DIRS "${PNG}/include")
|
||||||
set(PNG_LIBPATH ${PNG}/lib) # not cmake defined
|
set(PNG_LIBPATH ${PNG}/lib) # not cmake defined
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(JPEG_NAMES ${JPEG_NAMES} libjpeg)
|
set(JPEG_NAMES ${JPEG_NAMES} libjpeg)
|
||||||
windows_find_package(jpeg REQUIRED)
|
windows_find_package(jpeg REQUIRED)
|
||||||
if(NOT JPEG_FOUND)
|
if(NOT JPEG_FOUND)
|
||||||
warn_hardcoded_paths(jpeg)
|
warn_hardcoded_paths(jpeg)
|
||||||
set(JPEG_INCLUDE_DIR ${LIBDIR}/jpeg/include)
|
set(JPEG_INCLUDE_DIR ${LIBDIR}/jpeg/include)
|
||||||
set(JPEG_LIBRARIES ${LIBDIR}/jpeg/lib/libjpeg.lib)
|
set(JPEG_LIBRARIES ${LIBDIR}/jpeg/lib/libjpeg.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PTHREADS_INCLUDE_DIRS ${LIBDIR}/pthreads/include)
|
set(PTHREADS_INCLUDE_DIRS ${LIBDIR}/pthreads/include)
|
||||||
@@ -229,313 +229,313 @@ set(PTHREADS_LIBRARIES ${LIBDIR}/pthreads/lib/pthreadVC3.lib)
|
|||||||
|
|
||||||
set(FREETYPE ${LIBDIR}/freetype)
|
set(FREETYPE ${LIBDIR}/freetype)
|
||||||
set(FREETYPE_INCLUDE_DIRS
|
set(FREETYPE_INCLUDE_DIRS
|
||||||
${LIBDIR}/freetype/include
|
${LIBDIR}/freetype/include
|
||||||
${LIBDIR}/freetype/include/freetype2
|
${LIBDIR}/freetype/include/freetype2
|
||||||
)
|
)
|
||||||
set(FREETYPE_LIBRARY ${LIBDIR}/freetype/lib/freetype2ST.lib)
|
set(FREETYPE_LIBRARY ${LIBDIR}/freetype/lib/freetype2ST.lib)
|
||||||
windows_find_package(freetype REQUIRED)
|
windows_find_package(freetype REQUIRED)
|
||||||
|
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
set(FFTW3 ${LIBDIR}/fftw3)
|
set(FFTW3 ${LIBDIR}/fftw3)
|
||||||
set(FFTW3_LIBRARIES ${FFTW3}/lib/libfftw.lib)
|
set(FFTW3_LIBRARIES ${FFTW3}/lib/libfftw.lib)
|
||||||
set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
|
set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
|
||||||
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
set(OPENCOLLADA ${LIBDIR}/opencollada)
|
set(OPENCOLLADA ${LIBDIR}/opencollada)
|
||||||
|
|
||||||
set(OPENCOLLADA_INCLUDE_DIRS
|
set(OPENCOLLADA_INCLUDE_DIRS
|
||||||
${OPENCOLLADA}/include/opencollada/COLLADAStreamWriter
|
${OPENCOLLADA}/include/opencollada/COLLADAStreamWriter
|
||||||
${OPENCOLLADA}/include/opencollada/COLLADABaseUtils
|
${OPENCOLLADA}/include/opencollada/COLLADABaseUtils
|
||||||
${OPENCOLLADA}/include/opencollada/COLLADAFramework
|
${OPENCOLLADA}/include/opencollada/COLLADAFramework
|
||||||
${OPENCOLLADA}/include/opencollada/COLLADASaxFrameworkLoader
|
${OPENCOLLADA}/include/opencollada/COLLADASaxFrameworkLoader
|
||||||
${OPENCOLLADA}/include/opencollada/GeneratedSaxParser
|
${OPENCOLLADA}/include/opencollada/GeneratedSaxParser
|
||||||
)
|
)
|
||||||
|
|
||||||
set(OPENCOLLADA_LIBRARIES
|
set(OPENCOLLADA_LIBRARIES
|
||||||
${OPENCOLLADA}/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib
|
${OPENCOLLADA}/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/OpenCOLLADAFramework.lib
|
${OPENCOLLADA}/lib/opencollada/OpenCOLLADAFramework.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/OpenCOLLADABaseUtils.lib
|
${OPENCOLLADA}/lib/opencollada/OpenCOLLADABaseUtils.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/OpenCOLLADAStreamWriter.lib
|
${OPENCOLLADA}/lib/opencollada/OpenCOLLADAStreamWriter.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/MathMLSolver.lib
|
${OPENCOLLADA}/lib/opencollada/MathMLSolver.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/GeneratedSaxParser.lib
|
${OPENCOLLADA}/lib/opencollada/GeneratedSaxParser.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/xml.lib
|
${OPENCOLLADA}/lib/opencollada/xml.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/buffer.lib
|
${OPENCOLLADA}/lib/opencollada/buffer.lib
|
||||||
${OPENCOLLADA}/lib/opencollada/ftoa.lib
|
${OPENCOLLADA}/lib/opencollada/ftoa.lib
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND OPENCOLLADA_LIBRARIES ${OPENCOLLADA}/lib/opencollada/UTF.lib)
|
list(APPEND OPENCOLLADA_LIBRARIES ${OPENCOLLADA}/lib/opencollada/UTF.lib)
|
||||||
|
|
||||||
set(PCRE_LIBRARIES
|
set(PCRE_LIBRARIES
|
||||||
${OPENCOLLADA}/lib/opencollada/pcre.lib
|
${OPENCOLLADA}/lib/opencollada/pcre.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
set(FFMPEG_INCLUDE_DIRS
|
set(FFMPEG_INCLUDE_DIRS
|
||||||
${LIBDIR}/ffmpeg/include
|
${LIBDIR}/ffmpeg/include
|
||||||
${LIBDIR}/ffmpeg/include/msvc
|
${LIBDIR}/ffmpeg/include/msvc
|
||||||
)
|
)
|
||||||
windows_find_package(FFMPEG)
|
windows_find_package(FFMPEG)
|
||||||
if(NOT FFMPEG_FOUND)
|
if(NOT FFMPEG_FOUND)
|
||||||
warn_hardcoded_paths(ffmpeg)
|
warn_hardcoded_paths(ffmpeg)
|
||||||
set(FFMPEG_LIBRARIES
|
set(FFMPEG_LIBRARIES
|
||||||
${LIBDIR}/ffmpeg/lib/avcodec.lib
|
${LIBDIR}/ffmpeg/lib/avcodec.lib
|
||||||
${LIBDIR}/ffmpeg/lib/avformat.lib
|
${LIBDIR}/ffmpeg/lib/avformat.lib
|
||||||
${LIBDIR}/ffmpeg/lib/avdevice.lib
|
${LIBDIR}/ffmpeg/lib/avdevice.lib
|
||||||
${LIBDIR}/ffmpeg/lib/avutil.lib
|
${LIBDIR}/ffmpeg/lib/avutil.lib
|
||||||
${LIBDIR}/ffmpeg/lib/swscale.lib
|
${LIBDIR}/ffmpeg/lib/swscale.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
|
set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
|
||||||
set(OPENEXR_VERSION "2.1")
|
set(OPENEXR_VERSION "2.1")
|
||||||
windows_find_package(OPENEXR REQUIRED)
|
windows_find_package(OPENEXR REQUIRED)
|
||||||
if(NOT OPENEXR_FOUND)
|
if(NOT OPENEXR_FOUND)
|
||||||
warn_hardcoded_paths(OpenEXR)
|
warn_hardcoded_paths(OpenEXR)
|
||||||
set(OPENEXR ${LIBDIR}/openexr)
|
set(OPENEXR ${LIBDIR}/openexr)
|
||||||
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
||||||
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
|
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
|
||||||
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
||||||
set(OPENEXR_LIBRARIES
|
set(OPENEXR_LIBRARIES
|
||||||
optimized ${OPENEXR_LIBPATH}/Iex_s.lib
|
optimized ${OPENEXR_LIBPATH}/Iex_s.lib
|
||||||
optimized ${OPENEXR_LIBPATH}/Half_s.lib
|
optimized ${OPENEXR_LIBPATH}/Half_s.lib
|
||||||
optimized ${OPENEXR_LIBPATH}/IlmImf_s.lib
|
optimized ${OPENEXR_LIBPATH}/IlmImf_s.lib
|
||||||
optimized ${OPENEXR_LIBPATH}/Imath_s.lib
|
optimized ${OPENEXR_LIBPATH}/Imath_s.lib
|
||||||
optimized ${OPENEXR_LIBPATH}/IlmThread_s.lib
|
optimized ${OPENEXR_LIBPATH}/IlmThread_s.lib
|
||||||
debug ${OPENEXR_LIBPATH}/Iex_s_d.lib
|
debug ${OPENEXR_LIBPATH}/Iex_s_d.lib
|
||||||
debug ${OPENEXR_LIBPATH}/Half_s_d.lib
|
debug ${OPENEXR_LIBPATH}/Half_s_d.lib
|
||||||
debug ${OPENEXR_LIBPATH}/IlmImf_s_d.lib
|
debug ${OPENEXR_LIBPATH}/IlmImf_s_d.lib
|
||||||
debug ${OPENEXR_LIBPATH}/Imath_s_d.lib
|
debug ${OPENEXR_LIBPATH}/Imath_s_d.lib
|
||||||
debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
|
debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
# Try to find tiff first then complain and set static and maybe wrong paths
|
# Try to find tiff first then complain and set static and maybe wrong paths
|
||||||
windows_find_package(TIFF)
|
windows_find_package(TIFF)
|
||||||
if(NOT TIFF_FOUND)
|
if(NOT TIFF_FOUND)
|
||||||
warn_hardcoded_paths(libtiff)
|
warn_hardcoded_paths(libtiff)
|
||||||
set(TIFF_LIBRARY ${LIBDIR}/tiff/lib/libtiff.lib)
|
set(TIFF_LIBRARY ${LIBDIR}/tiff/lib/libtiff.lib)
|
||||||
set(TIFF_INCLUDE_DIR ${LIBDIR}/tiff/include)
|
set(TIFF_INCLUDE_DIR ${LIBDIR}/tiff/include)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
set(JACK_INCLUDE_DIRS
|
set(JACK_INCLUDE_DIRS
|
||||||
${LIBDIR}/jack/include/jack
|
${LIBDIR}/jack/include/jack
|
||||||
${LIBDIR}/jack/include
|
${LIBDIR}/jack/include
|
||||||
)
|
)
|
||||||
set(JACK_LIBRARIES optimized ${LIBDIR}/jack/lib/libjack.lib debug ${LIBDIR}/jack/lib/libjack_d.lib)
|
set(JACK_LIBRARIES optimized ${LIBDIR}/jack/lib/libjack.lib debug ${LIBDIR}/jack/lib/libjack_d.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
set(PYTHON_VERSION 3.7) # CACHE STRING)
|
set(PYTHON_VERSION 3.7) # CACHE STRING)
|
||||||
|
|
||||||
string(REPLACE "." "" _PYTHON_VERSION_NO_DOTS ${PYTHON_VERSION})
|
string(REPLACE "." "" _PYTHON_VERSION_NO_DOTS ${PYTHON_VERSION})
|
||||||
# Use shared libs for vc2008 and vc2010 until we actually have vc2010 libs
|
# Use shared libs for vc2008 and vc2010 until we actually have vc2010 libs
|
||||||
set(PYTHON_LIBRARY ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DOTS}.lib)
|
set(PYTHON_LIBRARY ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DOTS}.lib)
|
||||||
unset(_PYTHON_VERSION_NO_DOTS)
|
unset(_PYTHON_VERSION_NO_DOTS)
|
||||||
|
|
||||||
# Shared includes for both vc2008 and vc2010
|
# Shared includes for both vc2008 and vc2010
|
||||||
set(PYTHON_INCLUDE_DIR ${LIBDIR}/python/include/python${PYTHON_VERSION})
|
set(PYTHON_INCLUDE_DIR ${LIBDIR}/python/include/python${PYTHON_VERSION})
|
||||||
|
|
||||||
# uncached vars
|
# uncached vars
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
|
||||||
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
|
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BOOST)
|
if(WITH_BOOST)
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(boost_extra_libs wave)
|
set(boost_extra_libs wave)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
list(APPEND boost_extra_libs locale)
|
list(APPEND boost_extra_libs locale)
|
||||||
endif()
|
endif()
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
list(APPEND boost_extra_libs iostreams)
|
list(APPEND boost_extra_libs iostreams)
|
||||||
endif()
|
endif()
|
||||||
set(Boost_USE_STATIC_RUNTIME ON) # prefix lib
|
set(Boost_USE_STATIC_RUNTIME ON) # prefix lib
|
||||||
set(Boost_USE_MULTITHREADED ON) # suffix -mt
|
set(Boost_USE_MULTITHREADED ON) # suffix -mt
|
||||||
set(Boost_USE_STATIC_LIBS ON) # suffix -s
|
set(Boost_USE_STATIC_LIBS ON) # suffix -s
|
||||||
if(WITH_WINDOWS_FIND_MODULES)
|
if(WITH_WINDOWS_FIND_MODULES)
|
||||||
find_package(Boost COMPONENTS date_time filesystem thread regex system ${boost_extra_libs})
|
find_package(Boost COMPONENTS date_time filesystem thread regex system ${boost_extra_libs})
|
||||||
endif()
|
endif()
|
||||||
if(NOT Boost_FOUND)
|
if(NOT Boost_FOUND)
|
||||||
warn_hardcoded_paths(BOOST)
|
warn_hardcoded_paths(BOOST)
|
||||||
set(BOOST ${LIBDIR}/boost)
|
set(BOOST ${LIBDIR}/boost)
|
||||||
set(BOOST_INCLUDE_DIR ${BOOST}/include)
|
set(BOOST_INCLUDE_DIR ${BOOST}/include)
|
||||||
set(BOOST_LIBPATH ${BOOST}/lib)
|
set(BOOST_LIBPATH ${BOOST}/lib)
|
||||||
if(CMAKE_CL_64)
|
if(CMAKE_CL_64)
|
||||||
set(BOOST_POSTFIX "vc140-mt-s-x64-1_68.lib")
|
set(BOOST_POSTFIX "vc140-mt-s-x64-1_68.lib")
|
||||||
set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x64-1_68.lib")
|
set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x64-1_68.lib")
|
||||||
else()
|
else()
|
||||||
set(BOOST_POSTFIX "vc140-mt-s-x32-1_68.lib")
|
set(BOOST_POSTFIX "vc140-mt-s-x32-1_68.lib")
|
||||||
set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x32-1_68.lib")
|
set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x32-1_68.lib")
|
||||||
endif()
|
endif()
|
||||||
set(BOOST_LIBRARIES
|
set(BOOST_LIBRARIES
|
||||||
optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_regex-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_regex-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_system-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_system-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_thread-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_thread-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_chrono-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_chrono-${BOOST_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_date_time-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_date_time-${BOOST_DEBUG_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_DEBUG_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_regex-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_regex-${BOOST_DEBUG_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_system-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_system-${BOOST_DEBUG_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_thread-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_thread-${BOOST_DEBUG_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_chrono-${BOOST_DEBUG_POSTFIX}
|
debug ${BOOST_LIBPATH}/libboost_chrono-${BOOST_DEBUG_POSTFIX}
|
||||||
)
|
)
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
|
set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_wave-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_wave-${BOOST_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_wave-${BOOST_DEBUG_POSTFIX})
|
debug ${BOOST_LIBPATH}/libboost_wave-${BOOST_DEBUG_POSTFIX})
|
||||||
endif()
|
endif()
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
|
set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_locale-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_locale-${BOOST_POSTFIX}
|
||||||
debug ${BOOST_LIBPATH}/libboost_locale-${BOOST_DEBUG_POSTFIX})
|
debug ${BOOST_LIBPATH}/libboost_locale-${BOOST_DEBUG_POSTFIX})
|
||||||
endif()
|
endif()
|
||||||
else() # we found boost using find_package
|
else() # we found boost using find_package
|
||||||
set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
|
set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
|
||||||
set(BOOST_LIBRARIES ${Boost_LIBRARIES})
|
set(BOOST_LIBRARIES ${Boost_LIBRARIES})
|
||||||
set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
|
set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
|
||||||
endif()
|
endif()
|
||||||
set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
|
set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENIMAGEIO)
|
if(WITH_OPENIMAGEIO)
|
||||||
windows_find_package(OpenImageIO)
|
windows_find_package(OpenImageIO)
|
||||||
set(OPENIMAGEIO ${LIBDIR}/openimageio)
|
set(OPENIMAGEIO ${LIBDIR}/openimageio)
|
||||||
set(OPENIMAGEIO_LIBPATH ${OPENIMAGEIO}/lib)
|
set(OPENIMAGEIO_LIBPATH ${OPENIMAGEIO}/lib)
|
||||||
set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
|
set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
|
||||||
set(OIIO_OPTIMIZED optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO.lib optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util.lib)
|
set(OIIO_OPTIMIZED optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO.lib optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util.lib)
|
||||||
set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
|
set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
|
||||||
set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
|
set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
|
||||||
|
|
||||||
set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
|
set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
|
||||||
set(OPENCOLORIO_DEFINITIONS "-DOCIO_STATIC_BUILD")
|
set(OPENCOLORIO_DEFINITIONS "-DOCIO_STATIC_BUILD")
|
||||||
set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
|
set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
|
||||||
add_definitions(-DOIIO_STATIC_BUILD)
|
add_definitions(-DOIIO_STATIC_BUILD)
|
||||||
add_definitions(-DOIIO_NO_SSE=1)
|
add_definitions(-DOIIO_NO_SSE=1)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LLVM)
|
if(WITH_LLVM)
|
||||||
set(LLVM_ROOT_DIR ${LIBDIR}/llvm CACHE PATH "Path to the LLVM installation")
|
set(LLVM_ROOT_DIR ${LIBDIR}/llvm CACHE PATH "Path to the LLVM installation")
|
||||||
set(LLVM_INCLUDE_DIRS ${LLVM_ROOT_DIR}/$<$<CONFIG:Debug>:Debug>/include CACHE PATH "Path to the LLVM include directory")
|
set(LLVM_INCLUDE_DIRS ${LLVM_ROOT_DIR}/$<$<CONFIG:Debug>:Debug>/include CACHE PATH "Path to the LLVM include directory")
|
||||||
file(GLOB LLVM_LIBRARY_OPTIMIZED ${LLVM_ROOT_DIR}/lib/*.lib)
|
file(GLOB LLVM_LIBRARY_OPTIMIZED ${LLVM_ROOT_DIR}/lib/*.lib)
|
||||||
|
|
||||||
if(EXISTS ${LLVM_ROOT_DIR}/debug/lib)
|
if(EXISTS ${LLVM_ROOT_DIR}/debug/lib)
|
||||||
foreach(LLVM_OPTIMIZED_LIB ${LLVM_LIBRARY_OPTIMIZED})
|
foreach(LLVM_OPTIMIZED_LIB ${LLVM_LIBRARY_OPTIMIZED})
|
||||||
get_filename_component(LIBNAME ${LLVM_OPTIMIZED_LIB} ABSOLUTE)
|
get_filename_component(LIBNAME ${LLVM_OPTIMIZED_LIB} ABSOLUTE)
|
||||||
list(APPEND LLVM_LIBS optimized ${LIBNAME})
|
list(APPEND LLVM_LIBS optimized ${LIBNAME})
|
||||||
endforeach(LLVM_OPTIMIZED_LIB)
|
endforeach(LLVM_OPTIMIZED_LIB)
|
||||||
|
|
||||||
file(GLOB LLVM_LIBRARY_DEBUG ${LLVM_ROOT_DIR}/debug/lib/*.lib)
|
file(GLOB LLVM_LIBRARY_DEBUG ${LLVM_ROOT_DIR}/debug/lib/*.lib)
|
||||||
|
|
||||||
foreach(LLVM_DEBUG_LIB ${LLVM_LIBRARY_DEBUG})
|
foreach(LLVM_DEBUG_LIB ${LLVM_LIBRARY_DEBUG})
|
||||||
get_filename_component(LIBNAME ${LLVM_DEBUG_LIB} ABSOLUTE)
|
get_filename_component(LIBNAME ${LLVM_DEBUG_LIB} ABSOLUTE)
|
||||||
list(APPEND LLVM_LIBS debug ${LIBNAME})
|
list(APPEND LLVM_LIBS debug ${LIBNAME})
|
||||||
endforeach(LLVM_DEBUG_LIB)
|
endforeach(LLVM_DEBUG_LIB)
|
||||||
|
|
||||||
set(LLVM_LIBRARY ${LLVM_LIBS})
|
set(LLVM_LIBRARY ${LLVM_LIBS})
|
||||||
else()
|
else()
|
||||||
message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
|
message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
|
||||||
set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
|
set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
set(OPENCOLORIO ${LIBDIR}/opencolorio)
|
set(OPENCOLORIO ${LIBDIR}/opencolorio)
|
||||||
set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
|
set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
|
||||||
set(OPENCOLORIO_LIBPATH ${LIBDIR}/opencolorio/lib)
|
set(OPENCOLORIO_LIBPATH ${LIBDIR}/opencolorio/lib)
|
||||||
set(OPENCOLORIO_LIBRARIES
|
set(OPENCOLORIO_LIBRARIES
|
||||||
optimized ${OPENCOLORIO_LIBPATH}/OpenColorIO.lib
|
optimized ${OPENCOLORIO_LIBPATH}/OpenColorIO.lib
|
||||||
optimized ${OPENCOLORIO_LIBPATH}/tinyxml.lib
|
optimized ${OPENCOLORIO_LIBPATH}/tinyxml.lib
|
||||||
optimized ${OPENCOLORIO_LIBPATH}/libyaml-cpp.lib
|
optimized ${OPENCOLORIO_LIBPATH}/libyaml-cpp.lib
|
||||||
debug ${OPENCOLORIO_LIBPATH}/OpenColorIO_d.lib
|
debug ${OPENCOLORIO_LIBPATH}/OpenColorIO_d.lib
|
||||||
debug ${OPENCOLORIO_LIBPATH}/tinyxml_d.lib
|
debug ${OPENCOLORIO_LIBPATH}/tinyxml_d.lib
|
||||||
debug ${OPENCOLORIO_LIBPATH}/libyaml-cpp_d.lib
|
debug ${OPENCOLORIO_LIBPATH}/libyaml-cpp_d.lib
|
||||||
)
|
)
|
||||||
set(OPENCOLORIO_DEFINITIONS)
|
set(OPENCOLORIO_DEFINITIONS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
set(BLOSC_LIBRARIES optimized ${LIBDIR}/blosc/lib/libblosc.lib debug ${LIBDIR}/blosc/lib/libblosc_d.lib)
|
set(BLOSC_LIBRARIES optimized ${LIBDIR}/blosc/lib/libblosc.lib debug ${LIBDIR}/blosc/lib/libblosc_d.lib)
|
||||||
set(TBB_LIBRARIES optimized ${LIBDIR}/tbb/lib/tbb.lib debug ${LIBDIR}/tbb/lib/tbb_debug.lib)
|
set(TBB_LIBRARIES optimized ${LIBDIR}/tbb/lib/tbb.lib debug ${LIBDIR}/tbb/lib/tbb_debug.lib)
|
||||||
set(TBB_INCLUDE_DIR ${LIBDIR}/tbb/include)
|
set(TBB_INCLUDE_DIR ${LIBDIR}/tbb/include)
|
||||||
set(OPENVDB ${LIBDIR}/openvdb)
|
set(OPENVDB ${LIBDIR}/openvdb)
|
||||||
set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
|
set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
|
||||||
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include ${TBB_INCLUDE_DIR})
|
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include ${TBB_INCLUDE_DIR})
|
||||||
set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
|
set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
|
||||||
set(OPENVDB_DEFINITIONS -DNOMINMAX)
|
set(OPENVDB_DEFINITIONS -DNOMINMAX)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
set(ALEMBIC ${LIBDIR}/alembic)
|
set(ALEMBIC ${LIBDIR}/alembic)
|
||||||
set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
|
set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
|
||||||
set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
|
set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
|
||||||
set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
|
set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
|
||||||
set(ALEMBIC_LIBRARIES optimized ${ALEMBIC}/lib/alembic.lib debug ${ALEMBIC}/lib/alembic_d.lib)
|
set(ALEMBIC_LIBRARIES optimized ${ALEMBIC}/lib/alembic.lib debug ${ALEMBIC}/lib/alembic_d.lib)
|
||||||
set(ALEMBIC_FOUND 1)
|
set(ALEMBIC_FOUND 1)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_MOD_CLOTH_ELTOPO)
|
if(WITH_MOD_CLOTH_ELTOPO)
|
||||||
set(LAPACK ${LIBDIR}/lapack)
|
set(LAPACK ${LIBDIR}/lapack)
|
||||||
# set(LAPACK_INCLUDE_DIR ${LAPACK}/include)
|
# set(LAPACK_INCLUDE_DIR ${LAPACK}/include)
|
||||||
set(LAPACK_LIBPATH ${LAPACK}/lib)
|
set(LAPACK_LIBPATH ${LAPACK}/lib)
|
||||||
set(LAPACK_LIBRARIES
|
set(LAPACK_LIBRARIES
|
||||||
${LIBDIR}/lapack/lib/libf2c.lib
|
${LIBDIR}/lapack/lib/libf2c.lib
|
||||||
${LIBDIR}/lapack/lib/clapack_nowrap.lib
|
${LIBDIR}/lapack/lib/clapack_nowrap.lib
|
||||||
${LIBDIR}/lapack/lib/BLAS_nowrap.lib
|
${LIBDIR}/lapack/lib/BLAS_nowrap.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENJPEG)
|
if(WITH_IMAGE_OPENJPEG)
|
||||||
set(OPENJPEG ${LIBDIR}/openjpeg)
|
set(OPENJPEG ${LIBDIR}/openjpeg)
|
||||||
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
|
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
|
||||||
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
|
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENSUBDIV)
|
if(WITH_OPENSUBDIV)
|
||||||
set(OPENSUBDIV_INCLUDE_DIR ${LIBDIR}/opensubdiv/include)
|
set(OPENSUBDIV_INCLUDE_DIR ${LIBDIR}/opensubdiv/include)
|
||||||
set(OPENSUBDIV_LIBPATH ${LIBDIR}/opensubdiv/lib)
|
set(OPENSUBDIV_LIBPATH ${LIBDIR}/opensubdiv/lib)
|
||||||
set(OPENSUBDIV_LIBRARIES
|
set(OPENSUBDIV_LIBRARIES
|
||||||
optimized ${OPENSUBDIV_LIBPATH}/osdCPU.lib
|
optimized ${OPENSUBDIV_LIBPATH}/osdCPU.lib
|
||||||
optimized ${OPENSUBDIV_LIBPATH}/osdGPU.lib
|
optimized ${OPENSUBDIV_LIBPATH}/osdGPU.lib
|
||||||
debug ${OPENSUBDIV_LIBPATH}/osdCPU_d.lib
|
debug ${OPENSUBDIV_LIBPATH}/osdCPU_d.lib
|
||||||
debug ${OPENSUBDIV_LIBPATH}/osdGPU_d.lib
|
debug ${OPENSUBDIV_LIBPATH}/osdGPU_d.lib
|
||||||
)
|
)
|
||||||
set(OPENSUBDIV_HAS_OPENMP TRUE)
|
set(OPENSUBDIV_HAS_OPENMP TRUE)
|
||||||
set(OPENSUBDIV_HAS_TBB FALSE)
|
set(OPENSUBDIV_HAS_TBB FALSE)
|
||||||
set(OPENSUBDIV_HAS_OPENCL TRUE)
|
set(OPENSUBDIV_HAS_OPENCL TRUE)
|
||||||
set(OPENSUBDIV_HAS_CUDA FALSE)
|
set(OPENSUBDIV_HAS_CUDA FALSE)
|
||||||
set(OPENSUBDIV_HAS_GLSL_TRANSFORM_FEEDBACK TRUE)
|
set(OPENSUBDIV_HAS_GLSL_TRANSFORM_FEEDBACK TRUE)
|
||||||
set(OPENSUBDIV_HAS_GLSL_COMPUTE TRUE)
|
set(OPENSUBDIV_HAS_GLSL_COMPUTE TRUE)
|
||||||
windows_find_package(OpenSubdiv)
|
windows_find_package(OpenSubdiv)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SDL)
|
if(WITH_SDL)
|
||||||
set(SDL ${LIBDIR}/sdl)
|
set(SDL ${LIBDIR}/sdl)
|
||||||
set(SDL_INCLUDE_DIR ${SDL}/include)
|
set(SDL_INCLUDE_DIR ${SDL}/include)
|
||||||
set(SDL_LIBPATH ${SDL}/lib)
|
set(SDL_LIBPATH ${SDL}/lib)
|
||||||
set(SDL_LIBRARY ${SDL_LIBPATH}/SDL2.lib)
|
set(SDL_LIBRARY ${SDL_LIBPATH}/SDL2.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Audio IO
|
# Audio IO
|
||||||
if(WITH_SYSTEM_AUDASPACE)
|
if(WITH_SYSTEM_AUDASPACE)
|
||||||
set(AUDASPACE_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
set(AUDASPACE_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
||||||
set(AUDASPACE_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace.lib)
|
set(AUDASPACE_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace.lib)
|
||||||
set(AUDASPACE_C_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
set(AUDASPACE_C_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
||||||
set(AUDASPACE_C_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-c.lib)
|
set(AUDASPACE_C_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-c.lib)
|
||||||
set(AUDASPACE_PY_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
set(AUDASPACE_PY_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
|
||||||
set(AUDASPACE_PY_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-py.lib)
|
set(AUDASPACE_PY_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-py.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# used in many places so include globally, like OpenGL
|
# used in many places so include globally, like OpenGL
|
||||||
@@ -544,130 +544,130 @@ blender_include_dirs_sys("${PTHREADS_INCLUDE_DIRS}")
|
|||||||
#find signtool
|
#find signtool
|
||||||
set(ProgramFilesX86_NAME "ProgramFiles(x86)") #env dislikes the ( )
|
set(ProgramFilesX86_NAME "ProgramFiles(x86)") #env dislikes the ( )
|
||||||
find_program(SIGNTOOL_EXE signtool
|
find_program(SIGNTOOL_EXE signtool
|
||||||
HINTS
|
HINTS
|
||||||
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/10/bin/x86/"
|
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/10/bin/x86/"
|
||||||
"$ENV{ProgramFiles}/Windows Kits/10/bin/x86/"
|
"$ENV{ProgramFiles}/Windows Kits/10/bin/x86/"
|
||||||
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.1/bin/x86/"
|
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.1/bin/x86/"
|
||||||
"$ENV{ProgramFiles}/Windows Kits/8.1/bin/x86/"
|
"$ENV{ProgramFiles}/Windows Kits/8.1/bin/x86/"
|
||||||
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.0/bin/x86/"
|
"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.0/bin/x86/"
|
||||||
"$ENV{ProgramFiles}/Windows Kits/8.0/bin/x86/"
|
"$ENV{ProgramFiles}/Windows Kits/8.0/bin/x86/"
|
||||||
)
|
)
|
||||||
set(WINTAB_INC ${LIBDIR}/wintab/include)
|
set(WINTAB_INC ${LIBDIR}/wintab/include)
|
||||||
|
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
set(OPENAL ${LIBDIR}/openal)
|
set(OPENAL ${LIBDIR}/openal)
|
||||||
set(OPENALDIR ${LIBDIR}/openal)
|
set(OPENALDIR ${LIBDIR}/openal)
|
||||||
set(OPENAL_INCLUDE_DIR ${OPENAL}/include/AL)
|
set(OPENAL_INCLUDE_DIR ${OPENAL}/include/AL)
|
||||||
set(OPENAL_LIBPATH ${OPENAL}/lib)
|
set(OPENAL_LIBPATH ${OPENAL}/lib)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/openal32.lib)
|
set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/openal32.lib)
|
||||||
else()
|
else()
|
||||||
set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/wrap_oal.lib)
|
set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/wrap_oal.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_SNDFILE)
|
if(WITH_CODEC_SNDFILE)
|
||||||
set(LIBSNDFILE ${LIBDIR}/sndfile)
|
set(LIBSNDFILE ${LIBDIR}/sndfile)
|
||||||
set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
|
set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
|
||||||
set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib) # TODO, deprecate
|
set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib) # TODO, deprecate
|
||||||
set(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBPATH}/libsndfile-1.lib)
|
set(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBPATH}/libsndfile-1.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
if(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
add_definitions(-D__SSE__ -D__MMX__)
|
add_definitions(-D__SSE__ -D__MMX__)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_OSL)
|
if(WITH_CYCLES_OSL)
|
||||||
set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
|
set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
|
||||||
|
|
||||||
find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_EXEC_DEBUG NAMES oslexec_d PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_EXEC_DEBUG NAMES oslexec_d PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_COMP_DEBUG NAMES oslcomp_d PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_COMP_DEBUG NAMES oslcomp_d PATHS ${CYCLES_OSL}/lib)
|
||||||
find_library(OSL_LIB_QUERY_DEBUG NAMES oslquery_d PATHS ${CYCLES_OSL}/lib)
|
find_library(OSL_LIB_QUERY_DEBUG NAMES oslquery_d PATHS ${CYCLES_OSL}/lib)
|
||||||
list(APPEND OSL_LIBRARIES
|
list(APPEND OSL_LIBRARIES
|
||||||
optimized ${OSL_LIB_COMP}
|
optimized ${OSL_LIB_COMP}
|
||||||
optimized ${OSL_LIB_EXEC}
|
optimized ${OSL_LIB_EXEC}
|
||||||
optimized ${OSL_LIB_QUERY}
|
optimized ${OSL_LIB_QUERY}
|
||||||
optimized ${CYCLES_OSL}/lib/pugixml.lib
|
optimized ${CYCLES_OSL}/lib/pugixml.lib
|
||||||
debug ${OSL_LIB_EXEC_DEBUG}
|
debug ${OSL_LIB_EXEC_DEBUG}
|
||||||
debug ${OSL_LIB_COMP_DEBUG}
|
debug ${OSL_LIB_COMP_DEBUG}
|
||||||
debug ${OSL_LIB_QUERY_DEBUG}
|
debug ${OSL_LIB_QUERY_DEBUG}
|
||||||
debug ${CYCLES_OSL}/lib/pugixml_d.lib
|
debug ${CYCLES_OSL}/lib/pugixml_d.lib
|
||||||
)
|
)
|
||||||
find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
|
find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
|
||||||
find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
|
find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
|
||||||
|
|
||||||
if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
|
if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
|
||||||
set(OSL_FOUND TRUE)
|
set(OSL_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
message(STATUS "OSL not found")
|
message(STATUS "OSL not found")
|
||||||
set(WITH_CYCLES_OSL OFF)
|
set(WITH_CYCLES_OSL OFF)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES_EMBREE)
|
if(WITH_CYCLES_EMBREE)
|
||||||
windows_find_package(Embree)
|
windows_find_package(Embree)
|
||||||
if(NOT EMBREE_FOUND)
|
if(NOT EMBREE_FOUND)
|
||||||
set(EMBREE_INCLUDE_DIRS ${LIBDIR}/embree/include)
|
set(EMBREE_INCLUDE_DIRS ${LIBDIR}/embree/include)
|
||||||
set(EMBREE_LIBRARIES
|
set(EMBREE_LIBRARIES
|
||||||
optimized ${LIBDIR}/embree/lib/embree3.lib
|
optimized ${LIBDIR}/embree/lib/embree3.lib
|
||||||
optimized ${LIBDIR}/embree/lib/embree_avx2.lib
|
optimized ${LIBDIR}/embree/lib/embree_avx2.lib
|
||||||
optimized ${LIBDIR}/embree/lib/embree_avx.lib
|
optimized ${LIBDIR}/embree/lib/embree_avx.lib
|
||||||
optimized ${LIBDIR}/embree/lib/embree_sse42.lib
|
optimized ${LIBDIR}/embree/lib/embree_sse42.lib
|
||||||
optimized ${LIBDIR}/embree/lib/lexers.lib
|
optimized ${LIBDIR}/embree/lib/lexers.lib
|
||||||
optimized ${LIBDIR}/embree/lib/math.lib
|
optimized ${LIBDIR}/embree/lib/math.lib
|
||||||
optimized ${LIBDIR}/embree/lib/simd.lib
|
optimized ${LIBDIR}/embree/lib/simd.lib
|
||||||
optimized ${LIBDIR}/embree/lib/sys.lib
|
optimized ${LIBDIR}/embree/lib/sys.lib
|
||||||
optimized ${LIBDIR}/embree/lib/tasking.lib
|
optimized ${LIBDIR}/embree/lib/tasking.lib
|
||||||
|
|
||||||
debug ${LIBDIR}/embree/lib/embree3_d.lib
|
debug ${LIBDIR}/embree/lib/embree3_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/embree_avx2_d.lib
|
debug ${LIBDIR}/embree/lib/embree_avx2_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/embree_avx_d.lib
|
debug ${LIBDIR}/embree/lib/embree_avx_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/embree_sse42_d.lib
|
debug ${LIBDIR}/embree/lib/embree_sse42_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/lexers_d.lib
|
debug ${LIBDIR}/embree/lib/lexers_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/math_d.lib
|
debug ${LIBDIR}/embree/lib/math_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/simd_d.lib
|
debug ${LIBDIR}/embree/lib/simd_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/sys_d.lib
|
debug ${LIBDIR}/embree/lib/sys_d.lib
|
||||||
debug ${LIBDIR}/embree/lib/tasking_d.lib)
|
debug ${LIBDIR}/embree/lib/tasking_d.lib)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (WINDOWS_PYTHON_DEBUG)
|
if (WINDOWS_PYTHON_DEBUG)
|
||||||
# Include the system scripts in the blender_python_system_scripts project.
|
# Include the system scripts in the blender_python_system_scripts project.
|
||||||
FILE(GLOB_RECURSE inFiles "${CMAKE_SOURCE_DIR}/release/scripts/*.*" )
|
FILE(GLOB_RECURSE inFiles "${CMAKE_SOURCE_DIR}/release/scripts/*.*" )
|
||||||
ADD_CUSTOM_TARGET(blender_python_system_scripts SOURCES ${inFiles})
|
ADD_CUSTOM_TARGET(blender_python_system_scripts SOURCES ${inFiles})
|
||||||
foreach(_source IN ITEMS ${inFiles})
|
foreach(_source IN ITEMS ${inFiles})
|
||||||
get_filename_component(_source_path "${_source}" PATH)
|
get_filename_component(_source_path "${_source}" PATH)
|
||||||
string(REPLACE "${CMAKE_SOURCE_DIR}/release/scripts/" "" _source_path "${_source_path}")
|
string(REPLACE "${CMAKE_SOURCE_DIR}/release/scripts/" "" _source_path "${_source_path}")
|
||||||
string(REPLACE "/" "\\" _group_path "${_source_path}")
|
string(REPLACE "/" "\\" _group_path "${_source_path}")
|
||||||
source_group("${_group_path}" FILES "${_source}")
|
source_group("${_group_path}" FILES "${_source}")
|
||||||
endforeach()
|
endforeach()
|
||||||
# Include the user scripts from the profile folder in the blender_python_user_scripts project.
|
# Include the user scripts from the profile folder in the blender_python_user_scripts project.
|
||||||
set(USER_SCRIPTS_ROOT "$ENV{appdata}/blender foundation/blender/${BLENDER_VERSION}")
|
set(USER_SCRIPTS_ROOT "$ENV{appdata}/blender foundation/blender/${BLENDER_VERSION}")
|
||||||
file(TO_CMAKE_PATH ${USER_SCRIPTS_ROOT} USER_SCRIPTS_ROOT)
|
file(TO_CMAKE_PATH ${USER_SCRIPTS_ROOT} USER_SCRIPTS_ROOT)
|
||||||
FILE(GLOB_RECURSE inFiles "${USER_SCRIPTS_ROOT}/scripts/*.*" )
|
FILE(GLOB_RECURSE inFiles "${USER_SCRIPTS_ROOT}/scripts/*.*" )
|
||||||
ADD_CUSTOM_TARGET(blender_python_user_scripts SOURCES ${inFiles})
|
ADD_CUSTOM_TARGET(blender_python_user_scripts SOURCES ${inFiles})
|
||||||
foreach(_source IN ITEMS ${inFiles})
|
foreach(_source IN ITEMS ${inFiles})
|
||||||
get_filename_component(_source_path "${_source}" PATH)
|
get_filename_component(_source_path "${_source}" PATH)
|
||||||
string(REPLACE "${USER_SCRIPTS_ROOT}/scripts" "" _source_path "${_source_path}")
|
string(REPLACE "${USER_SCRIPTS_ROOT}/scripts" "" _source_path "${_source_path}")
|
||||||
string(REPLACE "/" "\\" _group_path "${_source_path}")
|
string(REPLACE "/" "\\" _group_path "${_source_path}")
|
||||||
source_group("${_group_path}" FILES "${_source}")
|
source_group("${_group_path}" FILES "${_source}")
|
||||||
endforeach()
|
endforeach()
|
||||||
set_target_properties(blender_python_system_scripts PROPERTIES FOLDER "scripts")
|
set_target_properties(blender_python_system_scripts PROPERTIES FOLDER "scripts")
|
||||||
set_target_properties(blender_python_user_scripts PROPERTIES FOLDER "scripts")
|
set_target_properties(blender_python_user_scripts PROPERTIES FOLDER "scripts")
|
||||||
# Set the default debugging options for the project, only write this file once so the user
|
# Set the default debugging options for the project, only write this file once so the user
|
||||||
# is free to override them at their own perril.
|
# is free to override them at their own perril.
|
||||||
set(USER_PROPS_FILE "${CMAKE_CURRENT_BINARY_DIR}/source/creator/blender.Cpp.user.props")
|
set(USER_PROPS_FILE "${CMAKE_CURRENT_BINARY_DIR}/source/creator/blender.Cpp.user.props")
|
||||||
if(NOT EXISTS ${USER_PROPS_FILE})
|
if(NOT EXISTS ${USER_PROPS_FILE})
|
||||||
# Layout below is messy, because otherwise the generated file will look messy.
|
# Layout below is messy, because otherwise the generated file will look messy.
|
||||||
file(WRITE ${USER_PROPS_FILE} "<?xml version=\"1.0\" encoding=\"utf-8\"?>
|
file(WRITE ${USER_PROPS_FILE} "<?xml version=\"1.0\" encoding=\"utf-8\"?>
|
||||||
<Project DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">
|
<Project DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<LocalDebuggerCommandArguments>-con --env-system-scripts \"${CMAKE_SOURCE_DIR}/release/scripts\" </LocalDebuggerCommandArguments>
|
<LocalDebuggerCommandArguments>-con --env-system-scripts \"${CMAKE_SOURCE_DIR}/release/scripts\" </LocalDebuggerCommandArguments>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>")
|
</Project>")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
62
extern/CMakeLists.txt
vendored
62
extern/CMakeLists.txt
vendored
@@ -26,9 +26,9 @@ remove_strict_flags()
|
|||||||
|
|
||||||
# Not a strict flag, but noisy for code we don't maintain
|
# Not a strict flag, but noisy for code we don't maintain
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wmisleading-indentation"
|
"-Wmisleading-indentation"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -36,72 +36,72 @@ add_subdirectory(rangetree)
|
|||||||
add_subdirectory(wcwidth)
|
add_subdirectory(wcwidth)
|
||||||
|
|
||||||
if(WITH_BULLET)
|
if(WITH_BULLET)
|
||||||
if(NOT WITH_SYSTEM_BULLET)
|
if(NOT WITH_SYSTEM_BULLET)
|
||||||
add_subdirectory(bullet2)
|
add_subdirectory(bullet2)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_DRACO)
|
if(WITH_DRACO)
|
||||||
add_subdirectory(draco)
|
add_subdirectory(draco)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# now only available in a branch
|
# now only available in a branch
|
||||||
#if(WITH_MOD_CLOTH_ELTOPO)
|
#if(WITH_MOD_CLOTH_ELTOPO)
|
||||||
# add_subdirectory(eltopo)
|
# add_subdirectory(eltopo)
|
||||||
#endif()
|
#endif()
|
||||||
|
|
||||||
if(WITH_BINRELOC)
|
if(WITH_BINRELOC)
|
||||||
add_subdirectory(binreloc)
|
add_subdirectory(binreloc)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WITH_SYSTEM_GLEW)
|
if(NOT WITH_SYSTEM_GLEW)
|
||||||
if(WITH_GLEW_ES)
|
if(WITH_GLEW_ES)
|
||||||
add_subdirectory(glew-es)
|
add_subdirectory(glew-es)
|
||||||
else()
|
else()
|
||||||
add_subdirectory(glew)
|
add_subdirectory(glew)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LZO AND NOT WITH_SYSTEM_LZO)
|
if(WITH_LZO AND NOT WITH_SYSTEM_LZO)
|
||||||
add_subdirectory(lzo)
|
add_subdirectory(lzo)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LZMA)
|
if(WITH_LZMA)
|
||||||
add_subdirectory(lzma)
|
add_subdirectory(lzma)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
|
if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
|
||||||
add_subdirectory(clew)
|
add_subdirectory(clew)
|
||||||
if(WITH_CUDA_DYNLOAD)
|
if(WITH_CUDA_DYNLOAD)
|
||||||
add_subdirectory(cuew)
|
add_subdirectory(cuew)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_X11 AND WITH_GHOST_XDND)
|
if(WITH_X11 AND WITH_GHOST_XDND)
|
||||||
add_subdirectory(xdnd)
|
add_subdirectory(xdnd)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LIBMV)
|
if(WITH_LIBMV)
|
||||||
add_subdirectory(ceres)
|
add_subdirectory(ceres)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
||||||
if(NOT WITH_SYSTEM_GFLAGS)
|
if(NOT WITH_SYSTEM_GFLAGS)
|
||||||
add_subdirectory(gflags)
|
add_subdirectory(gflags)
|
||||||
endif()
|
endif()
|
||||||
add_subdirectory(glog)
|
add_subdirectory(glog)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GTESTS)
|
if(WITH_GTESTS)
|
||||||
add_subdirectory(gtest)
|
add_subdirectory(gtest)
|
||||||
add_subdirectory(gmock)
|
add_subdirectory(gmock)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SDL AND WITH_SDL_DYNLOAD)
|
if(WITH_SDL AND WITH_SDL_DYNLOAD)
|
||||||
add_subdirectory(sdlew)
|
add_subdirectory(sdlew)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE)
|
if(WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE)
|
||||||
set(AUDASPACE_CMAKE_CFG ${CMAKE_CURRENT_SOURCE_DIR}/audaspace/blender_config.cmake)
|
set(AUDASPACE_CMAKE_CFG ${CMAKE_CURRENT_SOURCE_DIR}/audaspace/blender_config.cmake)
|
||||||
add_subdirectory(audaspace)
|
add_subdirectory(audaspace)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
1434
extern/audaspace/CMakeLists.txt
vendored
1434
extern/audaspace/CMakeLists.txt
vendored
@@ -18,7 +18,7 @@ cmake_minimum_required(VERSION 3.0)
|
|||||||
include(CMakeDependentOption)
|
include(CMakeDependentOption)
|
||||||
|
|
||||||
if(POLICY CMP0054)
|
if(POLICY CMP0054)
|
||||||
cmake_policy(SET CMP0054 NEW)
|
cmake_policy(SET CMP0054 NEW)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
project(audaspace)
|
project(audaspace)
|
||||||
@@ -27,223 +27,223 @@ set(AUDASPACE_VERSION 1.3)
|
|||||||
set(AUDASPACE_LONG_VERSION ${AUDASPACE_VERSION}.0)
|
set(AUDASPACE_LONG_VERSION ${AUDASPACE_VERSION}.0)
|
||||||
|
|
||||||
if(DEFINED AUDASPACE_CMAKE_CFG)
|
if(DEFINED AUDASPACE_CMAKE_CFG)
|
||||||
include(${AUDASPACE_CMAKE_CFG})
|
include(${AUDASPACE_CMAKE_CFG})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT DEFINED AUDASPACE_STANDALONE)
|
if(NOT DEFINED AUDASPACE_STANDALONE)
|
||||||
set(AUDASPACE_STANDALONE TRUE)
|
set(AUDASPACE_STANDALONE TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# sources
|
# sources
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/devices/DefaultSynchronizer.cpp
|
src/devices/DefaultSynchronizer.cpp
|
||||||
src/devices/DeviceManager.cpp
|
src/devices/DeviceManager.cpp
|
||||||
src/devices/NULLDevice.cpp
|
src/devices/NULLDevice.cpp
|
||||||
src/devices/ReadDevice.cpp
|
src/devices/ReadDevice.cpp
|
||||||
src/devices/SoftwareDevice.cpp
|
src/devices/SoftwareDevice.cpp
|
||||||
src/Exception.cpp
|
src/Exception.cpp
|
||||||
src/file/File.cpp
|
src/file/File.cpp
|
||||||
src/file/FileManager.cpp
|
src/file/FileManager.cpp
|
||||||
src/file/FileWriter.cpp
|
src/file/FileWriter.cpp
|
||||||
src/fx/Accumulator.cpp
|
src/fx/Accumulator.cpp
|
||||||
src/fx/ADSR.cpp
|
src/fx/ADSR.cpp
|
||||||
src/fx/ADSRReader.cpp
|
src/fx/ADSRReader.cpp
|
||||||
src/fx/BaseIIRFilterReader.cpp
|
src/fx/BaseIIRFilterReader.cpp
|
||||||
src/fx/ButterworthCalculator.cpp
|
src/fx/ButterworthCalculator.cpp
|
||||||
src/fx/Butterworth.cpp
|
src/fx/Butterworth.cpp
|
||||||
src/fx/CallbackIIRFilterReader.cpp
|
src/fx/CallbackIIRFilterReader.cpp
|
||||||
src/fx/Delay.cpp
|
src/fx/Delay.cpp
|
||||||
src/fx/DelayReader.cpp
|
src/fx/DelayReader.cpp
|
||||||
src/fx/DynamicIIRFilter.cpp
|
src/fx/DynamicIIRFilter.cpp
|
||||||
src/fx/DynamicIIRFilterReader.cpp
|
src/fx/DynamicIIRFilterReader.cpp
|
||||||
src/fx/DynamicMusic.cpp
|
src/fx/DynamicMusic.cpp
|
||||||
src/fx/Effect.cpp
|
src/fx/Effect.cpp
|
||||||
src/fx/EffectReader.cpp
|
src/fx/EffectReader.cpp
|
||||||
src/fx/Envelope.cpp
|
src/fx/Envelope.cpp
|
||||||
src/fx/Fader.cpp
|
src/fx/Fader.cpp
|
||||||
src/fx/FaderReader.cpp
|
src/fx/FaderReader.cpp
|
||||||
src/fx/HighpassCalculator.cpp
|
src/fx/HighpassCalculator.cpp
|
||||||
src/fx/Highpass.cpp
|
src/fx/Highpass.cpp
|
||||||
src/fx/IIRFilter.cpp
|
src/fx/IIRFilter.cpp
|
||||||
src/fx/IIRFilterReader.cpp
|
src/fx/IIRFilterReader.cpp
|
||||||
src/fx/Limiter.cpp
|
src/fx/Limiter.cpp
|
||||||
src/fx/LimiterReader.cpp
|
src/fx/LimiterReader.cpp
|
||||||
src/fx/Loop.cpp
|
src/fx/Loop.cpp
|
||||||
src/fx/LoopReader.cpp
|
src/fx/LoopReader.cpp
|
||||||
src/fx/LowpassCalculator.cpp
|
src/fx/LowpassCalculator.cpp
|
||||||
src/fx/Lowpass.cpp
|
src/fx/Lowpass.cpp
|
||||||
src/fx/Modulator.cpp
|
src/fx/Modulator.cpp
|
||||||
src/fx/ModulatorReader.cpp
|
src/fx/ModulatorReader.cpp
|
||||||
src/fx/MutableReader.cpp
|
src/fx/MutableReader.cpp
|
||||||
src/fx/MutableSound.cpp
|
src/fx/MutableSound.cpp
|
||||||
src/fx/Pitch.cpp
|
src/fx/Pitch.cpp
|
||||||
src/fx/PitchReader.cpp
|
src/fx/PitchReader.cpp
|
||||||
src/fx/PlaybackManager.cpp
|
src/fx/PlaybackManager.cpp
|
||||||
src/fx/PlaybackCategory.cpp
|
src/fx/PlaybackCategory.cpp
|
||||||
src/fx/Reverse.cpp
|
src/fx/Reverse.cpp
|
||||||
src/fx/ReverseReader.cpp
|
src/fx/ReverseReader.cpp
|
||||||
src/fx/SoundList.cpp
|
src/fx/SoundList.cpp
|
||||||
src/fx/Source.cpp
|
src/fx/Source.cpp
|
||||||
src/fx/Sum.cpp
|
src/fx/Sum.cpp
|
||||||
src/fx/Threshold.cpp
|
src/fx/Threshold.cpp
|
||||||
src/fx/Volume.cpp
|
src/fx/Volume.cpp
|
||||||
src/fx/VolumeReader.cpp
|
src/fx/VolumeReader.cpp
|
||||||
src/fx/VolumeSound.cpp
|
src/fx/VolumeSound.cpp
|
||||||
src/fx/VolumeStorage.cpp
|
src/fx/VolumeStorage.cpp
|
||||||
src/generator/Sawtooth.cpp
|
src/generator/Sawtooth.cpp
|
||||||
src/generator/SawtoothReader.cpp
|
src/generator/SawtoothReader.cpp
|
||||||
src/generator/Silence.cpp
|
src/generator/Silence.cpp
|
||||||
src/generator/SilenceReader.cpp
|
src/generator/SilenceReader.cpp
|
||||||
src/generator/Sine.cpp
|
src/generator/Sine.cpp
|
||||||
src/generator/SineReader.cpp
|
src/generator/SineReader.cpp
|
||||||
src/generator/Square.cpp
|
src/generator/Square.cpp
|
||||||
src/generator/SquareReader.cpp
|
src/generator/SquareReader.cpp
|
||||||
src/generator/Triangle.cpp
|
src/generator/Triangle.cpp
|
||||||
src/generator/TriangleReader.cpp
|
src/generator/TriangleReader.cpp
|
||||||
src/respec/ChannelMapper.cpp
|
src/respec/ChannelMapper.cpp
|
||||||
src/respec/ChannelMapperReader.cpp
|
src/respec/ChannelMapperReader.cpp
|
||||||
src/respec/Converter.cpp
|
src/respec/Converter.cpp
|
||||||
src/respec/ConverterFunctions.cpp
|
src/respec/ConverterFunctions.cpp
|
||||||
src/respec/ConverterReader.cpp
|
src/respec/ConverterReader.cpp
|
||||||
src/respec/JOSResample.cpp
|
src/respec/JOSResample.cpp
|
||||||
src/respec/JOSResampleReaderCoeff.cpp
|
src/respec/JOSResampleReaderCoeff.cpp
|
||||||
src/respec/JOSResampleReader.cpp
|
src/respec/JOSResampleReader.cpp
|
||||||
src/respec/LinearResample.cpp
|
src/respec/LinearResample.cpp
|
||||||
src/respec/LinearResampleReader.cpp
|
src/respec/LinearResampleReader.cpp
|
||||||
src/respec/Mixer.cpp
|
src/respec/Mixer.cpp
|
||||||
src/respec/ResampleReader.cpp
|
src/respec/ResampleReader.cpp
|
||||||
src/respec/SpecsChanger.cpp
|
src/respec/SpecsChanger.cpp
|
||||||
src/sequence/AnimateableProperty.cpp
|
src/sequence/AnimateableProperty.cpp
|
||||||
src/sequence/Double.cpp
|
src/sequence/Double.cpp
|
||||||
src/sequence/DoubleReader.cpp
|
src/sequence/DoubleReader.cpp
|
||||||
src/sequence/PingPong.cpp
|
src/sequence/PingPong.cpp
|
||||||
src/sequence/Sequence.cpp
|
src/sequence/Sequence.cpp
|
||||||
src/sequence/SequenceData.cpp
|
src/sequence/SequenceData.cpp
|
||||||
src/sequence/SequenceEntry.cpp
|
src/sequence/SequenceEntry.cpp
|
||||||
src/sequence/SequenceHandle.cpp
|
src/sequence/SequenceHandle.cpp
|
||||||
src/sequence/SequenceReader.cpp
|
src/sequence/SequenceReader.cpp
|
||||||
src/sequence/Superpose.cpp
|
src/sequence/Superpose.cpp
|
||||||
src/sequence/SuperposeReader.cpp
|
src/sequence/SuperposeReader.cpp
|
||||||
src/util/Barrier.cpp
|
src/util/Barrier.cpp
|
||||||
src/util/Buffer.cpp
|
src/util/Buffer.cpp
|
||||||
src/util/BufferReader.cpp
|
src/util/BufferReader.cpp
|
||||||
src/util/StreamBuffer.cpp
|
src/util/StreamBuffer.cpp
|
||||||
src/util/ThreadPool.cpp
|
src/util/ThreadPool.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
set(PRIVATE_HDR
|
set(PRIVATE_HDR
|
||||||
src/sequence/SequenceHandle.h
|
src/sequence/SequenceHandle.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(PUBLIC_HDR
|
set(PUBLIC_HDR
|
||||||
include/devices/DefaultSynchronizer.h
|
include/devices/DefaultSynchronizer.h
|
||||||
include/devices/DeviceManager.h
|
include/devices/DeviceManager.h
|
||||||
include/devices/I3DDevice.h
|
include/devices/I3DDevice.h
|
||||||
include/devices/I3DHandle.h
|
include/devices/I3DHandle.h
|
||||||
include/devices/IDeviceFactory.h
|
include/devices/IDeviceFactory.h
|
||||||
include/devices/IDevice.h
|
include/devices/IDevice.h
|
||||||
include/devices/IHandle.h
|
include/devices/IHandle.h
|
||||||
include/devices/ISynchronizer.h
|
include/devices/ISynchronizer.h
|
||||||
include/devices/NULLDevice.h
|
include/devices/NULLDevice.h
|
||||||
include/devices/ReadDevice.h
|
include/devices/ReadDevice.h
|
||||||
include/devices/SoftwareDevice.h
|
include/devices/SoftwareDevice.h
|
||||||
include/Exception.h
|
include/Exception.h
|
||||||
include/file/File.h
|
include/file/File.h
|
||||||
include/file/FileManager.h
|
include/file/FileManager.h
|
||||||
include/file/FileWriter.h
|
include/file/FileWriter.h
|
||||||
include/file/IFileInput.h
|
include/file/IFileInput.h
|
||||||
include/file/IFileOutput.h
|
include/file/IFileOutput.h
|
||||||
include/file/IWriter.h
|
include/file/IWriter.h
|
||||||
include/fx/Accumulator.h
|
include/fx/Accumulator.h
|
||||||
include/fx/ADSR.h
|
include/fx/ADSR.h
|
||||||
include/fx/ADSRReader.h
|
include/fx/ADSRReader.h
|
||||||
include/fx/BaseIIRFilterReader.h
|
include/fx/BaseIIRFilterReader.h
|
||||||
include/fx/ButterworthCalculator.h
|
include/fx/ButterworthCalculator.h
|
||||||
include/fx/Butterworth.h
|
include/fx/Butterworth.h
|
||||||
include/fx/CallbackIIRFilterReader.h
|
include/fx/CallbackIIRFilterReader.h
|
||||||
include/fx/Delay.h
|
include/fx/Delay.h
|
||||||
include/fx/DelayReader.h
|
include/fx/DelayReader.h
|
||||||
include/fx/DynamicIIRFilter.h
|
include/fx/DynamicIIRFilter.h
|
||||||
include/fx/DynamicIIRFilterReader.h
|
include/fx/DynamicIIRFilterReader.h
|
||||||
include/fx/DynamicMusic.h
|
include/fx/DynamicMusic.h
|
||||||
include/fx/Effect.h
|
include/fx/Effect.h
|
||||||
include/fx/EffectReader.h
|
include/fx/EffectReader.h
|
||||||
include/fx/Envelope.h
|
include/fx/Envelope.h
|
||||||
include/fx/Fader.h
|
include/fx/Fader.h
|
||||||
include/fx/FaderReader.h
|
include/fx/FaderReader.h
|
||||||
include/fx/HighpassCalculator.h
|
include/fx/HighpassCalculator.h
|
||||||
include/fx/Highpass.h
|
include/fx/Highpass.h
|
||||||
include/fx/IDynamicIIRFilterCalculator.h
|
include/fx/IDynamicIIRFilterCalculator.h
|
||||||
include/fx/IIRFilter.h
|
include/fx/IIRFilter.h
|
||||||
include/fx/IIRFilterReader.h
|
include/fx/IIRFilterReader.h
|
||||||
include/fx/Limiter.h
|
include/fx/Limiter.h
|
||||||
include/fx/LimiterReader.h
|
include/fx/LimiterReader.h
|
||||||
include/fx/Loop.h
|
include/fx/Loop.h
|
||||||
include/fx/LoopReader.h
|
include/fx/LoopReader.h
|
||||||
include/fx/LowpassCalculator.h
|
include/fx/LowpassCalculator.h
|
||||||
include/fx/Lowpass.h
|
include/fx/Lowpass.h
|
||||||
include/fx/Modulator.h
|
include/fx/Modulator.h
|
||||||
include/fx/ModulatorReader.h
|
include/fx/ModulatorReader.h
|
||||||
include/fx/MutableReader.h
|
include/fx/MutableReader.h
|
||||||
include/fx/MutableSound.h
|
include/fx/MutableSound.h
|
||||||
include/fx/Pitch.h
|
include/fx/Pitch.h
|
||||||
include/fx/PitchReader.h
|
include/fx/PitchReader.h
|
||||||
include/fx/PlaybackManager.h
|
include/fx/PlaybackManager.h
|
||||||
include/fx/PlaybackCategory.h
|
include/fx/PlaybackCategory.h
|
||||||
include/fx/Reverse.h
|
include/fx/Reverse.h
|
||||||
include/fx/ReverseReader.h
|
include/fx/ReverseReader.h
|
||||||
include/fx/SoundList.h
|
include/fx/SoundList.h
|
||||||
include/fx/Source.h
|
include/fx/Source.h
|
||||||
include/fx/Sum.h
|
include/fx/Sum.h
|
||||||
include/fx/Threshold.h
|
include/fx/Threshold.h
|
||||||
include/fx/Volume.h
|
include/fx/Volume.h
|
||||||
include/fx/VolumeReader.h
|
include/fx/VolumeReader.h
|
||||||
include/fx/VolumeSound.h
|
include/fx/VolumeSound.h
|
||||||
include/fx/VolumeStorage.h
|
include/fx/VolumeStorage.h
|
||||||
include/generator/Sawtooth.h
|
include/generator/Sawtooth.h
|
||||||
include/generator/SawtoothReader.h
|
include/generator/SawtoothReader.h
|
||||||
include/generator/Silence.h
|
include/generator/Silence.h
|
||||||
include/generator/SilenceReader.h
|
include/generator/SilenceReader.h
|
||||||
include/generator/Sine.h
|
include/generator/Sine.h
|
||||||
include/generator/SineReader.h
|
include/generator/SineReader.h
|
||||||
include/generator/Square.h
|
include/generator/Square.h
|
||||||
include/generator/SquareReader.h
|
include/generator/SquareReader.h
|
||||||
include/generator/Triangle.h
|
include/generator/Triangle.h
|
||||||
include/generator/TriangleReader.h
|
include/generator/TriangleReader.h
|
||||||
include/IReader.h
|
include/IReader.h
|
||||||
include/ISound.h
|
include/ISound.h
|
||||||
include/plugin/PluginManager.h
|
include/plugin/PluginManager.h
|
||||||
include/respec/ChannelMapper.h
|
include/respec/ChannelMapper.h
|
||||||
include/respec/ChannelMapperReader.h
|
include/respec/ChannelMapperReader.h
|
||||||
include/respec/ConverterFunctions.h
|
include/respec/ConverterFunctions.h
|
||||||
include/respec/Converter.h
|
include/respec/Converter.h
|
||||||
include/respec/ConverterReader.h
|
include/respec/ConverterReader.h
|
||||||
include/respec/JOSResample.h
|
include/respec/JOSResample.h
|
||||||
include/respec/JOSResampleReader.h
|
include/respec/JOSResampleReader.h
|
||||||
include/respec/LinearResample.h
|
include/respec/LinearResample.h
|
||||||
include/respec/LinearResampleReader.h
|
include/respec/LinearResampleReader.h
|
||||||
include/respec/Mixer.h
|
include/respec/Mixer.h
|
||||||
include/respec/ResampleReader.h
|
include/respec/ResampleReader.h
|
||||||
include/respec/Specification.h
|
include/respec/Specification.h
|
||||||
include/respec/SpecsChanger.h
|
include/respec/SpecsChanger.h
|
||||||
include/sequence/AnimateableProperty.h
|
include/sequence/AnimateableProperty.h
|
||||||
include/sequence/Double.h
|
include/sequence/Double.h
|
||||||
include/sequence/DoubleReader.h
|
include/sequence/DoubleReader.h
|
||||||
include/sequence/PingPong.h
|
include/sequence/PingPong.h
|
||||||
include/sequence/SequenceData.h
|
include/sequence/SequenceData.h
|
||||||
include/sequence/SequenceEntry.h
|
include/sequence/SequenceEntry.h
|
||||||
include/sequence/Sequence.h
|
include/sequence/Sequence.h
|
||||||
include/sequence/SequenceReader.h
|
include/sequence/SequenceReader.h
|
||||||
include/sequence/Superpose.h
|
include/sequence/Superpose.h
|
||||||
include/sequence/SuperposeReader.h
|
include/sequence/SuperposeReader.h
|
||||||
include/util/Barrier.h
|
include/util/Barrier.h
|
||||||
include/util/Buffer.h
|
include/util/Buffer.h
|
||||||
include/util/BufferReader.h
|
include/util/BufferReader.h
|
||||||
include/util/ILockable.h
|
include/util/ILockable.h
|
||||||
include/util/Math3D.h
|
include/util/Math3D.h
|
||||||
include/util/StreamBuffer.h
|
include/util/StreamBuffer.h
|
||||||
include/util/ThreadPool.h
|
include/util/ThreadPool.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(HDR ${PRIVATE_HDR} ${PUBLIC_HDR})
|
set(HDR ${PRIVATE_HDR} ${PUBLIC_HDR})
|
||||||
@@ -251,15 +251,15 @@ set(HDR ${PRIVATE_HDR} ${PUBLIC_HDR})
|
|||||||
set(INCLUDE ${CMAKE_CURRENT_BINARY_DIR} include)
|
set(INCLUDE ${CMAKE_CURRENT_BINARY_DIR} include)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(LIBRARIES)
|
set(LIBRARIES)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
set(DLLS)
|
set(DLLS)
|
||||||
set(LIBRARY_PATH "../lib" CACHE PATH "Path which contains the libraries.")
|
set(LIBRARY_PATH "../lib" CACHE PATH "Path which contains the libraries.")
|
||||||
file(GLOB LIBRARY_DIRS ${LIBRARY_PATH}/*)
|
file(GLOB LIBRARY_DIRS ${LIBRARY_PATH}/*)
|
||||||
list(APPEND CMAKE_PREFIX_PATH ${LIBRARY_DIRS})
|
list(APPEND CMAKE_PREFIX_PATH ${LIBRARY_DIRS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(LIBRARIES ${CMAKE_DL_LIBS} -lpthread)
|
set(LIBRARIES ${CMAKE_DL_LIBS} -lpthread)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(STATIC_PLUGINS "")
|
set(STATIC_PLUGINS "")
|
||||||
@@ -267,418 +267,418 @@ set(STATIC_PLUGINS "")
|
|||||||
# dependencies
|
# dependencies
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
set(PACKAGE_OPTION QUIET)
|
set(PACKAGE_OPTION QUIET)
|
||||||
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/")
|
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/")
|
||||||
|
|
||||||
option(BUILD_DEMOS "Build and install demos" TRUE)
|
option(BUILD_DEMOS "Build and install demos" TRUE)
|
||||||
|
|
||||||
option(SHARED_LIBRARY "Build Shared Library" TRUE)
|
option(SHARED_LIBRARY "Build Shared Library" TRUE)
|
||||||
|
|
||||||
option(WITH_C "Build C Module" TRUE)
|
option(WITH_C "Build C Module" TRUE)
|
||||||
option(WITH_DOCS "Build C++ HTML Documentation with Doxygen" TRUE)
|
option(WITH_DOCS "Build C++ HTML Documentation with Doxygen" TRUE)
|
||||||
option(WITH_FFMPEG "Build With FFMPEG" TRUE)
|
option(WITH_FFMPEG "Build With FFMPEG" TRUE)
|
||||||
option(WITH_FFTW "Build With FFTW" TRUE)
|
option(WITH_FFTW "Build With FFTW" TRUE)
|
||||||
option(WITH_JACK "Build With Plugin" TRUE)
|
option(WITH_JACK "Build With Plugin" TRUE)
|
||||||
option(WITH_LIBSNDFILE "Build With LibSndFile" TRUE)
|
option(WITH_LIBSNDFILE "Build With LibSndFile" TRUE)
|
||||||
option(WITH_OPENAL "Build With OpenAL" TRUE)
|
option(WITH_OPENAL "Build With OpenAL" TRUE)
|
||||||
option(WITH_PYTHON "Build With Python Library" TRUE)
|
option(WITH_PYTHON "Build With Python Library" TRUE)
|
||||||
option(WITH_SDL "Build With SDL" TRUE)
|
option(WITH_SDL "Build With SDL" TRUE)
|
||||||
option(WITH_STRICT_DEPENDENCIES "Error and abort instead of warning if a library is not found." FALSE)
|
option(WITH_STRICT_DEPENDENCIES "Error and abort instead of warning if a library is not found." FALSE)
|
||||||
|
|
||||||
if(WITH_STRICT_DEPENDENCIES)
|
if(WITH_STRICT_DEPENDENCIES)
|
||||||
set(PACKAGE_OPTION REQUIRED)
|
set(PACKAGE_OPTION REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(DEFAULT_PLUGIN_PATH "." CACHE STRING "Default plugin installation and loading path.")
|
set(DEFAULT_PLUGIN_PATH "." CACHE STRING "Default plugin installation and loading path.")
|
||||||
set(DOCUMENTATION_INSTALL_PATH "doc" CACHE PATH "Path where the documentation is installed.")
|
set(DOCUMENTATION_INSTALL_PATH "doc" CACHE PATH "Path where the documentation is installed.")
|
||||||
else()
|
else()
|
||||||
set(DEFAULT_PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/share/audaspace/plugins" CACHE STRING "Default plugin installation and loading path.")
|
set(DEFAULT_PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/share/audaspace/plugins" CACHE STRING "Default plugin installation and loading path.")
|
||||||
set(DOCUMENTATION_INSTALL_PATH "share/doc/audaspace" CACHE PATH "Path where the documentation is installed.")
|
set(DOCUMENTATION_INSTALL_PATH "share/doc/audaspace" CACHE PATH "Path where the documentation is installed.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
cmake_dependent_option(SEPARATE_C "Build C Binding as separate library" TRUE "WITH_C" FALSE)
|
cmake_dependent_option(SEPARATE_C "Build C Binding as separate library" TRUE "WITH_C" FALSE)
|
||||||
cmake_dependent_option(PLUGIN_FFMPEG "Build FFMPEG Plugin" TRUE "WITH_FFMPEG;SHARED_LIBRARY" FALSE)
|
cmake_dependent_option(PLUGIN_FFMPEG "Build FFMPEG Plugin" TRUE "WITH_FFMPEG;SHARED_LIBRARY" FALSE)
|
||||||
cmake_dependent_option(PLUGIN_JACK "Build JACK Plugin" TRUE "WITH_JACK;SHARED_LIBRARY" FALSE)
|
cmake_dependent_option(PLUGIN_JACK "Build JACK Plugin" TRUE "WITH_JACK;SHARED_LIBRARY" FALSE)
|
||||||
cmake_dependent_option(PLUGIN_LIBSNDFILE "Build LibSndFile Plugin" TRUE "WITH_LIBSNDFILE;SHARED_LIBRARY" FALSE)
|
cmake_dependent_option(PLUGIN_LIBSNDFILE "Build LibSndFile Plugin" TRUE "WITH_LIBSNDFILE;SHARED_LIBRARY" FALSE)
|
||||||
cmake_dependent_option(PLUGIN_OPENAL "Build OpenAL Plugin" TRUE "WITH_OPENAL;SHARED_LIBRARY" FALSE)
|
cmake_dependent_option(PLUGIN_OPENAL "Build OpenAL Plugin" TRUE "WITH_OPENAL;SHARED_LIBRARY" FALSE)
|
||||||
cmake_dependent_option(PLUGIN_SDL "Build SDL Plugin" TRUE "WITH_SDL;SHARED_LIBRARY" FALSE)
|
cmake_dependent_option(PLUGIN_SDL "Build SDL Plugin" TRUE "WITH_SDL;SHARED_LIBRARY" FALSE)
|
||||||
cmake_dependent_option(WITH_PYTHON_MODULE "Build Python Module" TRUE "WITH_PYTHON" FALSE)
|
cmake_dependent_option(WITH_PYTHON_MODULE "Build Python Module" TRUE "WITH_PYTHON" FALSE)
|
||||||
cmake_dependent_option(USE_SDL2 "Use SDL2 instead of 1 if available" TRUE "WITH_SDL" FALSE)
|
cmake_dependent_option(USE_SDL2 "Use SDL2 instead of 1 if available" TRUE "WITH_SDL" FALSE)
|
||||||
cmake_dependent_option(DYNLOAD_JACK "Dynamically load JACK" FALSE "WITH_JACK" FALSE)
|
cmake_dependent_option(DYNLOAD_JACK "Dynamically load JACK" FALSE "WITH_JACK" FALSE)
|
||||||
cmake_dependent_option(WITH_BINDING_DOCS "Build C/Python HTML Documentation with Sphinx" TRUE "WITH_PYTHON_MODULE" FALSE)
|
cmake_dependent_option(WITH_BINDING_DOCS "Build C/Python HTML Documentation with Sphinx" TRUE "WITH_PYTHON_MODULE" FALSE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# compiler options
|
# compiler options
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
||||||
add_definitions(-std=c++11)
|
add_definitions(-std=c++11)
|
||||||
list(APPEND CMAKE_C_COMPILER_FLAGS "-fvisibility=hidden")
|
list(APPEND CMAKE_C_COMPILER_FLAGS "-fvisibility=hidden")
|
||||||
list(APPEND CMAKE_CXX_COMPILER_FLAGS "-fvisibility=hidden")
|
list(APPEND CMAKE_CXX_COMPILER_FLAGS "-fvisibility=hidden")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
list(APPEND CMAKE_C_FLAGS_DEBUG "/Zi /Od")
|
list(APPEND CMAKE_C_FLAGS_DEBUG "/Zi /Od")
|
||||||
list(APPEND CMAKE_CXX_FLAGS_DEBUG "/Zi /Od")
|
list(APPEND CMAKE_CXX_FLAGS_DEBUG "/Zi /Od")
|
||||||
list(APPEND CMAKE_SHARED_LINKER_FLAGS_DEBUG "/DEBUG")
|
list(APPEND CMAKE_SHARED_LINKER_FLAGS_DEBUG "/DEBUG")
|
||||||
list(APPEND CMAKE_STATIC_LINKER_FLAGS_DEBUG "/DEBUG")
|
list(APPEND CMAKE_STATIC_LINKER_FLAGS_DEBUG "/DEBUG")
|
||||||
list(APPEND CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG")
|
list(APPEND CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG")
|
||||||
|
|
||||||
if(SHARED_LIBRARY)
|
if(SHARED_LIBRARY)
|
||||||
include(GenerateExportHeader)
|
include(GenerateExportHeader)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET)
|
if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET)
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
add_definitions(
|
add_definitions(
|
||||||
/D_USE_MATH_DEFINES
|
/D_USE_MATH_DEFINES
|
||||||
/EHsc
|
/EHsc
|
||||||
/DNOMINMAX
|
/DNOMINMAX
|
||||||
/D_STDINT_H
|
/D_STDINT_H
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# platform specific options
|
# platform specific options
|
||||||
|
|
||||||
if(MSYS OR MINGW)
|
if(MSYS OR MINGW)
|
||||||
add_definitions(-D_USE_MATH_DEFINES)
|
add_definitions(-D_USE_MATH_DEFINES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# C
|
# C
|
||||||
if(WITH_C)
|
if(WITH_C)
|
||||||
set(C_SRC
|
set(C_SRC
|
||||||
bindings/C/AUD_ThreadPool.cpp
|
bindings/C/AUD_ThreadPool.cpp
|
||||||
bindings/C/AUD_Source.cpp
|
bindings/C/AUD_Source.cpp
|
||||||
bindings/C/AUD_Device.cpp
|
bindings/C/AUD_Device.cpp
|
||||||
bindings/C/AUD_DynamicMusic.cpp
|
bindings/C/AUD_DynamicMusic.cpp
|
||||||
bindings/C/AUD_Handle.cpp
|
bindings/C/AUD_Handle.cpp
|
||||||
bindings/C/AUD_PlaybackManager.cpp
|
bindings/C/AUD_PlaybackManager.cpp
|
||||||
bindings/C/AUD_Sequence.cpp
|
bindings/C/AUD_Sequence.cpp
|
||||||
bindings/C/AUD_Sound.cpp
|
bindings/C/AUD_Sound.cpp
|
||||||
bindings/C/AUD_Special.cpp
|
bindings/C/AUD_Special.cpp
|
||||||
)
|
)
|
||||||
set(C_HDR
|
set(C_HDR
|
||||||
bindings/C/AUD_ThreadPool.h
|
bindings/C/AUD_ThreadPool.h
|
||||||
bindings/C/AUD_Source.h
|
bindings/C/AUD_Source.h
|
||||||
bindings/C/AUD_Device.h
|
bindings/C/AUD_Device.h
|
||||||
bindings/C/AUD_DynamicMusic.h
|
bindings/C/AUD_DynamicMusic.h
|
||||||
bindings/C/AUD_Handle.h
|
bindings/C/AUD_Handle.h
|
||||||
bindings/C/AUD_PlaybackManager.h
|
bindings/C/AUD_PlaybackManager.h
|
||||||
bindings/C/AUD_Sequence.h
|
bindings/C/AUD_Sequence.h
|
||||||
bindings/C/AUD_Sound.h
|
bindings/C/AUD_Sound.h
|
||||||
bindings/C/AUD_Special.h
|
bindings/C/AUD_Special.h
|
||||||
bindings/C/AUD_Types.h
|
bindings/C/AUD_Types.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
list(APPEND C_SRC
|
list(APPEND C_SRC
|
||||||
bindings/C/AUD_HRTF.cpp
|
bindings/C/AUD_HRTF.cpp
|
||||||
bindings/C/AUD_ImpulseResponse.cpp
|
bindings/C/AUD_ImpulseResponse.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND C_HDR
|
list(APPEND C_HDR
|
||||||
bindings/C/AUD_HRTF.h
|
bindings/C/AUD_HRTF.h
|
||||||
bindings/C/AUD_ImpulseResponse.h
|
bindings/C/AUD_ImpulseResponse.h
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT SEPARATE_C)
|
if(NOT SEPARATE_C)
|
||||||
list(APPEND SRC ${C_SRC})
|
list(APPEND SRC ${C_SRC})
|
||||||
list(APPEND HDR ${C_HDR})
|
list(APPEND HDR ${C_HDR})
|
||||||
else()
|
else()
|
||||||
set(AUDASPACE_C_LIBRARY -laudaspace-c)
|
set(AUDASPACE_C_LIBRARY -laudaspace-c)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# FFMPEG
|
# FFMPEG
|
||||||
if(WITH_FFMPEG)
|
if(WITH_FFMPEG)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(FFMPEG ${PACKAGE_OPTION})
|
find_package(FFMPEG ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(FFMPEG_FOUND)
|
if(FFMPEG_FOUND)
|
||||||
set(FFMPEG_SRC
|
set(FFMPEG_SRC
|
||||||
plugins/ffmpeg/FFMPEG.cpp
|
plugins/ffmpeg/FFMPEG.cpp
|
||||||
plugins/ffmpeg/FFMPEGReader.cpp
|
plugins/ffmpeg/FFMPEGReader.cpp
|
||||||
plugins/ffmpeg/FFMPEGWriter.cpp
|
plugins/ffmpeg/FFMPEGWriter.cpp
|
||||||
)
|
)
|
||||||
set(FFMPEG_HDR
|
set(FFMPEG_HDR
|
||||||
plugins/ffmpeg/FFMPEG.h
|
plugins/ffmpeg/FFMPEG.h
|
||||||
plugins/ffmpeg/FFMPEGReader.h
|
plugins/ffmpeg/FFMPEGReader.h
|
||||||
plugins/ffmpeg/FFMPEGWriter.h
|
plugins/ffmpeg/FFMPEGWriter.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT PLUGIN_FFMPEG)
|
if(NOT PLUGIN_FFMPEG)
|
||||||
list(APPEND INCLUDE ${FFMPEG_INCLUDE_DIRS})
|
list(APPEND INCLUDE ${FFMPEG_INCLUDE_DIRS})
|
||||||
list(APPEND LIBRARIES ${FFMPEG_LIBRARIES})
|
list(APPEND LIBRARIES ${FFMPEG_LIBRARIES})
|
||||||
list(APPEND SRC ${FFMPEG_SRC})
|
list(APPEND SRC ${FFMPEG_SRC})
|
||||||
list(APPEND HDR ${FFMPEG_HDR})
|
list(APPEND HDR ${FFMPEG_HDR})
|
||||||
list(APPEND STATIC_PLUGINS FFMPEG)
|
list(APPEND STATIC_PLUGINS FFMPEG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB FFMPEG_DLLS ${LIBRARY_PATH}/ffmpeg/bin/*.dll)
|
file(GLOB FFMPEG_DLLS ${LIBRARY_PATH}/ffmpeg/bin/*.dll)
|
||||||
list(APPEND DLLS ${FFMPEG_DLLS})
|
list(APPEND DLLS ${FFMPEG_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_FFMPEG FALSE CACHE BOOL "Build With FFMPEG" FORCE)
|
set(WITH_FFMPEG FALSE CACHE BOOL "Build With FFMPEG" FORCE)
|
||||||
message(WARNING "FFMPEG not found, plugin will not be built.")
|
message(WARNING "FFMPEG not found, plugin will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# FFTW
|
# FFTW
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(FFTW ${PACKAGE_OPTION})
|
find_package(FFTW ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(FFTW_FOUND)
|
if(FFTW_FOUND)
|
||||||
set(FFTW_SRC
|
set(FFTW_SRC
|
||||||
src/fx/BinauralSound.cpp
|
src/fx/BinauralSound.cpp
|
||||||
src/fx/BinauralReader.cpp
|
src/fx/BinauralReader.cpp
|
||||||
src/fx/Convolver.cpp
|
src/fx/Convolver.cpp
|
||||||
src/fx/ConvolverReader.cpp
|
src/fx/ConvolverReader.cpp
|
||||||
src/fx/ConvolverSound.cpp
|
src/fx/ConvolverSound.cpp
|
||||||
src/fx/FFTConvolver.cpp
|
src/fx/FFTConvolver.cpp
|
||||||
src/fx/HRTF.cpp
|
src/fx/HRTF.cpp
|
||||||
src/fx/ImpulseResponse.cpp
|
src/fx/ImpulseResponse.cpp
|
||||||
src/util/FFTPlan.cpp
|
src/util/FFTPlan.cpp
|
||||||
)
|
)
|
||||||
set(FFTW_HDR
|
set(FFTW_HDR
|
||||||
include/fx/BinauralSound.h
|
include/fx/BinauralSound.h
|
||||||
include/fx/BinauralReader.h
|
include/fx/BinauralReader.h
|
||||||
include/fx/Convolver.h
|
include/fx/Convolver.h
|
||||||
include/fx/ConvolverReader.h
|
include/fx/ConvolverReader.h
|
||||||
include/fx/ConvolverSound.h
|
include/fx/ConvolverSound.h
|
||||||
include/fx/FFTConvolver.h
|
include/fx/FFTConvolver.h
|
||||||
include/fx/HRTF.h
|
include/fx/HRTF.h
|
||||||
include/fx/HRTFLoader.h
|
include/fx/HRTFLoader.h
|
||||||
include/fx/ImpulseResponse.h
|
include/fx/ImpulseResponse.h
|
||||||
include/util/FFTPlan.h
|
include/util/FFTPlan.h
|
||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(-DWITH_CONVOLUTION)
|
add_definitions(-DWITH_CONVOLUTION)
|
||||||
|
|
||||||
list(APPEND INCLUDE ${FFTW_INCLUDE_DIR})
|
list(APPEND INCLUDE ${FFTW_INCLUDE_DIR})
|
||||||
list(APPEND LIBRARIES ${FFTW_LIBRARY})
|
list(APPEND LIBRARIES ${FFTW_LIBRARY})
|
||||||
|
|
||||||
list(APPEND SRC ${FFTW_SRC})
|
list(APPEND SRC ${FFTW_SRC})
|
||||||
list(APPEND HDR ${FFTW_HDR})
|
list(APPEND HDR ${FFTW_HDR})
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB FFTW_DLLS ${LIBRARY_PATH}/fftw/bin/*.dll)
|
file(GLOB FFTW_DLLS ${LIBRARY_PATH}/fftw/bin/*.dll)
|
||||||
list(APPEND DLLS ${FFTW_DLLS})
|
list(APPEND DLLS ${FFTW_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_FFTW FALSE CACHE BOOL "Build With FFTW" FORCE)
|
set(WITH_FFTW FALSE CACHE BOOL "Build With FFTW" FORCE)
|
||||||
message(WARNING "FFTW not found, convolution functionality will not be built.")
|
message(WARNING "FFTW not found, convolution functionality will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# JACK
|
# JACK
|
||||||
if(WITH_JACK)
|
if(WITH_JACK)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(Jack ${PACKAGE_OPTION})
|
find_package(Jack ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(JACK_FOUND)
|
if(JACK_FOUND)
|
||||||
set(JACK_SRC
|
set(JACK_SRC
|
||||||
plugins/jack/JackDevice.cpp
|
plugins/jack/JackDevice.cpp
|
||||||
plugins/jack/JackSynchronizer.cpp
|
plugins/jack/JackSynchronizer.cpp
|
||||||
plugins/jack/JackLibrary.cpp
|
plugins/jack/JackLibrary.cpp
|
||||||
)
|
)
|
||||||
set(JACK_HDR
|
set(JACK_HDR
|
||||||
plugins/jack/JackDevice.h
|
plugins/jack/JackDevice.h
|
||||||
plugins/jack/JackSynchronizer.h
|
plugins/jack/JackSynchronizer.h
|
||||||
plugins/jack/JackLibrary.h
|
plugins/jack/JackLibrary.h
|
||||||
plugins/jack/JackSymbols.h
|
plugins/jack/JackSymbols.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(DYNLOAD_JACK)
|
if(DYNLOAD_JACK)
|
||||||
add_definitions(-DDYNLOAD_JACK)
|
add_definitions(-DDYNLOAD_JACK)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT PLUGIN_JACK)
|
if(NOT PLUGIN_JACK)
|
||||||
list(APPEND INCLUDE ${JACK_INCLUDE_DIRS})
|
list(APPEND INCLUDE ${JACK_INCLUDE_DIRS})
|
||||||
if(NOT DYNLOAD_JACK)
|
if(NOT DYNLOAD_JACK)
|
||||||
list(APPEND LIBRARIES ${JACK_LIBRARIES})
|
list(APPEND LIBRARIES ${JACK_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
list(APPEND SRC ${JACK_SRC})
|
list(APPEND SRC ${JACK_SRC})
|
||||||
list(APPEND HDR ${JACK_HDR})
|
list(APPEND HDR ${JACK_HDR})
|
||||||
list(APPEND STATIC_PLUGINS JackDevice)
|
list(APPEND STATIC_PLUGINS JackDevice)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB JACK_DLLS ${LIBRARY_PATH}/jack/bin/*.dll)
|
file(GLOB JACK_DLLS ${LIBRARY_PATH}/jack/bin/*.dll)
|
||||||
list(APPEND DLLS ${JACK_DLLS})
|
list(APPEND DLLS ${JACK_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_JACK FALSE CACHE BOOL "Build With JACK" FORCE)
|
set(WITH_JACK FALSE CACHE BOOL "Build With JACK" FORCE)
|
||||||
message(WARNING "JACK not found, plugin will not be built.")
|
message(WARNING "JACK not found, plugin will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# LibSndFile
|
# LibSndFile
|
||||||
if(WITH_LIBSNDFILE)
|
if(WITH_LIBSNDFILE)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(LibSndFile ${PACKAGE_OPTION})
|
find_package(LibSndFile ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(LIBSNDFILE_FOUND)
|
if(LIBSNDFILE_FOUND)
|
||||||
set(LIBSNDFILE_SRC
|
set(LIBSNDFILE_SRC
|
||||||
plugins/libsndfile/SndFile.cpp
|
plugins/libsndfile/SndFile.cpp
|
||||||
plugins/libsndfile/SndFileReader.cpp
|
plugins/libsndfile/SndFileReader.cpp
|
||||||
plugins/libsndfile/SndFileWriter.cpp
|
plugins/libsndfile/SndFileWriter.cpp
|
||||||
)
|
)
|
||||||
set(LIBSNDFILE_HDR
|
set(LIBSNDFILE_HDR
|
||||||
plugins/libsndfile/SndFile.h
|
plugins/libsndfile/SndFile.h
|
||||||
plugins/libsndfile/SndFileReader.h
|
plugins/libsndfile/SndFileReader.h
|
||||||
plugins/libsndfile/SndFileWriter.h
|
plugins/libsndfile/SndFileWriter.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT PLUGIN_LIBSNDFILE)
|
if(NOT PLUGIN_LIBSNDFILE)
|
||||||
list(APPEND INCLUDE ${LIBSNDFILE_INCLUDE_DIRS})
|
list(APPEND INCLUDE ${LIBSNDFILE_INCLUDE_DIRS})
|
||||||
list(APPEND LIBRARIES ${LIBSNDFILE_LIBRARIES})
|
list(APPEND LIBRARIES ${LIBSNDFILE_LIBRARIES})
|
||||||
list(APPEND SRC ${LIBSNDFILE_SRC})
|
list(APPEND SRC ${LIBSNDFILE_SRC})
|
||||||
list(APPEND HDR ${LIBSNDFILE_HDR})
|
list(APPEND HDR ${LIBSNDFILE_HDR})
|
||||||
list(APPEND STATIC_PLUGINS SndFile)
|
list(APPEND STATIC_PLUGINS SndFile)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB LIBSNDFILE_DLLS ${LIBRARY_PATH}/libsndfile/bin/*.dll)
|
file(GLOB LIBSNDFILE_DLLS ${LIBRARY_PATH}/libsndfile/bin/*.dll)
|
||||||
list(APPEND DLLS ${LIBSNDFILE_DLLS})
|
list(APPEND DLLS ${LIBSNDFILE_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_LIBSNDFILE FALSE CACHE BOOL "Build With LibSndFile" FORCE)
|
set(WITH_LIBSNDFILE FALSE CACHE BOOL "Build With LibSndFile" FORCE)
|
||||||
message(WARNING "LibSndFile not found, plugin will not be built.")
|
message(WARNING "LibSndFile not found, plugin will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OpenAL
|
# OpenAL
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(OpenAL ${PACKAGE_OPTION})
|
find_package(OpenAL ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(OPENAL_FOUND)
|
if(OPENAL_FOUND)
|
||||||
set(OPENAL_SRC
|
set(OPENAL_SRC
|
||||||
plugins/openal/OpenALDevice.cpp
|
plugins/openal/OpenALDevice.cpp
|
||||||
plugins/openal/OpenALReader.cpp
|
plugins/openal/OpenALReader.cpp
|
||||||
)
|
)
|
||||||
set(OPENAL_HDR
|
set(OPENAL_HDR
|
||||||
plugins/openal/OpenALDevice.h
|
plugins/openal/OpenALDevice.h
|
||||||
plugins/openal/OpenALReader.h
|
plugins/openal/OpenALReader.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT PLUGIN_OPENAL)
|
if(NOT PLUGIN_OPENAL)
|
||||||
list(APPEND INCLUDE ${OPENAL_INCLUDE_DIR})
|
list(APPEND INCLUDE ${OPENAL_INCLUDE_DIR})
|
||||||
list(APPEND LIBRARIES ${OPENAL_LIBRARY})
|
list(APPEND LIBRARIES ${OPENAL_LIBRARY})
|
||||||
list(APPEND SRC ${OPENAL_SRC})
|
list(APPEND SRC ${OPENAL_SRC})
|
||||||
list(APPEND HDR ${OPENAL_HDR})
|
list(APPEND HDR ${OPENAL_HDR})
|
||||||
list(APPEND STATIC_PLUGINS OpenALDevice)
|
list(APPEND STATIC_PLUGINS OpenALDevice)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB OPENAL_DLLS ${LIBRARY_PATH}/OpenAL/bin/*.dll)
|
file(GLOB OPENAL_DLLS ${LIBRARY_PATH}/OpenAL/bin/*.dll)
|
||||||
list(APPEND DLLS ${OPENAL_DLLS})
|
list(APPEND DLLS ${OPENAL_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_OPENAL FALSE CACHE BOOL "Build With OpenAL" FORCE)
|
set(WITH_OPENAL FALSE CACHE BOOL "Build With OpenAL" FORCE)
|
||||||
message(WARNING "OpenAL not found, plugin will not be built.")
|
message(WARNING "OpenAL not found, plugin will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Python
|
# Python
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
find_package(PythonLibs 3.2 ${PACKAGE_OPTION})
|
find_package(PythonLibs 3.2 ${PACKAGE_OPTION})
|
||||||
find_package(NumPy ${PACKAGE_OPTION})
|
find_package(NumPy ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(PYTHONLIBS_FOUND AND NUMPY_FOUND)
|
if(PYTHONLIBS_FOUND AND NUMPY_FOUND)
|
||||||
list(APPEND INCLUDE ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS})
|
list(APPEND INCLUDE ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS})
|
||||||
|
|
||||||
if(WITH_PYTHON_MODULE)
|
if(WITH_PYTHON_MODULE)
|
||||||
find_package(PythonInterp 3.2 ${PACKAGE_OPTION})
|
find_package(PythonInterp 3.2 ${PACKAGE_OPTION})
|
||||||
|
|
||||||
if(NOT PYTHONINTERP_FOUND)
|
if(NOT PYTHONINTERP_FOUND)
|
||||||
set(WITH_PYTHON_MODULE FALSE)
|
set(WITH_PYTHON_MODULE FALSE)
|
||||||
message(WARNING "Python interpreter not found, module will not be built.")
|
message(WARNING "Python interpreter not found, module will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(AUDASPACE_PY_LIBRARY -laudaspace-py)
|
set(AUDASPACE_PY_LIBRARY -laudaspace-py)
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB PYTHON_DLLS ${LIBRARY_PATH}/Python/bin/*.dll)
|
file(GLOB PYTHON_DLLS ${LIBRARY_PATH}/Python/bin/*.dll)
|
||||||
list(APPEND DLLS ${PYTHON_DLLS})
|
list(APPEND DLLS ${PYTHON_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_PYTHON FALSE CACHE BOOL "Build With Python Library" FORCE)
|
set(WITH_PYTHON FALSE CACHE BOOL "Build With Python Library" FORCE)
|
||||||
message(WARNING "Python libraries not found, language binding will not be built.")
|
message(WARNING "Python libraries not found, language binding will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# SDL
|
# SDL
|
||||||
if(WITH_SDL)
|
if(WITH_SDL)
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
if(USE_SDL2)
|
if(USE_SDL2)
|
||||||
find_package(SDL2)
|
find_package(SDL2)
|
||||||
if(SDL2_FOUND)
|
if(SDL2_FOUND)
|
||||||
set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIR})
|
set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIR})
|
||||||
set(SDL_LIBRARY ${SDL2_LIBRARY})
|
set(SDL_LIBRARY ${SDL2_LIBRARY})
|
||||||
set(SDL_FOUND TRUE)
|
set(SDL_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
find_package(SDL ${PACKAGE_OPTION})
|
find_package(SDL ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
find_package(SDL ${PACKAGE_OPTION})
|
find_package(SDL ${PACKAGE_OPTION})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(SDL_FOUND)
|
if(SDL_FOUND)
|
||||||
set(SDL_SRC
|
set(SDL_SRC
|
||||||
plugins/sdl/SDLDevice.cpp
|
plugins/sdl/SDLDevice.cpp
|
||||||
)
|
)
|
||||||
set(SDL_HDR
|
set(SDL_HDR
|
||||||
plugins/sdl/SDLDevice.h
|
plugins/sdl/SDLDevice.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT PLUGIN_SDL)
|
if(NOT PLUGIN_SDL)
|
||||||
list(APPEND INCLUDE ${SDL_INCLUDE_DIR})
|
list(APPEND INCLUDE ${SDL_INCLUDE_DIR})
|
||||||
list(APPEND LIBRARIES ${SDL_LIBRARY})
|
list(APPEND LIBRARIES ${SDL_LIBRARY})
|
||||||
list(APPEND SRC ${SDL_SRC})
|
list(APPEND SRC ${SDL_SRC})
|
||||||
list(APPEND HDR ${SDL_HDR})
|
list(APPEND HDR ${SDL_HDR})
|
||||||
list(APPEND STATIC_PLUGINS SDLDevice)
|
list(APPEND STATIC_PLUGINS SDLDevice)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32 AND AUDASPACE_STANDALONE)
|
if(WIN32 AND AUDASPACE_STANDALONE)
|
||||||
file(GLOB SDL_DLLS ${LIBRARY_PATH}/sdl/bin/*.dll)
|
file(GLOB SDL_DLLS ${LIBRARY_PATH}/sdl/bin/*.dll)
|
||||||
list(APPEND DLLS ${SDL_DLLS})
|
list(APPEND DLLS ${SDL_DLLS})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(WITH_SDL FALSE CACHE BOOL "Build With SDL" FORCE)
|
set(WITH_SDL FALSE CACHE BOOL "Build With SDL" FORCE)
|
||||||
message(WARNING "SDL not found, plugin will not be built.")
|
message(WARNING "SDL not found, plugin will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# library configuration
|
# library configuration
|
||||||
|
|
||||||
if(SHARED_LIBRARY)
|
if(SHARED_LIBRARY)
|
||||||
set(AUD_LIBRARY_TYPE AUD_SHARED_LIBRARY)
|
set(AUD_LIBRARY_TYPE AUD_SHARED_LIBRARY)
|
||||||
set(LIBRARY_TYPE SHARED)
|
set(LIBRARY_TYPE SHARED)
|
||||||
add_definitions(-DAUD_BUILD_SHARED_LIBRARY)
|
add_definitions(-DAUD_BUILD_SHARED_LIBRARY)
|
||||||
else()
|
else()
|
||||||
set(AUD_LIBRARY_TYPE AUD_STATIC_LIBRARY)
|
set(AUD_LIBRARY_TYPE AUD_STATIC_LIBRARY)
|
||||||
set(LIBRARY_TYPE STATIC)
|
set(LIBRARY_TYPE STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# file configuration
|
# file configuration
|
||||||
@@ -691,28 +691,28 @@ set(STATIC_PLUGIN_CLASSES "")
|
|||||||
set(STATIC_PLUGIN_REGISTERS "")
|
set(STATIC_PLUGIN_REGISTERS "")
|
||||||
|
|
||||||
foreach(PLUGIN ${STATIC_PLUGINS})
|
foreach(PLUGIN ${STATIC_PLUGINS})
|
||||||
list(APPEND STATIC_PLUGIN_CLASSES "STATIC_PLUGIN_CLASS(" ${PLUGIN} ")\n")
|
list(APPEND STATIC_PLUGIN_CLASSES "STATIC_PLUGIN_CLASS(" ${PLUGIN} ")\n")
|
||||||
list(APPEND STATIC_PLUGIN_REGISTERS "\tSTATIC_PLUGIN_REGISTER(" ${PLUGIN} ")\n")
|
list(APPEND STATIC_PLUGIN_REGISTERS "\tSTATIC_PLUGIN_REGISTER(" ${PLUGIN} ")\n")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
string(CONCAT STATIC_PLUGIN_CLASSES ${STATIC_PLUGIN_CLASSES})
|
string(CONCAT STATIC_PLUGIN_CLASSES ${STATIC_PLUGIN_CLASSES})
|
||||||
string(CONCAT STATIC_PLUGIN_REGISTERS ${STATIC_PLUGIN_REGISTERS})
|
string(CONCAT STATIC_PLUGIN_REGISTERS ${STATIC_PLUGIN_REGISTERS})
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerWindows.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerWindows.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderWindows.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderWindows.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerUnix.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerUnix.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderUnix.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderUnix.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp)
|
list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp)
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp)
|
list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# directories
|
# directories
|
||||||
@@ -723,9 +723,9 @@ link_directories()
|
|||||||
# install configuration
|
# install configuration
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(BIN_DESTINATION ".")
|
set(BIN_DESTINATION ".")
|
||||||
else()
|
else()
|
||||||
set(BIN_DESTINATION "bin")
|
set(BIN_DESTINATION "bin")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(LIB_DESTINATION "lib${LIB_SUFFIX}")
|
set(LIB_DESTINATION "lib${LIB_SUFFIX}")
|
||||||
@@ -737,254 +737,254 @@ target_link_libraries(audaspace ${LIBRARIES})
|
|||||||
set_target_properties(audaspace PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audaspace PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
install(TARGETS audaspace
|
install(TARGETS audaspace
|
||||||
RUNTIME DESTINATION ${BIN_DESTINATION}
|
RUNTIME DESTINATION ${BIN_DESTINATION}
|
||||||
LIBRARY DESTINATION ${LIB_DESTINATION}
|
LIBRARY DESTINATION ${LIB_DESTINATION}
|
||||||
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
||||||
)
|
)
|
||||||
|
|
||||||
install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/audaspace)
|
install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/audaspace)
|
||||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Audaspace.h DESTINATION include/audaspace)
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Audaspace.h DESTINATION include/audaspace)
|
||||||
|
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/packages/pkgconfig/audaspace.pc.in ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/packages/pkgconfig/audaspace.pc.in ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc @ONLY)
|
||||||
|
|
||||||
if(NOT WIN32 AND NOT APPLE)
|
if(NOT WIN32 AND NOT APPLE)
|
||||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig")
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# plugins
|
# plugins
|
||||||
|
|
||||||
if(WITH_FFMPEG AND PLUGIN_FFMPEG)
|
if(WITH_FFMPEG AND PLUGIN_FFMPEG)
|
||||||
add_definitions(-DFFMPEG_PLUGIN)
|
add_definitions(-DFFMPEG_PLUGIN)
|
||||||
include_directories(${INCLUDE} ${FFMPEG_INCLUDE_DIRS})
|
include_directories(${INCLUDE} ${FFMPEG_INCLUDE_DIRS})
|
||||||
add_library(audffmpeg SHARED ${FFMPEG_SRC} ${FFMPEG_HDR} ${HDR})
|
add_library(audffmpeg SHARED ${FFMPEG_SRC} ${FFMPEG_HDR} ${HDR})
|
||||||
target_link_libraries(audffmpeg audaspace ${FFMPEG_LIBRARIES})
|
target_link_libraries(audffmpeg audaspace ${FFMPEG_LIBRARIES})
|
||||||
set_target_properties(audffmpeg PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audffmpeg PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
install(TARGETS audffmpeg DESTINATION ${DEFAULT_PLUGIN_PATH})
|
install(TARGETS audffmpeg DESTINATION ${DEFAULT_PLUGIN_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_JACK AND PLUGIN_JACK)
|
if(WITH_JACK AND PLUGIN_JACK)
|
||||||
add_definitions(-DJACK_PLUGIN)
|
add_definitions(-DJACK_PLUGIN)
|
||||||
include_directories(${INCLUDE} ${JACK_INCLUDE_DIRS})
|
include_directories(${INCLUDE} ${JACK_INCLUDE_DIRS})
|
||||||
add_library(audjack SHARED ${JACK_SRC} ${JACK_HDR} ${HDR})
|
add_library(audjack SHARED ${JACK_SRC} ${JACK_HDR} ${HDR})
|
||||||
if(DYNLOAD_JACK)
|
if(DYNLOAD_JACK)
|
||||||
target_link_libraries(audjack audaspace)
|
target_link_libraries(audjack audaspace)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(audjack audaspace ${JACK_LIBRARIES})
|
target_link_libraries(audjack audaspace ${JACK_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
set_target_properties(audjack PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audjack PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
install(TARGETS audjack DESTINATION ${DEFAULT_PLUGIN_PATH})
|
install(TARGETS audjack DESTINATION ${DEFAULT_PLUGIN_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LIBSNDFILE AND PLUGIN_LIBSNDFILE)
|
if(WITH_LIBSNDFILE AND PLUGIN_LIBSNDFILE)
|
||||||
add_definitions(-DLIBSNDFILE_PLUGIN)
|
add_definitions(-DLIBSNDFILE_PLUGIN)
|
||||||
include_directories(${INCLUDE} ${LIBSNDFILE_INCLUDE_DIRS})
|
include_directories(${INCLUDE} ${LIBSNDFILE_INCLUDE_DIRS})
|
||||||
add_library(audlibsndfile SHARED ${LIBSNDFILE_SRC} ${LIBSNDFILE_HDR} ${HDR})
|
add_library(audlibsndfile SHARED ${LIBSNDFILE_SRC} ${LIBSNDFILE_HDR} ${HDR})
|
||||||
set_target_properties(audlibsndfile PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audlibsndfile PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
target_link_libraries(audlibsndfile audaspace ${LIBSNDFILE_LIBRARIES})
|
target_link_libraries(audlibsndfile audaspace ${LIBSNDFILE_LIBRARIES})
|
||||||
install(TARGETS audlibsndfile DESTINATION ${DEFAULT_PLUGIN_PATH})
|
install(TARGETS audlibsndfile DESTINATION ${DEFAULT_PLUGIN_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENAL AND PLUGIN_OPENAL)
|
if(WITH_OPENAL AND PLUGIN_OPENAL)
|
||||||
add_definitions(-DOPENAL_PLUGIN)
|
add_definitions(-DOPENAL_PLUGIN)
|
||||||
include_directories(${INCLUDE} ${OPENAL_INCLUDE_DIR})
|
include_directories(${INCLUDE} ${OPENAL_INCLUDE_DIR})
|
||||||
add_library(audopenal SHARED ${OPENAL_SRC} ${OPENAL_HDR} ${HDR})
|
add_library(audopenal SHARED ${OPENAL_SRC} ${OPENAL_HDR} ${HDR})
|
||||||
set_target_properties(audopenal PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audopenal PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
target_link_libraries(audopenal audaspace ${OPENAL_LIBRARY})
|
target_link_libraries(audopenal audaspace ${OPENAL_LIBRARY})
|
||||||
install(TARGETS audopenal DESTINATION ${DEFAULT_PLUGIN_PATH})
|
install(TARGETS audopenal DESTINATION ${DEFAULT_PLUGIN_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_SDL AND PLUGIN_SDL)
|
if(WITH_SDL AND PLUGIN_SDL)
|
||||||
add_definitions(-DSDL_PLUGIN)
|
add_definitions(-DSDL_PLUGIN)
|
||||||
include_directories(${INCLUDE} ${SDL_INCLUDE_DIR})
|
include_directories(${INCLUDE} ${SDL_INCLUDE_DIR})
|
||||||
add_library(audsdl SHARED ${SDL_SRC} ${SDL_HDR} ${HDR})
|
add_library(audsdl SHARED ${SDL_SRC} ${SDL_HDR} ${HDR})
|
||||||
set_target_properties(audsdl PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audsdl PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
target_link_libraries(audsdl audaspace ${SDL_LIBRARY})
|
target_link_libraries(audsdl audaspace ${SDL_LIBRARY})
|
||||||
install(TARGETS audsdl DESTINATION ${DEFAULT_PLUGIN_PATH})
|
install(TARGETS audsdl DESTINATION ${DEFAULT_PLUGIN_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# dlls
|
# dlls
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(DLLS)
|
if(DLLS)
|
||||||
install(FILES ${DLLS} DESTINATION ${BIN_DESTINATION})
|
install(FILES ${DLLS} DESTINATION ${BIN_DESTINATION})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# demos
|
# demos
|
||||||
|
|
||||||
if(BUILD_DEMOS)
|
if(BUILD_DEMOS)
|
||||||
include_directories(${INCLUDE})
|
include_directories(${INCLUDE})
|
||||||
|
|
||||||
set(DEMOS audaplay audaconvert audaremap signalgen randsounds dynamicmusic playbackmanager)
|
set(DEMOS audaplay audaconvert audaremap signalgen randsounds dynamicmusic playbackmanager)
|
||||||
|
|
||||||
add_executable(audaplay demos/audaplay.cpp)
|
add_executable(audaplay demos/audaplay.cpp)
|
||||||
target_link_libraries(audaplay audaspace)
|
target_link_libraries(audaplay audaspace)
|
||||||
|
|
||||||
add_executable(audaconvert demos/audaconvert.cpp)
|
add_executable(audaconvert demos/audaconvert.cpp)
|
||||||
target_link_libraries(audaconvert audaspace)
|
target_link_libraries(audaconvert audaspace)
|
||||||
|
|
||||||
add_executable(audaremap demos/audaremap.cpp)
|
add_executable(audaremap demos/audaremap.cpp)
|
||||||
target_link_libraries(audaremap audaspace)
|
target_link_libraries(audaremap audaspace)
|
||||||
|
|
||||||
add_executable(signalgen demos/signalgen.cpp)
|
add_executable(signalgen demos/signalgen.cpp)
|
||||||
target_link_libraries(signalgen audaspace)
|
target_link_libraries(signalgen audaspace)
|
||||||
|
|
||||||
add_executable(randsounds demos/randsounds.cpp)
|
add_executable(randsounds demos/randsounds.cpp)
|
||||||
target_link_libraries(randsounds audaspace)
|
target_link_libraries(randsounds audaspace)
|
||||||
|
|
||||||
add_executable(dynamicmusic demos/dynamicmusic.cpp)
|
add_executable(dynamicmusic demos/dynamicmusic.cpp)
|
||||||
target_link_libraries(dynamicmusic audaspace)
|
target_link_libraries(dynamicmusic audaspace)
|
||||||
|
|
||||||
add_executable(playbackmanager demos/playbackmanager.cpp)
|
add_executable(playbackmanager demos/playbackmanager.cpp)
|
||||||
target_link_libraries(playbackmanager audaspace)
|
target_link_libraries(playbackmanager audaspace)
|
||||||
|
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
list(APPEND DEMOS convolution binaural)
|
list(APPEND DEMOS convolution binaural)
|
||||||
|
|
||||||
add_executable(convolution demos/convolution.cpp)
|
add_executable(convolution demos/convolution.cpp)
|
||||||
target_link_libraries(convolution audaspace)
|
target_link_libraries(convolution audaspace)
|
||||||
|
|
||||||
add_executable(binaural demos/binaural.cpp)
|
add_executable(binaural demos/binaural.cpp)
|
||||||
target_link_libraries(binaural audaspace)
|
target_link_libraries(binaural audaspace)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENAL)
|
if(WITH_OPENAL)
|
||||||
list(APPEND DEMOS openaldevices)
|
list(APPEND DEMOS openaldevices)
|
||||||
|
|
||||||
add_executable(openaldevices demos/openaldevices.cpp)
|
add_executable(openaldevices demos/openaldevices.cpp)
|
||||||
if(PLUGIN_OPENAL)
|
if(PLUGIN_OPENAL)
|
||||||
target_link_libraries(openaldevices audaspace audopenal)
|
target_link_libraries(openaldevices audaspace audopenal)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(openaldevices audaspace)
|
target_link_libraries(openaldevices audaspace)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install(TARGETS ${DEMOS}
|
install(TARGETS ${DEMOS}
|
||||||
RUNTIME DESTINATION ${BIN_DESTINATION}
|
RUNTIME DESTINATION ${BIN_DESTINATION}
|
||||||
LIBRARY DESTINATION ${LIB_DESTINATION}
|
LIBRARY DESTINATION ${LIB_DESTINATION}
|
||||||
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# bindings
|
# bindings
|
||||||
|
|
||||||
if(WITH_C)
|
if(WITH_C)
|
||||||
if(SEPARATE_C)
|
if(SEPARATE_C)
|
||||||
add_library(audaspace-c ${LIBRARY_TYPE} ${C_SRC} ${C_HDR})
|
add_library(audaspace-c ${LIBRARY_TYPE} ${C_SRC} ${C_HDR})
|
||||||
target_link_libraries(audaspace-c audaspace)
|
target_link_libraries(audaspace-c audaspace)
|
||||||
set_target_properties(audaspace-c PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audaspace-c PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
install(TARGETS audaspace-c
|
install(TARGETS audaspace-c
|
||||||
RUNTIME DESTINATION ${BIN_DESTINATION}
|
RUNTIME DESTINATION ${BIN_DESTINATION}
|
||||||
LIBRARY DESTINATION ${LIB_DESTINATION}
|
LIBRARY DESTINATION ${LIB_DESTINATION}
|
||||||
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
install(FILES ${C_HDR} DESTINATION include/audaspace)
|
install(FILES ${C_HDR} DESTINATION include/audaspace)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON)
|
if(WITH_PYTHON)
|
||||||
set(PYTHON_SRC
|
set(PYTHON_SRC
|
||||||
bindings/python/PyAPI.cpp
|
bindings/python/PyAPI.cpp
|
||||||
bindings/python/PyDevice.cpp
|
bindings/python/PyDevice.cpp
|
||||||
bindings/python/PyDynamicMusic.cpp
|
bindings/python/PyDynamicMusic.cpp
|
||||||
bindings/python/PyHandle.cpp
|
bindings/python/PyHandle.cpp
|
||||||
bindings/python/PyPlaybackManager.cpp
|
bindings/python/PyPlaybackManager.cpp
|
||||||
bindings/python/PySequence.cpp
|
bindings/python/PySequence.cpp
|
||||||
bindings/python/PySequenceEntry.cpp
|
bindings/python/PySequenceEntry.cpp
|
||||||
bindings/python/PySound.cpp
|
bindings/python/PySound.cpp
|
||||||
bindings/python/PySource.cpp
|
bindings/python/PySource.cpp
|
||||||
bindings/python/PyThreadPool.cpp
|
bindings/python/PyThreadPool.cpp
|
||||||
)
|
)
|
||||||
set(PYTHON_HDR
|
set(PYTHON_HDR
|
||||||
bindings/python/PyAPI.h
|
bindings/python/PyAPI.h
|
||||||
bindings/python/PyDevice.h
|
bindings/python/PyDevice.h
|
||||||
bindings/python/PyDynamicMusic.h
|
bindings/python/PyDynamicMusic.h
|
||||||
bindings/python/PyHandle.h
|
bindings/python/PyHandle.h
|
||||||
bindings/python/PyPlaybackManager.h
|
bindings/python/PyPlaybackManager.h
|
||||||
bindings/python/PySequence.h
|
bindings/python/PySequence.h
|
||||||
bindings/python/PySequenceEntry.h
|
bindings/python/PySequenceEntry.h
|
||||||
bindings/python/PySound.h
|
bindings/python/PySound.h
|
||||||
bindings/python/PySource.h
|
bindings/python/PySource.h
|
||||||
bindings/python/PyThreadPool.h
|
bindings/python/PyThreadPool.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_FFTW)
|
if(WITH_FFTW)
|
||||||
list(APPEND PYTHON_SRC
|
list(APPEND PYTHON_SRC
|
||||||
bindings/python/PyHRTF.cpp
|
bindings/python/PyHRTF.cpp
|
||||||
bindings/python/PyImpulseResponse.cpp
|
bindings/python/PyImpulseResponse.cpp
|
||||||
)
|
)
|
||||||
list(APPEND PYTHON_HDR
|
list(APPEND PYTHON_HDR
|
||||||
bindings/python/PyHRTF.h
|
bindings/python/PyHRTF.h
|
||||||
bindings/python/PyImpulseResponse.h
|
bindings/python/PyImpulseResponse.h
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(audaspace-py ${LIBRARY_TYPE} ${PYTHON_SRC} ${PYTHON_HDR})
|
add_library(audaspace-py ${LIBRARY_TYPE} ${PYTHON_SRC} ${PYTHON_HDR})
|
||||||
target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
|
target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
|
||||||
set_target_properties(audaspace-py PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
set_target_properties(audaspace-py PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||||
|
|
||||||
if(AUDASPACE_STANDALONE)
|
if(AUDASPACE_STANDALONE)
|
||||||
install(TARGETS audaspace-py
|
install(TARGETS audaspace-py
|
||||||
RUNTIME DESTINATION ${BIN_DESTINATION}
|
RUNTIME DESTINATION ${BIN_DESTINATION}
|
||||||
LIBRARY DESTINATION ${LIB_DESTINATION}
|
LIBRARY DESTINATION ${LIB_DESTINATION}
|
||||||
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
ARCHIVE DESTINATION ${LIB_DESTINATION}
|
||||||
)
|
)
|
||||||
|
|
||||||
install(FILES ${PYTHON_HDR} DESTINATION include/audaspace/python)
|
install(FILES ${PYTHON_HDR} DESTINATION include/audaspace/python)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PYTHON_MODULE)
|
if(WITH_PYTHON_MODULE)
|
||||||
set(PYTHON_SOURCE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/python)
|
set(PYTHON_SOURCE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/python)
|
||||||
configure_file(${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${CMAKE_CURRENT_BINARY_DIR}/setup.py ESCAPE_QUOTES @ONLY)
|
configure_file(${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${CMAKE_CURRENT_BINARY_DIR}/setup.py ESCAPE_QUOTES @ONLY)
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
add_custom_command(OUTPUT build COMMAND MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
add_custom_command(OUTPUT build COMMAND MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
set(ENV{VS100COMNTOOLS} $ENV{VS120COMNTOOLS})
|
set(ENV{VS100COMNTOOLS} $ENV{VS120COMNTOOLS})
|
||||||
add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
||||||
else()
|
else()
|
||||||
add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
|
||||||
endif()
|
endif()
|
||||||
add_custom_target(pythonmodule ALL DEPENDS build SOURCES ${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${PYTHON_SRC} ${PYTHON_HDR})
|
add_custom_target(pythonmodule ALL DEPENDS build SOURCES ${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${PYTHON_SRC} ${PYTHON_HDR})
|
||||||
add_dependencies(pythonmodule audaspace)
|
add_dependencies(pythonmodule audaspace)
|
||||||
|
|
||||||
install(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} setup.py install --root=\$ENV{DESTDIR} --prefix=${CMAKE_INSTALL_PREFIX})")
|
install(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} setup.py install --root=\$ENV{DESTDIR} --prefix=${CMAKE_INSTALL_PREFIX})")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# docs
|
# docs
|
||||||
|
|
||||||
if(WITH_DOCS)
|
if(WITH_DOCS)
|
||||||
find_package(Doxygen ${PACKAGE_OPTION})
|
find_package(Doxygen ${PACKAGE_OPTION})
|
||||||
|
|
||||||
if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND)
|
if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
|
||||||
|
|
||||||
add_custom_target(audaspace_doc ALL ${DOXYGEN_EXECUTABLE} Doxyfile COMMENT "Building C++ HTML documentation with Doxygen.")
|
add_custom_target(audaspace_doc ALL ${DOXYGEN_EXECUTABLE} Doxyfile COMMENT "Building C++ HTML documentation with Doxygen.")
|
||||||
else()
|
else()
|
||||||
set(WITH_DOCS FALSE CACHE BOOL "Build C++ HTML Documentation with Doxygen" FORCE)
|
set(WITH_DOCS FALSE CACHE BOOL "Build C++ HTML Documentation with Doxygen" FORCE)
|
||||||
message(WARNING "Doxygen (and/or dot) not found, documentation will not be built.")
|
message(WARNING "Doxygen (and/or dot) not found, documentation will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BINDING_DOCS)
|
if(WITH_BINDING_DOCS)
|
||||||
find_package(Sphinx ${PACKAGE_OPTION})
|
find_package(Sphinx ${PACKAGE_OPTION})
|
||||||
|
|
||||||
if(SPHINX_FOUND)
|
if(SPHINX_FOUND)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/conf.py @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/conf.py @ONLY)
|
||||||
|
|
||||||
add_custom_target(bindings_doc ALL COMMAND ${PYTHON_EXECUTABLE} setup.py --build-docs ${SPHINX_EXECUTABLE} -q -b html -c "${CMAKE_CURRENT_BINARY_DIR}" -d "${CMAKE_CURRENT_BINARY_DIR}/_doctrees" "${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc" "${CMAKE_CURRENT_BINARY_DIR}/doc/bindings" DEPENDS pythonmodule COMMENT "Building C/Python HTML documentation with Sphinx.")
|
add_custom_target(bindings_doc ALL COMMAND ${PYTHON_EXECUTABLE} setup.py --build-docs ${SPHINX_EXECUTABLE} -q -b html -c "${CMAKE_CURRENT_BINARY_DIR}" -d "${CMAKE_CURRENT_BINARY_DIR}/_doctrees" "${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc" "${CMAKE_CURRENT_BINARY_DIR}/doc/bindings" DEPENDS pythonmodule COMMENT "Building C/Python HTML documentation with Sphinx.")
|
||||||
else()
|
else()
|
||||||
set(WITH_BINDING_DOCS FALSE CACHE BOOL "Build C/Python HTML Documentation with Sphinx" FORCE)
|
set(WITH_BINDING_DOCS FALSE CACHE BOOL "Build C/Python HTML Documentation with Sphinx" FORCE)
|
||||||
message(WARNING "Sphinx not found, binding documentation will not be built.")
|
message(WARNING "Sphinx not found, binding documentation will not be built.")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_DOCS OR WITH_BINDING_DOCS)
|
if(WITH_DOCS OR WITH_BINDING_DOCS)
|
||||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/ DESTINATION ${DOCUMENTATION_INSTALL_PATH})
|
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/ DESTINATION ${DOCUMENTATION_INSTALL_PATH})
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
2
extern/audaspace/blender_config.cmake
vendored
2
extern/audaspace/blender_config.cmake
vendored
@@ -25,7 +25,7 @@ set(NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_INCLUDE_DIRS})
|
|||||||
set(SDL_FOUND ${WITH_SDL})
|
set(SDL_FOUND ${WITH_SDL})
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(DEFAULT_PLUGIN_PATH "plugins" CACHE STRING "Default plugin installation and loading path.")
|
set(DEFAULT_PLUGIN_PATH "plugins" CACHE STRING "Default plugin installation and loading path.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
mark_as_advanced(BUILD_DEMOS SHARED_LIBRARY WITH_C WITH_DOCS WITH_FFMPEG WITH_FFTW WITH_LIBSNDFILE SEPARATE_C PLUGIN_FFMPEG PLUGIN_JACK PLUGIN_LIBSNDFILE PLUGIN_OPENAL PLUGIN_SDL WITH_PYTHON_MODULE DYNLOAD_JACK WITH_BINDING_DOCS DEFAULT_PLUGIN_PATH)
|
mark_as_advanced(BUILD_DEMOS SHARED_LIBRARY WITH_C WITH_DOCS WITH_FFMPEG WITH_FFTW WITH_LIBSNDFILE SEPARATE_C PLUGIN_FFMPEG PLUGIN_JACK PLUGIN_LIBSNDFILE PLUGIN_OPENAL PLUGIN_SDL WITH_PYTHON_MODULE DYNLOAD_JACK WITH_BINDING_DOCS DEFAULT_PLUGIN_PATH)
|
||||||
|
|||||||
6
extern/binreloc/CMakeLists.txt
vendored
6
extern/binreloc/CMakeLists.txt
vendored
@@ -19,7 +19,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -27,9 +27,9 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
binreloc.c
|
binreloc.c
|
||||||
|
|
||||||
include/binreloc.h
|
include/binreloc.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
746
extern/bullet2/CMakeLists.txt
vendored
746
extern/bullet2/CMakeLists.txt
vendored
@@ -19,8 +19,8 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
src
|
src
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -28,391 +28,391 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
|
src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
|
src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
|
src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvt.cpp
|
src/BulletCollision/BroadphaseCollision/btDbvt.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
|
src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
|
src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
|
src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
|
src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
|
src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
|
src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
|
||||||
src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
|
src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
|
src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
|
src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
|
src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
|
src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
|
src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
|
src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btGhostObject.cpp
|
src/BulletCollision/CollisionDispatch/btGhostObject.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.cpp
|
src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
|
src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
|
src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
|
src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/CollisionDispatch/btUnionFind.cpp
|
src/BulletCollision/CollisionDispatch/btUnionFind.cpp
|
||||||
src/BulletCollision/CollisionShapes/btBox2dShape.cpp
|
src/BulletCollision/CollisionShapes/btBox2dShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btBoxShape.cpp
|
src/BulletCollision/CollisionShapes/btBoxShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
|
src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
|
src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btCollisionShape.cpp
|
src/BulletCollision/CollisionShapes/btCollisionShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btCompoundShape.cpp
|
src/BulletCollision/CollisionShapes/btCompoundShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConcaveShape.cpp
|
src/BulletCollision/CollisionShapes/btConcaveShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConeShape.cpp
|
src/BulletCollision/CollisionShapes/btConeShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
|
src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
|
src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
|
src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
|
src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
|
src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexShape.cpp
|
src/BulletCollision/CollisionShapes/btConvexShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
|
src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btCylinderShape.cpp
|
src/BulletCollision/CollisionShapes/btCylinderShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btEmptyShape.cpp
|
src/BulletCollision/CollisionShapes/btEmptyShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
|
src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
|
src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
|
src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
|
src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
|
src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
|
||||||
src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
|
src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
|
src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btShapeHull.cpp
|
src/BulletCollision/CollisionShapes/btShapeHull.cpp
|
||||||
src/BulletCollision/CollisionShapes/btSphereShape.cpp
|
src/BulletCollision/CollisionShapes/btSphereShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
|
src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
|
src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
|
src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
|
src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
|
src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
|
src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
|
src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
|
src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
|
src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
|
||||||
src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
|
src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
|
||||||
src/BulletCollision/Gimpact/btContactProcessing.cpp
|
src/BulletCollision/Gimpact/btContactProcessing.cpp
|
||||||
src/BulletCollision/Gimpact/btGImpactBvh.cpp
|
src/BulletCollision/Gimpact/btGImpactBvh.cpp
|
||||||
src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
|
src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
|
||||||
src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
|
src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
|
||||||
src/BulletCollision/Gimpact/btGImpactShape.cpp
|
src/BulletCollision/Gimpact/btGImpactShape.cpp
|
||||||
src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
|
src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
|
||||||
src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
|
src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
|
||||||
src/BulletCollision/Gimpact/gim_box_set.cpp
|
src/BulletCollision/Gimpact/gim_box_set.cpp
|
||||||
src/BulletCollision/Gimpact/gim_contact.cpp
|
src/BulletCollision/Gimpact/gim_contact.cpp
|
||||||
src/BulletCollision/Gimpact/gim_memory.cpp
|
src/BulletCollision/Gimpact/gim_memory.cpp
|
||||||
src/BulletCollision/Gimpact/gim_tri_collision.cpp
|
src/BulletCollision/Gimpact/gim_tri_collision.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
|
src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
|
src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
|
src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
|
src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
|
src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
|
src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
|
src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
|
src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
|
src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
|
src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
|
src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
|
||||||
src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
|
src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
|
||||||
|
|
||||||
src/BulletDynamics/Character/btKinematicCharacterController.cpp
|
src/BulletDynamics/Character/btKinematicCharacterController.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btFixedConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btFixedConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.cpp
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
|
src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.cpp
|
src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
|
src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
|
||||||
src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
|
src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
|
||||||
src/BulletDynamics/Dynamics/Bullet-C-API.cpp
|
src/BulletDynamics/Dynamics/Bullet-C-API.cpp
|
||||||
src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
|
src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
|
||||||
src/BulletDynamics/Dynamics/btRigidBody.cpp
|
src/BulletDynamics/Dynamics/btRigidBody.cpp
|
||||||
src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
|
src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBody.cpp
|
src/BulletDynamics/Featherstone/btMultiBody.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyConstraint.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyConstraint.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyJointMotor.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyJointMotor.cpp
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.cpp
|
src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.cpp
|
||||||
src/BulletDynamics/MLCPSolvers/btDantzigLCP.cpp
|
src/BulletDynamics/MLCPSolvers/btDantzigLCP.cpp
|
||||||
src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.cpp
|
src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.cpp
|
||||||
src/BulletDynamics/MLCPSolvers/btMLCPSolver.cpp
|
src/BulletDynamics/MLCPSolvers/btMLCPSolver.cpp
|
||||||
src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
|
src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
|
||||||
src/BulletDynamics/Vehicle/btWheelInfo.cpp
|
src/BulletDynamics/Vehicle/btWheelInfo.cpp
|
||||||
|
|
||||||
src/BulletSoftBody/btDefaultSoftBodySolver.cpp
|
src/BulletSoftBody/btDefaultSoftBodySolver.cpp
|
||||||
src/BulletSoftBody/btSoftBody.cpp
|
src/BulletSoftBody/btSoftBody.cpp
|
||||||
src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
|
src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
|
||||||
src/BulletSoftBody/btSoftBodyHelpers.cpp
|
src/BulletSoftBody/btSoftBodyHelpers.cpp
|
||||||
src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
|
src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
|
||||||
src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
|
src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
|
||||||
src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
|
src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
|
||||||
src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
|
src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
|
||||||
|
|
||||||
src/LinearMath/btAlignedAllocator.cpp
|
src/LinearMath/btAlignedAllocator.cpp
|
||||||
src/LinearMath/btConvexHull.cpp
|
src/LinearMath/btConvexHull.cpp
|
||||||
src/LinearMath/btConvexHullComputer.cpp
|
src/LinearMath/btConvexHullComputer.cpp
|
||||||
src/LinearMath/btGeometryUtil.cpp
|
src/LinearMath/btGeometryUtil.cpp
|
||||||
src/LinearMath/btPolarDecomposition.cpp
|
src/LinearMath/btPolarDecomposition.cpp
|
||||||
src/LinearMath/btQuickprof.cpp
|
src/LinearMath/btQuickprof.cpp
|
||||||
src/LinearMath/btSerializer.cpp
|
src/LinearMath/btSerializer.cpp
|
||||||
src/LinearMath/btVector3.cpp
|
src/LinearMath/btVector3.cpp
|
||||||
|
|
||||||
src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
|
src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
|
||||||
src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
|
src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
|
||||||
src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
|
src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
|
||||||
src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
|
src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvt.h
|
src/BulletCollision/BroadphaseCollision/btDbvt.h
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
|
src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
|
||||||
src/BulletCollision/BroadphaseCollision/btDispatcher.h
|
src/BulletCollision/BroadphaseCollision/btDispatcher.h
|
||||||
src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
|
src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
|
||||||
src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
|
src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
|
||||||
src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
|
src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
|
||||||
src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
|
src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
|
||||||
src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
|
src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
|
||||||
src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
|
src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
|
||||||
src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
|
src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
|
src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
|
src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
|
src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionObject.h
|
src/BulletCollision/CollisionDispatch/btCollisionObject.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
|
src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionWorld.h
|
src/BulletCollision/CollisionDispatch/btCollisionWorld.h
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
|
src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
|
||||||
src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
|
src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
|
||||||
src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btGhostObject.h
|
src/BulletCollision/CollisionDispatch/btGhostObject.h
|
||||||
src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.h
|
src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.h
|
||||||
src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
|
src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
|
||||||
src/BulletCollision/CollisionDispatch/btManifoldResult.h
|
src/BulletCollision/CollisionDispatch/btManifoldResult.h
|
||||||
src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
|
src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
|
||||||
src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
|
src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
|
||||||
src/BulletCollision/CollisionDispatch/btUnionFind.h
|
src/BulletCollision/CollisionDispatch/btUnionFind.h
|
||||||
src/BulletCollision/CollisionShapes/btBox2dShape.h
|
src/BulletCollision/CollisionShapes/btBox2dShape.h
|
||||||
src/BulletCollision/CollisionShapes/btBoxShape.h
|
src/BulletCollision/CollisionShapes/btBoxShape.h
|
||||||
src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
|
src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
|
||||||
src/BulletCollision/CollisionShapes/btCapsuleShape.h
|
src/BulletCollision/CollisionShapes/btCapsuleShape.h
|
||||||
src/BulletCollision/CollisionShapes/btCollisionMargin.h
|
src/BulletCollision/CollisionShapes/btCollisionMargin.h
|
||||||
src/BulletCollision/CollisionShapes/btCollisionShape.h
|
src/BulletCollision/CollisionShapes/btCollisionShape.h
|
||||||
src/BulletCollision/CollisionShapes/btCompoundShape.h
|
src/BulletCollision/CollisionShapes/btCompoundShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConcaveShape.h
|
src/BulletCollision/CollisionShapes/btConcaveShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConeShape.h
|
src/BulletCollision/CollisionShapes/btConeShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvex2dShape.h
|
src/BulletCollision/CollisionShapes/btConvex2dShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexHullShape.h
|
src/BulletCollision/CollisionShapes/btConvexHullShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexInternalShape.h
|
src/BulletCollision/CollisionShapes/btConvexInternalShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
|
src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
|
src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexShape.h
|
src/BulletCollision/CollisionShapes/btConvexShape.h
|
||||||
src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
|
src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
|
||||||
src/BulletCollision/CollisionShapes/btCylinderShape.h
|
src/BulletCollision/CollisionShapes/btCylinderShape.h
|
||||||
src/BulletCollision/CollisionShapes/btEmptyShape.h
|
src/BulletCollision/CollisionShapes/btEmptyShape.h
|
||||||
src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
|
src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
|
||||||
src/BulletCollision/CollisionShapes/btMaterial.h
|
src/BulletCollision/CollisionShapes/btMaterial.h
|
||||||
src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
|
src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
|
||||||
src/BulletCollision/CollisionShapes/btMultiSphereShape.h
|
src/BulletCollision/CollisionShapes/btMultiSphereShape.h
|
||||||
src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
|
src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
|
||||||
src/BulletCollision/CollisionShapes/btOptimizedBvh.h
|
src/BulletCollision/CollisionShapes/btOptimizedBvh.h
|
||||||
src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
|
src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
|
||||||
src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
|
src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
|
||||||
src/BulletCollision/CollisionShapes/btShapeHull.h
|
src/BulletCollision/CollisionShapes/btShapeHull.h
|
||||||
src/BulletCollision/CollisionShapes/btSphereShape.h
|
src/BulletCollision/CollisionShapes/btSphereShape.h
|
||||||
src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
|
src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
|
||||||
src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
|
src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
|
||||||
src/BulletCollision/CollisionShapes/btTetrahedronShape.h
|
src/BulletCollision/CollisionShapes/btTetrahedronShape.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleBuffer.h
|
src/BulletCollision/CollisionShapes/btTriangleBuffer.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleCallback.h
|
src/BulletCollision/CollisionShapes/btTriangleCallback.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
|
src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
|
src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
|
src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMesh.h
|
src/BulletCollision/CollisionShapes/btTriangleMesh.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
|
src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
|
||||||
src/BulletCollision/CollisionShapes/btTriangleShape.h
|
src/BulletCollision/CollisionShapes/btTriangleShape.h
|
||||||
src/BulletCollision/CollisionShapes/btUniformScalingShape.h
|
src/BulletCollision/CollisionShapes/btUniformScalingShape.h
|
||||||
src/BulletCollision/Gimpact/btBoxCollision.h
|
src/BulletCollision/Gimpact/btBoxCollision.h
|
||||||
src/BulletCollision/Gimpact/btClipPolygon.h
|
src/BulletCollision/Gimpact/btClipPolygon.h
|
||||||
src/BulletCollision/Gimpact/btCompoundFromGimpact.h
|
src/BulletCollision/Gimpact/btCompoundFromGimpact.h
|
||||||
src/BulletCollision/Gimpact/btContactProcessing.h
|
src/BulletCollision/Gimpact/btContactProcessing.h
|
||||||
src/BulletCollision/Gimpact/btGImpactBvh.h
|
src/BulletCollision/Gimpact/btGImpactBvh.h
|
||||||
src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
|
src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
|
||||||
src/BulletCollision/Gimpact/btGImpactMassUtil.h
|
src/BulletCollision/Gimpact/btGImpactMassUtil.h
|
||||||
src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
|
src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
|
||||||
src/BulletCollision/Gimpact/btGImpactShape.h
|
src/BulletCollision/Gimpact/btGImpactShape.h
|
||||||
src/BulletCollision/Gimpact/btGenericPoolAllocator.h
|
src/BulletCollision/Gimpact/btGenericPoolAllocator.h
|
||||||
src/BulletCollision/Gimpact/btGeometryOperations.h
|
src/BulletCollision/Gimpact/btGeometryOperations.h
|
||||||
src/BulletCollision/Gimpact/btQuantization.h
|
src/BulletCollision/Gimpact/btQuantization.h
|
||||||
src/BulletCollision/Gimpact/btTriangleShapeEx.h
|
src/BulletCollision/Gimpact/btTriangleShapeEx.h
|
||||||
src/BulletCollision/Gimpact/gim_array.h
|
src/BulletCollision/Gimpact/gim_array.h
|
||||||
src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
|
src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
|
||||||
src/BulletCollision/Gimpact/gim_bitset.h
|
src/BulletCollision/Gimpact/gim_bitset.h
|
||||||
src/BulletCollision/Gimpact/gim_box_collision.h
|
src/BulletCollision/Gimpact/gim_box_collision.h
|
||||||
src/BulletCollision/Gimpact/gim_box_set.h
|
src/BulletCollision/Gimpact/gim_box_set.h
|
||||||
src/BulletCollision/Gimpact/gim_clip_polygon.h
|
src/BulletCollision/Gimpact/gim_clip_polygon.h
|
||||||
src/BulletCollision/Gimpact/gim_contact.h
|
src/BulletCollision/Gimpact/gim_contact.h
|
||||||
src/BulletCollision/Gimpact/gim_geom_types.h
|
src/BulletCollision/Gimpact/gim_geom_types.h
|
||||||
src/BulletCollision/Gimpact/gim_geometry.h
|
src/BulletCollision/Gimpact/gim_geometry.h
|
||||||
src/BulletCollision/Gimpact/gim_hash_table.h
|
src/BulletCollision/Gimpact/gim_hash_table.h
|
||||||
src/BulletCollision/Gimpact/gim_linear_math.h
|
src/BulletCollision/Gimpact/gim_linear_math.h
|
||||||
src/BulletCollision/Gimpact/gim_math.h
|
src/BulletCollision/Gimpact/gim_math.h
|
||||||
src/BulletCollision/Gimpact/gim_memory.h
|
src/BulletCollision/Gimpact/gim_memory.h
|
||||||
src/BulletCollision/Gimpact/gim_radixsort.h
|
src/BulletCollision/Gimpact/gim_radixsort.h
|
||||||
src/BulletCollision/Gimpact/gim_tri_collision.h
|
src/BulletCollision/Gimpact/gim_tri_collision.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btComputeGjkEpaPenetration.h
|
src/BulletCollision/NarrowPhaseCollision/btComputeGjkEpaPenetration.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
|
src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
|
src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
|
src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
|
src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkCollisionDescription.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkCollisionDescription.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpa3.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkEpa3.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
|
src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
|
src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
|
src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btMprPenetration.h
|
src/BulletCollision/NarrowPhaseCollision/btMprPenetration.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
|
src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
|
src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
|
src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
|
src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
|
src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
|
src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
|
||||||
src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
|
src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
|
||||||
|
|
||||||
src/BulletDynamics/Character/btCharacterControllerInterface.h
|
src/BulletDynamics/Character/btCharacterControllerInterface.h
|
||||||
src/BulletDynamics/Character/btKinematicCharacterController.h
|
src/BulletDynamics/Character/btKinematicCharacterController.h
|
||||||
src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
|
src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
|
src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
|
||||||
src/BulletDynamics/ConstraintSolver/btContactConstraint.h
|
src/BulletDynamics/ConstraintSolver/btContactConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
|
src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
|
||||||
src/BulletDynamics/ConstraintSolver/btFixedConstraint.h
|
src/BulletDynamics/ConstraintSolver/btFixedConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btGearConstraint.h
|
src/BulletDynamics/ConstraintSolver/btGearConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.h
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
|
src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
|
src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
|
src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
|
src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
|
||||||
src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h
|
src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h
|
||||||
src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
|
src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
|
src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
|
||||||
src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
|
src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
|
src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btSolverBody.h
|
src/BulletDynamics/ConstraintSolver/btSolverBody.h
|
||||||
src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
|
src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
|
src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
|
||||||
src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
|
src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
|
||||||
src/BulletDynamics/Dynamics/btActionInterface.h
|
src/BulletDynamics/Dynamics/btActionInterface.h
|
||||||
src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
|
src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
|
||||||
src/BulletDynamics/Dynamics/btDynamicsWorld.h
|
src/BulletDynamics/Dynamics/btDynamicsWorld.h
|
||||||
src/BulletDynamics/Dynamics/btRigidBody.h
|
src/BulletDynamics/Dynamics/btRigidBody.h
|
||||||
src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
|
src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBody.h
|
src/BulletDynamics/Featherstone/btMultiBody.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyConstraint.h
|
src/BulletDynamics/Featherstone/btMultiBodyConstraint.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.h
|
src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.h
|
src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyJointFeedback.h
|
src/BulletDynamics/Featherstone/btMultiBodyJointFeedback.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.h
|
src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyJointMotor.h
|
src/BulletDynamics/Featherstone/btMultiBodyJointMotor.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyLink.h
|
src/BulletDynamics/Featherstone/btMultiBodyLink.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyLinkCollider.h
|
src/BulletDynamics/Featherstone/btMultiBodyLinkCollider.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.h
|
src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.h
|
||||||
src/BulletDynamics/Featherstone/btMultiBodySolverConstraint.h
|
src/BulletDynamics/Featherstone/btMultiBodySolverConstraint.h
|
||||||
src/BulletDynamics/MLCPSolvers/btDantzigLCP.h
|
src/BulletDynamics/MLCPSolvers/btDantzigLCP.h
|
||||||
src/BulletDynamics/MLCPSolvers/btDantzigSolver.h
|
src/BulletDynamics/MLCPSolvers/btDantzigSolver.h
|
||||||
src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.h
|
src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.h
|
||||||
src/BulletDynamics/MLCPSolvers/btLemkeSolver.h
|
src/BulletDynamics/MLCPSolvers/btLemkeSolver.h
|
||||||
src/BulletDynamics/MLCPSolvers/btMLCPSolver.h
|
src/BulletDynamics/MLCPSolvers/btMLCPSolver.h
|
||||||
src/BulletDynamics/MLCPSolvers/btMLCPSolverInterface.h
|
src/BulletDynamics/MLCPSolvers/btMLCPSolverInterface.h
|
||||||
src/BulletDynamics/MLCPSolvers/btPATHSolver.h
|
src/BulletDynamics/MLCPSolvers/btPATHSolver.h
|
||||||
src/BulletDynamics/MLCPSolvers/btSolveProjectedGaussSeidel.h
|
src/BulletDynamics/MLCPSolvers/btSolveProjectedGaussSeidel.h
|
||||||
src/BulletDynamics/Vehicle/btRaycastVehicle.h
|
src/BulletDynamics/Vehicle/btRaycastVehicle.h
|
||||||
src/BulletDynamics/Vehicle/btVehicleRaycaster.h
|
src/BulletDynamics/Vehicle/btVehicleRaycaster.h
|
||||||
src/BulletDynamics/Vehicle/btWheelInfo.h
|
src/BulletDynamics/Vehicle/btWheelInfo.h
|
||||||
|
|
||||||
src/BulletSoftBody/btDefaultSoftBodySolver.h
|
src/BulletSoftBody/btDefaultSoftBodySolver.h
|
||||||
src/BulletSoftBody/btSoftBody.h
|
src/BulletSoftBody/btSoftBody.h
|
||||||
src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
|
src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
|
||||||
src/BulletSoftBody/btSoftBodyData.h
|
src/BulletSoftBody/btSoftBodyData.h
|
||||||
src/BulletSoftBody/btSoftBodyHelpers.h
|
src/BulletSoftBody/btSoftBodyHelpers.h
|
||||||
src/BulletSoftBody/btSoftBodyInternals.h
|
src/BulletSoftBody/btSoftBodyInternals.h
|
||||||
src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
|
src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
|
||||||
src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
|
src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
|
||||||
src/BulletSoftBody/btSoftBodySolvers.h
|
src/BulletSoftBody/btSoftBodySolvers.h
|
||||||
src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
|
src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
|
||||||
src/BulletSoftBody/btSoftRigidDynamicsWorld.h
|
src/BulletSoftBody/btSoftRigidDynamicsWorld.h
|
||||||
src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
|
src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
|
||||||
src/BulletSoftBody/btSparseSDF.h
|
src/BulletSoftBody/btSparseSDF.h
|
||||||
|
|
||||||
src/LinearMath/btAabbUtil2.h
|
src/LinearMath/btAabbUtil2.h
|
||||||
src/LinearMath/btAlignedAllocator.h
|
src/LinearMath/btAlignedAllocator.h
|
||||||
src/LinearMath/btAlignedObjectArray.h
|
src/LinearMath/btAlignedObjectArray.h
|
||||||
src/LinearMath/btConvexHull.h
|
src/LinearMath/btConvexHull.h
|
||||||
src/LinearMath/btConvexHullComputer.h
|
src/LinearMath/btConvexHullComputer.h
|
||||||
src/LinearMath/btCpuFeatureUtility.h
|
src/LinearMath/btCpuFeatureUtility.h
|
||||||
src/LinearMath/btDefaultMotionState.h
|
src/LinearMath/btDefaultMotionState.h
|
||||||
src/LinearMath/btGeometryUtil.h
|
src/LinearMath/btGeometryUtil.h
|
||||||
src/LinearMath/btGrahamScan2dConvexHull.h
|
src/LinearMath/btGrahamScan2dConvexHull.h
|
||||||
src/LinearMath/btHashMap.h
|
src/LinearMath/btHashMap.h
|
||||||
src/LinearMath/btIDebugDraw.h
|
src/LinearMath/btIDebugDraw.h
|
||||||
src/LinearMath/btList.h
|
src/LinearMath/btList.h
|
||||||
src/LinearMath/btMatrix3x3.h
|
src/LinearMath/btMatrix3x3.h
|
||||||
src/LinearMath/btMatrixX.h
|
src/LinearMath/btMatrixX.h
|
||||||
src/LinearMath/btMinMax.h
|
src/LinearMath/btMinMax.h
|
||||||
src/LinearMath/btMotionState.h
|
src/LinearMath/btMotionState.h
|
||||||
src/LinearMath/btPolarDecomposition.h
|
src/LinearMath/btPolarDecomposition.h
|
||||||
src/LinearMath/btPoolAllocator.h
|
src/LinearMath/btPoolAllocator.h
|
||||||
src/LinearMath/btQuadWord.h
|
src/LinearMath/btQuadWord.h
|
||||||
src/LinearMath/btQuaternion.h
|
src/LinearMath/btQuaternion.h
|
||||||
src/LinearMath/btQuickprof.h
|
src/LinearMath/btQuickprof.h
|
||||||
src/LinearMath/btRandom.h
|
src/LinearMath/btRandom.h
|
||||||
src/LinearMath/btScalar.h
|
src/LinearMath/btScalar.h
|
||||||
src/LinearMath/btSerializer.h
|
src/LinearMath/btSerializer.h
|
||||||
src/LinearMath/btSpatialAlgebra.h
|
src/LinearMath/btSpatialAlgebra.h
|
||||||
src/LinearMath/btStackAlloc.h
|
src/LinearMath/btStackAlloc.h
|
||||||
src/LinearMath/btTransform.h
|
src/LinearMath/btTransform.h
|
||||||
src/LinearMath/btTransformUtil.h
|
src/LinearMath/btTransformUtil.h
|
||||||
src/LinearMath/btVector3.h
|
src/LinearMath/btVector3.h
|
||||||
|
|
||||||
src/btBulletCollisionCommon.h
|
src/btBulletCollisionCommon.h
|
||||||
src/btBulletDynamicsCommon.h
|
src/btBulletDynamicsCommon.h
|
||||||
src/Bullet-C-Api.h
|
src/Bullet-C-Api.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||||
# needed for gcc 4.6+
|
# needed for gcc 4.6+
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(extern_bullet "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib(extern_bullet "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
552
extern/ceres/CMakeLists.txt
vendored
552
extern/ceres/CMakeLists.txt
vendored
@@ -23,291 +23,291 @@
|
|||||||
# in that script too
|
# in that script too
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
internal
|
internal
|
||||||
config
|
config
|
||||||
../gflags/src
|
../gflags/src
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
${EIGEN3_INCLUDE_DIRS}
|
${EIGEN3_INCLUDE_DIRS}
|
||||||
${GFLAGS_INCLUDE_DIRS}
|
${GFLAGS_INCLUDE_DIRS}
|
||||||
${GLOG_INCLUDE_DIRS}
|
${GLOG_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
internal/ceres/array_utils.cc
|
internal/ceres/array_utils.cc
|
||||||
internal/ceres/blas.cc
|
internal/ceres/blas.cc
|
||||||
internal/ceres/block_evaluate_preparer.cc
|
internal/ceres/block_evaluate_preparer.cc
|
||||||
internal/ceres/block_jacobian_writer.cc
|
internal/ceres/block_jacobian_writer.cc
|
||||||
internal/ceres/block_jacobi_preconditioner.cc
|
internal/ceres/block_jacobi_preconditioner.cc
|
||||||
internal/ceres/block_random_access_dense_matrix.cc
|
internal/ceres/block_random_access_dense_matrix.cc
|
||||||
internal/ceres/block_random_access_diagonal_matrix.cc
|
internal/ceres/block_random_access_diagonal_matrix.cc
|
||||||
internal/ceres/block_random_access_matrix.cc
|
internal/ceres/block_random_access_matrix.cc
|
||||||
internal/ceres/block_random_access_sparse_matrix.cc
|
internal/ceres/block_random_access_sparse_matrix.cc
|
||||||
internal/ceres/block_sparse_matrix.cc
|
internal/ceres/block_sparse_matrix.cc
|
||||||
internal/ceres/block_structure.cc
|
internal/ceres/block_structure.cc
|
||||||
internal/ceres/callbacks.cc
|
internal/ceres/callbacks.cc
|
||||||
internal/ceres/c_api.cc
|
internal/ceres/c_api.cc
|
||||||
internal/ceres/cgnr_solver.cc
|
internal/ceres/cgnr_solver.cc
|
||||||
internal/ceres/compressed_col_sparse_matrix_utils.cc
|
internal/ceres/compressed_col_sparse_matrix_utils.cc
|
||||||
internal/ceres/compressed_row_jacobian_writer.cc
|
internal/ceres/compressed_row_jacobian_writer.cc
|
||||||
internal/ceres/compressed_row_sparse_matrix.cc
|
internal/ceres/compressed_row_sparse_matrix.cc
|
||||||
internal/ceres/conditioned_cost_function.cc
|
internal/ceres/conditioned_cost_function.cc
|
||||||
internal/ceres/conjugate_gradients_solver.cc
|
internal/ceres/conjugate_gradients_solver.cc
|
||||||
internal/ceres/coordinate_descent_minimizer.cc
|
internal/ceres/coordinate_descent_minimizer.cc
|
||||||
internal/ceres/corrector.cc
|
internal/ceres/corrector.cc
|
||||||
internal/ceres/covariance.cc
|
internal/ceres/covariance.cc
|
||||||
internal/ceres/covariance_impl.cc
|
internal/ceres/covariance_impl.cc
|
||||||
internal/ceres/dense_normal_cholesky_solver.cc
|
internal/ceres/dense_normal_cholesky_solver.cc
|
||||||
internal/ceres/dense_qr_solver.cc
|
internal/ceres/dense_qr_solver.cc
|
||||||
internal/ceres/dense_sparse_matrix.cc
|
internal/ceres/dense_sparse_matrix.cc
|
||||||
internal/ceres/detect_structure.cc
|
internal/ceres/detect_structure.cc
|
||||||
internal/ceres/dogleg_strategy.cc
|
internal/ceres/dogleg_strategy.cc
|
||||||
internal/ceres/dynamic_compressed_row_jacobian_writer.cc
|
internal/ceres/dynamic_compressed_row_jacobian_writer.cc
|
||||||
internal/ceres/dynamic_compressed_row_sparse_matrix.cc
|
internal/ceres/dynamic_compressed_row_sparse_matrix.cc
|
||||||
internal/ceres/evaluator.cc
|
internal/ceres/evaluator.cc
|
||||||
internal/ceres/file.cc
|
internal/ceres/file.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_d_d_d.cc
|
internal/ceres/generated/partitioned_matrix_view_d_d_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_d_d_d.cc
|
internal/ceres/generated/schur_eliminator_d_d_d.cc
|
||||||
internal/ceres/gradient_checker.cc
|
internal/ceres/gradient_checker.cc
|
||||||
internal/ceres/gradient_checking_cost_function.cc
|
internal/ceres/gradient_checking_cost_function.cc
|
||||||
internal/ceres/gradient_problem.cc
|
internal/ceres/gradient_problem.cc
|
||||||
internal/ceres/gradient_problem_solver.cc
|
internal/ceres/gradient_problem_solver.cc
|
||||||
internal/ceres/implicit_schur_complement.cc
|
internal/ceres/implicit_schur_complement.cc
|
||||||
internal/ceres/is_close.cc
|
internal/ceres/is_close.cc
|
||||||
internal/ceres/iterative_schur_complement_solver.cc
|
internal/ceres/iterative_schur_complement_solver.cc
|
||||||
internal/ceres/lapack.cc
|
internal/ceres/lapack.cc
|
||||||
internal/ceres/levenberg_marquardt_strategy.cc
|
internal/ceres/levenberg_marquardt_strategy.cc
|
||||||
internal/ceres/linear_least_squares_problems.cc
|
internal/ceres/linear_least_squares_problems.cc
|
||||||
internal/ceres/linear_operator.cc
|
internal/ceres/linear_operator.cc
|
||||||
internal/ceres/linear_solver.cc
|
internal/ceres/linear_solver.cc
|
||||||
internal/ceres/line_search.cc
|
internal/ceres/line_search.cc
|
||||||
internal/ceres/line_search_direction.cc
|
internal/ceres/line_search_direction.cc
|
||||||
internal/ceres/line_search_minimizer.cc
|
internal/ceres/line_search_minimizer.cc
|
||||||
internal/ceres/line_search_preprocessor.cc
|
internal/ceres/line_search_preprocessor.cc
|
||||||
internal/ceres/local_parameterization.cc
|
internal/ceres/local_parameterization.cc
|
||||||
internal/ceres/loss_function.cc
|
internal/ceres/loss_function.cc
|
||||||
internal/ceres/low_rank_inverse_hessian.cc
|
internal/ceres/low_rank_inverse_hessian.cc
|
||||||
internal/ceres/minimizer.cc
|
internal/ceres/minimizer.cc
|
||||||
internal/ceres/normal_prior.cc
|
internal/ceres/normal_prior.cc
|
||||||
internal/ceres/parameter_block_ordering.cc
|
internal/ceres/parameter_block_ordering.cc
|
||||||
internal/ceres/partitioned_matrix_view.cc
|
internal/ceres/partitioned_matrix_view.cc
|
||||||
internal/ceres/polynomial.cc
|
internal/ceres/polynomial.cc
|
||||||
internal/ceres/preconditioner.cc
|
internal/ceres/preconditioner.cc
|
||||||
internal/ceres/preprocessor.cc
|
internal/ceres/preprocessor.cc
|
||||||
internal/ceres/problem.cc
|
internal/ceres/problem.cc
|
||||||
internal/ceres/problem_impl.cc
|
internal/ceres/problem_impl.cc
|
||||||
internal/ceres/program.cc
|
internal/ceres/program.cc
|
||||||
internal/ceres/reorder_program.cc
|
internal/ceres/reorder_program.cc
|
||||||
internal/ceres/residual_block.cc
|
internal/ceres/residual_block.cc
|
||||||
internal/ceres/residual_block_utils.cc
|
internal/ceres/residual_block_utils.cc
|
||||||
internal/ceres/schur_complement_solver.cc
|
internal/ceres/schur_complement_solver.cc
|
||||||
internal/ceres/schur_eliminator.cc
|
internal/ceres/schur_eliminator.cc
|
||||||
internal/ceres/schur_jacobi_preconditioner.cc
|
internal/ceres/schur_jacobi_preconditioner.cc
|
||||||
internal/ceres/scratch_evaluate_preparer.cc
|
internal/ceres/scratch_evaluate_preparer.cc
|
||||||
internal/ceres/solver.cc
|
internal/ceres/solver.cc
|
||||||
internal/ceres/solver_utils.cc
|
internal/ceres/solver_utils.cc
|
||||||
internal/ceres/sparse_matrix.cc
|
internal/ceres/sparse_matrix.cc
|
||||||
internal/ceres/sparse_normal_cholesky_solver.cc
|
internal/ceres/sparse_normal_cholesky_solver.cc
|
||||||
internal/ceres/split.cc
|
internal/ceres/split.cc
|
||||||
internal/ceres/stringprintf.cc
|
internal/ceres/stringprintf.cc
|
||||||
internal/ceres/triplet_sparse_matrix.cc
|
internal/ceres/triplet_sparse_matrix.cc
|
||||||
internal/ceres/trust_region_minimizer.cc
|
internal/ceres/trust_region_minimizer.cc
|
||||||
internal/ceres/trust_region_preprocessor.cc
|
internal/ceres/trust_region_preprocessor.cc
|
||||||
internal/ceres/trust_region_step_evaluator.cc
|
internal/ceres/trust_region_step_evaluator.cc
|
||||||
internal/ceres/trust_region_strategy.cc
|
internal/ceres/trust_region_strategy.cc
|
||||||
internal/ceres/types.cc
|
internal/ceres/types.cc
|
||||||
internal/ceres/wall_time.cc
|
internal/ceres/wall_time.cc
|
||||||
|
|
||||||
include/ceres/autodiff_cost_function.h
|
include/ceres/autodiff_cost_function.h
|
||||||
include/ceres/autodiff_local_parameterization.h
|
include/ceres/autodiff_local_parameterization.h
|
||||||
include/ceres/c_api.h
|
include/ceres/c_api.h
|
||||||
include/ceres/ceres.h
|
include/ceres/ceres.h
|
||||||
include/ceres/conditioned_cost_function.h
|
include/ceres/conditioned_cost_function.h
|
||||||
include/ceres/cost_function.h
|
include/ceres/cost_function.h
|
||||||
include/ceres/cost_function_to_functor.h
|
include/ceres/cost_function_to_functor.h
|
||||||
include/ceres/covariance.h
|
include/ceres/covariance.h
|
||||||
include/ceres/crs_matrix.h
|
include/ceres/crs_matrix.h
|
||||||
include/ceres/dynamic_autodiff_cost_function.h
|
include/ceres/dynamic_autodiff_cost_function.h
|
||||||
include/ceres/dynamic_cost_function_to_functor.h
|
include/ceres/dynamic_cost_function_to_functor.h
|
||||||
include/ceres/dynamic_numeric_diff_cost_function.h
|
include/ceres/dynamic_numeric_diff_cost_function.h
|
||||||
include/ceres/fpclassify.h
|
include/ceres/fpclassify.h
|
||||||
include/ceres/gradient_checker.h
|
include/ceres/gradient_checker.h
|
||||||
include/ceres/gradient_problem.h
|
include/ceres/gradient_problem.h
|
||||||
include/ceres/gradient_problem_solver.h
|
include/ceres/gradient_problem_solver.h
|
||||||
include/ceres/internal/autodiff.h
|
include/ceres/internal/autodiff.h
|
||||||
include/ceres/internal/disable_warnings.h
|
include/ceres/internal/disable_warnings.h
|
||||||
include/ceres/internal/eigen.h
|
include/ceres/internal/eigen.h
|
||||||
include/ceres/internal/fixed_array.h
|
include/ceres/internal/fixed_array.h
|
||||||
include/ceres/internal/macros.h
|
include/ceres/internal/macros.h
|
||||||
include/ceres/internal/manual_constructor.h
|
include/ceres/internal/manual_constructor.h
|
||||||
include/ceres/internal/numeric_diff.h
|
include/ceres/internal/numeric_diff.h
|
||||||
include/ceres/internal/port.h
|
include/ceres/internal/port.h
|
||||||
include/ceres/internal/reenable_warnings.h
|
include/ceres/internal/reenable_warnings.h
|
||||||
include/ceres/internal/scoped_ptr.h
|
include/ceres/internal/scoped_ptr.h
|
||||||
include/ceres/internal/variadic_evaluate.h
|
include/ceres/internal/variadic_evaluate.h
|
||||||
include/ceres/iteration_callback.h
|
include/ceres/iteration_callback.h
|
||||||
include/ceres/jet.h
|
include/ceres/jet.h
|
||||||
include/ceres/local_parameterization.h
|
include/ceres/local_parameterization.h
|
||||||
include/ceres/loss_function.h
|
include/ceres/loss_function.h
|
||||||
include/ceres/normal_prior.h
|
include/ceres/normal_prior.h
|
||||||
include/ceres/numeric_diff_cost_function.h
|
include/ceres/numeric_diff_cost_function.h
|
||||||
include/ceres/numeric_diff_options.h
|
include/ceres/numeric_diff_options.h
|
||||||
include/ceres/ordered_groups.h
|
include/ceres/ordered_groups.h
|
||||||
include/ceres/problem.h
|
include/ceres/problem.h
|
||||||
include/ceres/rotation.h
|
include/ceres/rotation.h
|
||||||
include/ceres/sized_cost_function.h
|
include/ceres/sized_cost_function.h
|
||||||
include/ceres/solver.h
|
include/ceres/solver.h
|
||||||
include/ceres/types.h
|
include/ceres/types.h
|
||||||
include/ceres/version.h
|
include/ceres/version.h
|
||||||
internal/ceres/array_utils.h
|
internal/ceres/array_utils.h
|
||||||
internal/ceres/blas.h
|
internal/ceres/blas.h
|
||||||
internal/ceres/block_evaluate_preparer.h
|
internal/ceres/block_evaluate_preparer.h
|
||||||
internal/ceres/block_jacobian_writer.h
|
internal/ceres/block_jacobian_writer.h
|
||||||
internal/ceres/block_jacobi_preconditioner.h
|
internal/ceres/block_jacobi_preconditioner.h
|
||||||
internal/ceres/block_random_access_dense_matrix.h
|
internal/ceres/block_random_access_dense_matrix.h
|
||||||
internal/ceres/block_random_access_diagonal_matrix.h
|
internal/ceres/block_random_access_diagonal_matrix.h
|
||||||
internal/ceres/block_random_access_matrix.h
|
internal/ceres/block_random_access_matrix.h
|
||||||
internal/ceres/block_random_access_sparse_matrix.h
|
internal/ceres/block_random_access_sparse_matrix.h
|
||||||
internal/ceres/block_sparse_matrix.h
|
internal/ceres/block_sparse_matrix.h
|
||||||
internal/ceres/block_structure.h
|
internal/ceres/block_structure.h
|
||||||
internal/ceres/callbacks.h
|
internal/ceres/callbacks.h
|
||||||
internal/ceres/casts.h
|
internal/ceres/casts.h
|
||||||
internal/ceres/cgnr_linear_operator.h
|
internal/ceres/cgnr_linear_operator.h
|
||||||
internal/ceres/cgnr_solver.h
|
internal/ceres/cgnr_solver.h
|
||||||
internal/ceres/collections_port.h
|
internal/ceres/collections_port.h
|
||||||
internal/ceres/compressed_col_sparse_matrix_utils.h
|
internal/ceres/compressed_col_sparse_matrix_utils.h
|
||||||
internal/ceres/compressed_row_jacobian_writer.h
|
internal/ceres/compressed_row_jacobian_writer.h
|
||||||
internal/ceres/compressed_row_sparse_matrix.h
|
internal/ceres/compressed_row_sparse_matrix.h
|
||||||
internal/ceres/conjugate_gradients_solver.h
|
internal/ceres/conjugate_gradients_solver.h
|
||||||
internal/ceres/coordinate_descent_minimizer.h
|
internal/ceres/coordinate_descent_minimizer.h
|
||||||
internal/ceres/corrector.h
|
internal/ceres/corrector.h
|
||||||
internal/ceres/covariance_impl.h
|
internal/ceres/covariance_impl.h
|
||||||
internal/ceres/cxsparse.h
|
internal/ceres/cxsparse.h
|
||||||
internal/ceres/dense_jacobian_writer.h
|
internal/ceres/dense_jacobian_writer.h
|
||||||
internal/ceres/dense_normal_cholesky_solver.h
|
internal/ceres/dense_normal_cholesky_solver.h
|
||||||
internal/ceres/dense_qr_solver.h
|
internal/ceres/dense_qr_solver.h
|
||||||
internal/ceres/dense_sparse_matrix.h
|
internal/ceres/dense_sparse_matrix.h
|
||||||
internal/ceres/detect_structure.h
|
internal/ceres/detect_structure.h
|
||||||
internal/ceres/dogleg_strategy.h
|
internal/ceres/dogleg_strategy.h
|
||||||
internal/ceres/dynamic_compressed_row_finalizer.h
|
internal/ceres/dynamic_compressed_row_finalizer.h
|
||||||
internal/ceres/dynamic_compressed_row_jacobian_writer.h
|
internal/ceres/dynamic_compressed_row_jacobian_writer.h
|
||||||
internal/ceres/dynamic_compressed_row_sparse_matrix.h
|
internal/ceres/dynamic_compressed_row_sparse_matrix.h
|
||||||
internal/ceres/evaluator.h
|
internal/ceres/evaluator.h
|
||||||
internal/ceres/execution_summary.h
|
internal/ceres/execution_summary.h
|
||||||
internal/ceres/file.h
|
internal/ceres/file.h
|
||||||
internal/ceres/gradient_checking_cost_function.h
|
internal/ceres/gradient_checking_cost_function.h
|
||||||
internal/ceres/gradient_problem_evaluator.h
|
internal/ceres/gradient_problem_evaluator.h
|
||||||
internal/ceres/graph_algorithms.h
|
internal/ceres/graph_algorithms.h
|
||||||
internal/ceres/graph.h
|
internal/ceres/graph.h
|
||||||
internal/ceres/householder_vector.h
|
internal/ceres/householder_vector.h
|
||||||
internal/ceres/implicit_schur_complement.h
|
internal/ceres/implicit_schur_complement.h
|
||||||
internal/ceres/integral_types.h
|
internal/ceres/integral_types.h
|
||||||
internal/ceres/is_close.h
|
internal/ceres/is_close.h
|
||||||
internal/ceres/iterative_schur_complement_solver.h
|
internal/ceres/iterative_schur_complement_solver.h
|
||||||
internal/ceres/lapack.h
|
internal/ceres/lapack.h
|
||||||
internal/ceres/levenberg_marquardt_strategy.h
|
internal/ceres/levenberg_marquardt_strategy.h
|
||||||
internal/ceres/linear_least_squares_problems.h
|
internal/ceres/linear_least_squares_problems.h
|
||||||
internal/ceres/linear_operator.h
|
internal/ceres/linear_operator.h
|
||||||
internal/ceres/linear_solver.h
|
internal/ceres/linear_solver.h
|
||||||
internal/ceres/line_search_direction.h
|
internal/ceres/line_search_direction.h
|
||||||
internal/ceres/line_search.h
|
internal/ceres/line_search.h
|
||||||
internal/ceres/line_search_minimizer.h
|
internal/ceres/line_search_minimizer.h
|
||||||
internal/ceres/line_search_preprocessor.h
|
internal/ceres/line_search_preprocessor.h
|
||||||
internal/ceres/low_rank_inverse_hessian.h
|
internal/ceres/low_rank_inverse_hessian.h
|
||||||
internal/ceres/map_util.h
|
internal/ceres/map_util.h
|
||||||
internal/ceres/minimizer.h
|
internal/ceres/minimizer.h
|
||||||
internal/ceres/mutex.h
|
internal/ceres/mutex.h
|
||||||
internal/ceres/parameter_block.h
|
internal/ceres/parameter_block.h
|
||||||
internal/ceres/parameter_block_ordering.h
|
internal/ceres/parameter_block_ordering.h
|
||||||
internal/ceres/partitioned_matrix_view.h
|
internal/ceres/partitioned_matrix_view.h
|
||||||
internal/ceres/partitioned_matrix_view_impl.h
|
internal/ceres/partitioned_matrix_view_impl.h
|
||||||
internal/ceres/polynomial.h
|
internal/ceres/polynomial.h
|
||||||
internal/ceres/preconditioner.h
|
internal/ceres/preconditioner.h
|
||||||
internal/ceres/preprocessor.h
|
internal/ceres/preprocessor.h
|
||||||
internal/ceres/problem_impl.h
|
internal/ceres/problem_impl.h
|
||||||
internal/ceres/program_evaluator.h
|
internal/ceres/program_evaluator.h
|
||||||
internal/ceres/program.h
|
internal/ceres/program.h
|
||||||
internal/ceres/random.h
|
internal/ceres/random.h
|
||||||
internal/ceres/reorder_program.h
|
internal/ceres/reorder_program.h
|
||||||
internal/ceres/residual_block.h
|
internal/ceres/residual_block.h
|
||||||
internal/ceres/residual_block_utils.h
|
internal/ceres/residual_block_utils.h
|
||||||
internal/ceres/schur_complement_solver.h
|
internal/ceres/schur_complement_solver.h
|
||||||
internal/ceres/schur_eliminator.h
|
internal/ceres/schur_eliminator.h
|
||||||
internal/ceres/schur_eliminator_impl.h
|
internal/ceres/schur_eliminator_impl.h
|
||||||
internal/ceres/schur_jacobi_preconditioner.h
|
internal/ceres/schur_jacobi_preconditioner.h
|
||||||
internal/ceres/scratch_evaluate_preparer.h
|
internal/ceres/scratch_evaluate_preparer.h
|
||||||
internal/ceres/small_blas.h
|
internal/ceres/small_blas.h
|
||||||
internal/ceres/solver_utils.h
|
internal/ceres/solver_utils.h
|
||||||
internal/ceres/sparse_matrix.h
|
internal/ceres/sparse_matrix.h
|
||||||
internal/ceres/sparse_normal_cholesky_solver.h
|
internal/ceres/sparse_normal_cholesky_solver.h
|
||||||
internal/ceres/split.h
|
internal/ceres/split.h
|
||||||
internal/ceres/stl_util.h
|
internal/ceres/stl_util.h
|
||||||
internal/ceres/stringprintf.h
|
internal/ceres/stringprintf.h
|
||||||
internal/ceres/suitesparse.h
|
internal/ceres/suitesparse.h
|
||||||
internal/ceres/triplet_sparse_matrix.h
|
internal/ceres/triplet_sparse_matrix.h
|
||||||
internal/ceres/trust_region_minimizer.h
|
internal/ceres/trust_region_minimizer.h
|
||||||
internal/ceres/trust_region_preprocessor.h
|
internal/ceres/trust_region_preprocessor.h
|
||||||
internal/ceres/trust_region_step_evaluator.h
|
internal/ceres/trust_region_step_evaluator.h
|
||||||
internal/ceres/trust_region_strategy.h
|
internal/ceres/trust_region_strategy.h
|
||||||
internal/ceres/visibility_based_preconditioner.h
|
internal/ceres/visibility_based_preconditioner.h
|
||||||
internal/ceres/wall_time.h
|
internal/ceres/wall_time.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
||||||
list(APPEND LIB
|
list(APPEND LIB
|
||||||
extern_glog
|
extern_glog
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_2_2.cc
|
internal/ceres/generated/partitioned_matrix_view_2_2_2.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_2_3.cc
|
internal/ceres/generated/partitioned_matrix_view_2_2_3.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_2_4.cc
|
internal/ceres/generated/partitioned_matrix_view_2_2_4.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_2_d.cc
|
internal/ceres/generated/partitioned_matrix_view_2_2_d.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_3_3.cc
|
internal/ceres/generated/partitioned_matrix_view_2_3_3.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_3_4.cc
|
internal/ceres/generated/partitioned_matrix_view_2_3_4.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_3_6.cc
|
internal/ceres/generated/partitioned_matrix_view_2_3_6.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_3_9.cc
|
internal/ceres/generated/partitioned_matrix_view_2_3_9.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_3_d.cc
|
internal/ceres/generated/partitioned_matrix_view_2_3_d.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_4_3.cc
|
internal/ceres/generated/partitioned_matrix_view_2_4_3.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_4_4.cc
|
internal/ceres/generated/partitioned_matrix_view_2_4_4.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_4_8.cc
|
internal/ceres/generated/partitioned_matrix_view_2_4_8.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_4_9.cc
|
internal/ceres/generated/partitioned_matrix_view_2_4_9.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_4_d.cc
|
internal/ceres/generated/partitioned_matrix_view_2_4_d.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_2_d_d.cc
|
internal/ceres/generated/partitioned_matrix_view_2_d_d.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_4_4_2.cc
|
internal/ceres/generated/partitioned_matrix_view_4_4_2.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_4_4_3.cc
|
internal/ceres/generated/partitioned_matrix_view_4_4_3.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_4_4_4.cc
|
internal/ceres/generated/partitioned_matrix_view_4_4_4.cc
|
||||||
internal/ceres/generated/partitioned_matrix_view_4_4_d.cc
|
internal/ceres/generated/partitioned_matrix_view_4_4_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_2_2.cc
|
internal/ceres/generated/schur_eliminator_2_2_2.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_2_3.cc
|
internal/ceres/generated/schur_eliminator_2_2_3.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_2_4.cc
|
internal/ceres/generated/schur_eliminator_2_2_4.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_2_d.cc
|
internal/ceres/generated/schur_eliminator_2_2_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_3_3.cc
|
internal/ceres/generated/schur_eliminator_2_3_3.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_3_4.cc
|
internal/ceres/generated/schur_eliminator_2_3_4.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_3_6.cc
|
internal/ceres/generated/schur_eliminator_2_3_6.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_3_9.cc
|
internal/ceres/generated/schur_eliminator_2_3_9.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_3_d.cc
|
internal/ceres/generated/schur_eliminator_2_3_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_4_3.cc
|
internal/ceres/generated/schur_eliminator_2_4_3.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_4_4.cc
|
internal/ceres/generated/schur_eliminator_2_4_4.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_4_8.cc
|
internal/ceres/generated/schur_eliminator_2_4_8.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_4_9.cc
|
internal/ceres/generated/schur_eliminator_2_4_9.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_4_d.cc
|
internal/ceres/generated/schur_eliminator_2_4_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_2_d_d.cc
|
internal/ceres/generated/schur_eliminator_2_d_d.cc
|
||||||
internal/ceres/generated/schur_eliminator_4_4_2.cc
|
internal/ceres/generated/schur_eliminator_4_4_2.cc
|
||||||
internal/ceres/generated/schur_eliminator_4_4_3.cc
|
internal/ceres/generated/schur_eliminator_4_4_3.cc
|
||||||
internal/ceres/generated/schur_eliminator_4_4_4.cc
|
internal/ceres/generated/schur_eliminator_4_4_4.cc
|
||||||
internal/ceres/generated/schur_eliminator_4_4_d.cc
|
internal/ceres/generated/schur_eliminator_4_4_d.cc
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
|
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_definitions(${GFLAGS_DEFINES})
|
add_definitions(${GFLAGS_DEFINES})
|
||||||
@@ -315,17 +315,17 @@ add_definitions(${GLOG_DEFINES})
|
|||||||
add_definitions(${CERES_DEFINES})
|
add_definitions(${CERES_DEFINES})
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DCERES_HAVE_PTHREAD
|
-DCERES_HAVE_PTHREAD
|
||||||
-DCERES_NO_SUITESPARSE
|
-DCERES_NO_SUITESPARSE
|
||||||
-DCERES_NO_CXSPARSE
|
-DCERES_NO_CXSPARSE
|
||||||
-DCERES_NO_LAPACK
|
-DCERES_NO_LAPACK
|
||||||
-DCERES_HAVE_RWLOCK
|
-DCERES_HAVE_RWLOCK
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DCERES_USE_OPENMP
|
-DCERES_USE_OPENMP
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(extern_ceres "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib(extern_ceres "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
40
extern/ceres/bundle.sh
vendored
40
extern/ceres/bundle.sh
vendored
@@ -116,17 +116,17 @@ cat > CMakeLists.txt << EOF
|
|||||||
# in that script too
|
# in that script too
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
internal
|
internal
|
||||||
config
|
config
|
||||||
../gflags/src
|
../gflags/src
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
\${EIGEN3_INCLUDE_DIRS}
|
\${EIGEN3_INCLUDE_DIRS}
|
||||||
\${GFLAGS_INCLUDE_DIRS}
|
\${GFLAGS_INCLUDE_DIRS}
|
||||||
\${GLOG_INCLUDE_DIRS}
|
\${GLOG_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
@@ -136,15 +136,15 @@ ${headers}
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
extern_glog
|
extern_glog
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
${generated_sources}
|
${generated_sources}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
|
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_definitions(\${GFLAGS_DEFINES})
|
add_definitions(\${GFLAGS_DEFINES})
|
||||||
@@ -152,17 +152,17 @@ add_definitions(\${GLOG_DEFINES})
|
|||||||
add_definitions(\${CERES_DEFINES})
|
add_definitions(\${CERES_DEFINES})
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DCERES_HAVE_PTHREAD
|
-DCERES_HAVE_PTHREAD
|
||||||
-DCERES_NO_SUITESPARSE
|
-DCERES_NO_SUITESPARSE
|
||||||
-DCERES_NO_CXSPARSE
|
-DCERES_NO_CXSPARSE
|
||||||
-DCERES_NO_LAPACK
|
-DCERES_NO_LAPACK
|
||||||
-DCERES_HAVE_RWLOCK
|
-DCERES_HAVE_RWLOCK
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DCERES_USE_OPENMP
|
-DCERES_USE_OPENMP
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(extern_ceres "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
|
blender_add_lib(extern_ceres "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
|
||||||
|
|||||||
8
extern/clew/CMakeLists.txt
vendored
8
extern/clew/CMakeLists.txt
vendored
@@ -19,8 +19,8 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -28,8 +28,8 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
include/clew.h
|
include/clew.h
|
||||||
src/clew.c
|
src/clew.c
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
8
extern/cuew/CMakeLists.txt
vendored
8
extern/cuew/CMakeLists.txt
vendored
@@ -19,8 +19,8 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -28,9 +28,9 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/cuew.c
|
src/cuew.c
|
||||||
|
|
||||||
include/cuew.h
|
include/cuew.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
18
extern/curve_fit_nd/CMakeLists.txt
vendored
18
extern/curve_fit_nd/CMakeLists.txt
vendored
@@ -17,7 +17,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -25,15 +25,15 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
intern/curve_fit_cubic.c
|
intern/curve_fit_cubic.c
|
||||||
intern/curve_fit_cubic_refit.c
|
intern/curve_fit_cubic_refit.c
|
||||||
intern/curve_fit_corners_detect.c
|
intern/curve_fit_corners_detect.c
|
||||||
|
|
||||||
curve_fit_nd.h
|
curve_fit_nd.h
|
||||||
intern/curve_fit_inline.h
|
intern/curve_fit_inline.h
|
||||||
intern/generic_alloc_impl.h
|
intern/generic_alloc_impl.h
|
||||||
intern/generic_heap.c
|
intern/generic_heap.c
|
||||||
intern/generic_heap.h
|
intern/generic_heap.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
352
extern/draco/dracoenc/CMakeLists.txt
vendored
352
extern/draco/dracoenc/CMakeLists.txt
vendored
@@ -1,188 +1,188 @@
|
|||||||
remove_strict_flags()
|
remove_strict_flags()
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/draco/animation/keyframe_animation.cc
|
src/draco/animation/keyframe_animation.cc
|
||||||
src/draco/animation/keyframe_animation_encoder.cc
|
src/draco/animation/keyframe_animation_encoder.cc
|
||||||
src/draco/animation/keyframe_animation_encoder.h
|
src/draco/animation/keyframe_animation_encoder.h
|
||||||
src/draco/animation/keyframe_animation.h
|
src/draco/animation/keyframe_animation.h
|
||||||
src/draco/attributes/attribute_octahedron_transform.cc
|
src/draco/attributes/attribute_octahedron_transform.cc
|
||||||
src/draco/attributes/attribute_octahedron_transform.h
|
src/draco/attributes/attribute_octahedron_transform.h
|
||||||
src/draco/attributes/attribute_quantization_transform.cc
|
src/draco/attributes/attribute_quantization_transform.cc
|
||||||
src/draco/attributes/attribute_quantization_transform.h
|
src/draco/attributes/attribute_quantization_transform.h
|
||||||
src/draco/attributes/attribute_transform.cc
|
src/draco/attributes/attribute_transform.cc
|
||||||
src/draco/attributes/attribute_transform_data.h
|
src/draco/attributes/attribute_transform_data.h
|
||||||
src/draco/attributes/attribute_transform.h
|
src/draco/attributes/attribute_transform.h
|
||||||
src/draco/attributes/attribute_transform_type.h
|
src/draco/attributes/attribute_transform_type.h
|
||||||
src/draco/attributes/geometry_attribute.cc
|
src/draco/attributes/geometry_attribute.cc
|
||||||
src/draco/attributes/geometry_attribute.h
|
src/draco/attributes/geometry_attribute.h
|
||||||
src/draco/attributes/geometry_indices.h
|
src/draco/attributes/geometry_indices.h
|
||||||
src/draco/attributes/point_attribute.cc
|
src/draco/attributes/point_attribute.cc
|
||||||
src/draco/attributes/point_attribute.h
|
src/draco/attributes/point_attribute.h
|
||||||
src/draco/compression/attributes/attributes_encoder.cc
|
src/draco/compression/attributes/attributes_encoder.cc
|
||||||
src/draco/compression/attributes/attributes_encoder.h
|
src/draco/compression/attributes/attributes_encoder.h
|
||||||
src/draco/compression/attributes/kd_tree_attributes_encoder.cc
|
src/draco/compression/attributes/kd_tree_attributes_encoder.cc
|
||||||
src/draco/compression/attributes/kd_tree_attributes_encoder.h
|
src/draco/compression/attributes/kd_tree_attributes_encoder.h
|
||||||
src/draco/compression/attributes/linear_sequencer.h
|
src/draco/compression/attributes/linear_sequencer.h
|
||||||
src/draco/compression/attributes/points_sequencer.h
|
src/draco/compression/attributes/points_sequencer.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_shared.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_shared.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_data.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_data.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_area.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_area.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_base.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_base.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_multi_parallelogram_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_multi_parallelogram_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_shared.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_shared.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_encoder.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_predictor.h
|
src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_predictor.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_delta_encoder.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_delta_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_interface.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_interface.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoding_transform.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoding_transform.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_factory.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_factory.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_interface.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_interface.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_encoding_transform.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_encoding_transform.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_base.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_base.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_encoding_transform.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_encoding_transform.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_base.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_base.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_encoding_transform.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_encoding_transform.h
|
||||||
src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h
|
src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h
|
||||||
src/draco/compression/attributes/sequential_attribute_encoder.cc
|
src/draco/compression/attributes/sequential_attribute_encoder.cc
|
||||||
src/draco/compression/attributes/sequential_attribute_encoder.h
|
src/draco/compression/attributes/sequential_attribute_encoder.h
|
||||||
src/draco/compression/attributes/sequential_attribute_encoders_controller.cc
|
src/draco/compression/attributes/sequential_attribute_encoders_controller.cc
|
||||||
src/draco/compression/attributes/sequential_attribute_encoders_controller.h
|
src/draco/compression/attributes/sequential_attribute_encoders_controller.h
|
||||||
src/draco/compression/attributes/sequential_integer_attribute_encoder.cc
|
src/draco/compression/attributes/sequential_integer_attribute_encoder.cc
|
||||||
src/draco/compression/attributes/sequential_integer_attribute_encoder.h
|
src/draco/compression/attributes/sequential_integer_attribute_encoder.h
|
||||||
src/draco/compression/attributes/sequential_normal_attribute_encoder.cc
|
src/draco/compression/attributes/sequential_normal_attribute_encoder.cc
|
||||||
src/draco/compression/attributes/sequential_normal_attribute_encoder.h
|
src/draco/compression/attributes/sequential_normal_attribute_encoder.h
|
||||||
src/draco/compression/attributes/sequential_quantization_attribute_encoder.cc
|
src/draco/compression/attributes/sequential_quantization_attribute_encoder.cc
|
||||||
src/draco/compression/attributes/sequential_quantization_attribute_encoder.h
|
src/draco/compression/attributes/sequential_quantization_attribute_encoder.h
|
||||||
src/draco/compression/bit_coders/adaptive_rans_bit_coding_shared.h
|
src/draco/compression/bit_coders/adaptive_rans_bit_coding_shared.h
|
||||||
src/draco/compression/bit_coders/adaptive_rans_bit_encoder.cc
|
src/draco/compression/bit_coders/adaptive_rans_bit_encoder.cc
|
||||||
src/draco/compression/bit_coders/adaptive_rans_bit_encoder.h
|
src/draco/compression/bit_coders/adaptive_rans_bit_encoder.h
|
||||||
src/draco/compression/bit_coders/direct_bit_encoder.cc
|
src/draco/compression/bit_coders/direct_bit_encoder.cc
|
||||||
src/draco/compression/bit_coders/direct_bit_encoder.h
|
src/draco/compression/bit_coders/direct_bit_encoder.h
|
||||||
src/draco/compression/bit_coders/folded_integer_bit_encoder.h
|
src/draco/compression/bit_coders/folded_integer_bit_encoder.h
|
||||||
src/draco/compression/bit_coders/rans_bit_encoder.cc
|
src/draco/compression/bit_coders/rans_bit_encoder.cc
|
||||||
src/draco/compression/bit_coders/rans_bit_encoder.h
|
src/draco/compression/bit_coders/rans_bit_encoder.h
|
||||||
src/draco/compression/bit_coders/symbol_bit_encoder.cc
|
src/draco/compression/bit_coders/symbol_bit_encoder.cc
|
||||||
src/draco/compression/bit_coders/symbol_bit_encoder.h
|
src/draco/compression/bit_coders/symbol_bit_encoder.h
|
||||||
src/draco/compression/config/compression_shared.h
|
src/draco/compression/config/compression_shared.h
|
||||||
src/draco/compression/config/draco_options.h
|
src/draco/compression/config/draco_options.h
|
||||||
src/draco/compression/config/encoder_options.h
|
src/draco/compression/config/encoder_options.h
|
||||||
src/draco/compression/config/encoding_features.h
|
src/draco/compression/config/encoding_features.h
|
||||||
src/draco/compression/encode_base.h
|
src/draco/compression/encode_base.h
|
||||||
src/draco/compression/encode.cc
|
src/draco/compression/encode.cc
|
||||||
src/draco/compression/encode.h
|
src/draco/compression/encode.h
|
||||||
src/draco/compression/entropy/ans.h
|
src/draco/compression/entropy/ans.h
|
||||||
src/draco/compression/entropy/rans_symbol_coding.h
|
src/draco/compression/entropy/rans_symbol_coding.h
|
||||||
src/draco/compression/entropy/rans_symbol_encoder.h
|
src/draco/compression/entropy/rans_symbol_encoder.h
|
||||||
src/draco/compression/entropy/shannon_entropy.cc
|
src/draco/compression/entropy/shannon_entropy.cc
|
||||||
src/draco/compression/entropy/shannon_entropy.h
|
src/draco/compression/entropy/shannon_entropy.h
|
||||||
src/draco/compression/entropy/symbol_encoding.cc
|
src/draco/compression/entropy/symbol_encoding.cc
|
||||||
src/draco/compression/entropy/symbol_encoding.h
|
src/draco/compression/entropy/symbol_encoding.h
|
||||||
src/draco/compression/expert_encode.cc
|
src/draco/compression/expert_encode.cc
|
||||||
src/draco/compression/expert_encode.h
|
src/draco/compression/expert_encode.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_encoder.cc
|
src/draco/compression/mesh/mesh_edgebreaker_encoder.cc
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_encoder.h
|
src/draco/compression/mesh/mesh_edgebreaker_encoder.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc
|
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h
|
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl_interface.h
|
src/draco/compression/mesh/mesh_edgebreaker_encoder_impl_interface.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_shared.h
|
src/draco/compression/mesh/mesh_edgebreaker_shared.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_traversal_encoder.h
|
src/draco/compression/mesh/mesh_edgebreaker_traversal_encoder.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_traversal_predictive_encoder.h
|
src/draco/compression/mesh/mesh_edgebreaker_traversal_predictive_encoder.h
|
||||||
src/draco/compression/mesh/mesh_edgebreaker_traversal_valence_encoder.h
|
src/draco/compression/mesh/mesh_edgebreaker_traversal_valence_encoder.h
|
||||||
src/draco/compression/mesh/mesh_encoder.cc
|
src/draco/compression/mesh/mesh_encoder.cc
|
||||||
src/draco/compression/mesh/mesh_encoder.h
|
src/draco/compression/mesh/mesh_encoder.h
|
||||||
src/draco/compression/mesh/mesh_encoder_helpers.h
|
src/draco/compression/mesh/mesh_encoder_helpers.h
|
||||||
src/draco/compression/mesh/mesh_sequential_encoder.cc
|
src/draco/compression/mesh/mesh_sequential_encoder.cc
|
||||||
src/draco/compression/mesh/mesh_sequential_encoder.h
|
src/draco/compression/mesh/mesh_sequential_encoder.h
|
||||||
src/draco/compression/mesh/traverser/depth_first_traverser.h
|
src/draco/compression/mesh/traverser/depth_first_traverser.h
|
||||||
src/draco/compression/mesh/traverser/max_prediction_degree_traverser.h
|
src/draco/compression/mesh/traverser/max_prediction_degree_traverser.h
|
||||||
src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h
|
src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h
|
||||||
src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h
|
src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h
|
||||||
src/draco/compression/mesh/traverser/traverser_base.h
|
src/draco/compression/mesh/traverser/traverser_base.h
|
||||||
src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.cc
|
src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.cc
|
||||||
src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h
|
src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h
|
||||||
src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.cc
|
src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.cc
|
||||||
src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h
|
src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h
|
||||||
src/draco/compression/point_cloud/algorithms/point_cloud_compression_method.h
|
src/draco/compression/point_cloud/algorithms/point_cloud_compression_method.h
|
||||||
src/draco/compression/point_cloud/algorithms/point_cloud_types.h
|
src/draco/compression/point_cloud/algorithms/point_cloud_types.h
|
||||||
src/draco/compression/point_cloud/algorithms/quantize_points_3.h
|
src/draco/compression/point_cloud/algorithms/quantize_points_3.h
|
||||||
src/draco/compression/point_cloud/algorithms/queuing_policy.h
|
src/draco/compression/point_cloud/algorithms/queuing_policy.h
|
||||||
src/draco/compression/point_cloud/point_cloud_encoder.cc
|
src/draco/compression/point_cloud/point_cloud_encoder.cc
|
||||||
src/draco/compression/point_cloud/point_cloud_encoder.h
|
src/draco/compression/point_cloud/point_cloud_encoder.h
|
||||||
src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.cc
|
src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.cc
|
||||||
src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.h
|
src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.h
|
||||||
src/draco/compression/point_cloud/point_cloud_sequential_encoder.cc
|
src/draco/compression/point_cloud/point_cloud_sequential_encoder.cc
|
||||||
src/draco/compression/point_cloud/point_cloud_sequential_encoder.h
|
src/draco/compression/point_cloud/point_cloud_sequential_encoder.h
|
||||||
src/draco/core/bit_utils.cc
|
src/draco/core/bit_utils.cc
|
||||||
src/draco/core/bit_utils.h
|
src/draco/core/bit_utils.h
|
||||||
src/draco/core/bounding_box.cc
|
src/draco/core/bounding_box.cc
|
||||||
src/draco/core/bounding_box.h
|
src/draco/core/bounding_box.h
|
||||||
src/draco/core/cycle_timer.cc
|
src/draco/core/cycle_timer.cc
|
||||||
src/draco/core/cycle_timer.h
|
src/draco/core/cycle_timer.h
|
||||||
src/draco/core/data_buffer.cc
|
src/draco/core/data_buffer.cc
|
||||||
src/draco/core/data_buffer.h
|
src/draco/core/data_buffer.h
|
||||||
src/draco/core/divide.cc
|
src/draco/core/divide.cc
|
||||||
src/draco/core/divide.h
|
src/draco/core/divide.h
|
||||||
src/draco/core/draco_index_type.h
|
src/draco/core/draco_index_type.h
|
||||||
src/draco/core/draco_index_type_vector.h
|
src/draco/core/draco_index_type_vector.h
|
||||||
src/draco/core/draco_types.cc
|
src/draco/core/draco_types.cc
|
||||||
src/draco/core/draco_types.h
|
src/draco/core/draco_types.h
|
||||||
src/draco/core/encoder_buffer.cc
|
src/draco/core/encoder_buffer.cc
|
||||||
src/draco/core/encoder_buffer.h
|
src/draco/core/encoder_buffer.h
|
||||||
src/draco/core/hash_utils.cc
|
src/draco/core/hash_utils.cc
|
||||||
src/draco/core/hash_utils.h
|
src/draco/core/hash_utils.h
|
||||||
src/draco/core/macros.h
|
src/draco/core/macros.h
|
||||||
src/draco/core/math_utils.h
|
src/draco/core/math_utils.h
|
||||||
src/draco/core/options.cc
|
src/draco/core/options.cc
|
||||||
src/draco/core/options.h
|
src/draco/core/options.h
|
||||||
src/draco/core/quantization_utils.cc
|
src/draco/core/quantization_utils.cc
|
||||||
src/draco/core/quantization_utils.h
|
src/draco/core/quantization_utils.h
|
||||||
src/draco/core/status.h
|
src/draco/core/status.h
|
||||||
src/draco/core/statusor.h
|
src/draco/core/statusor.h
|
||||||
src/draco/core/varint_encoding.h
|
src/draco/core/varint_encoding.h
|
||||||
src/draco/core/vector_d.h
|
src/draco/core/vector_d.h
|
||||||
src/draco/mesh/corner_table.cc
|
src/draco/mesh/corner_table.cc
|
||||||
src/draco/mesh/corner_table.h
|
src/draco/mesh/corner_table.h
|
||||||
src/draco/mesh/corner_table_iterators.h
|
src/draco/mesh/corner_table_iterators.h
|
||||||
src/draco/mesh/mesh_are_equivalent.cc
|
src/draco/mesh/mesh_are_equivalent.cc
|
||||||
src/draco/mesh/mesh_are_equivalent.h
|
src/draco/mesh/mesh_are_equivalent.h
|
||||||
src/draco/mesh/mesh_attribute_corner_table.cc
|
src/draco/mesh/mesh_attribute_corner_table.cc
|
||||||
src/draco/mesh/mesh_attribute_corner_table.h
|
src/draco/mesh/mesh_attribute_corner_table.h
|
||||||
src/draco/mesh/mesh.cc
|
src/draco/mesh/mesh.cc
|
||||||
src/draco/mesh/mesh_cleanup.cc
|
src/draco/mesh/mesh_cleanup.cc
|
||||||
src/draco/mesh/mesh_cleanup.h
|
src/draco/mesh/mesh_cleanup.h
|
||||||
src/draco/mesh/mesh.h
|
src/draco/mesh/mesh.h
|
||||||
src/draco/mesh/mesh_misc_functions.cc
|
src/draco/mesh/mesh_misc_functions.cc
|
||||||
src/draco/mesh/mesh_misc_functions.h
|
src/draco/mesh/mesh_misc_functions.h
|
||||||
src/draco/mesh/mesh_stripifier.cc
|
src/draco/mesh/mesh_stripifier.cc
|
||||||
src/draco/mesh/mesh_stripifier.h
|
src/draco/mesh/mesh_stripifier.h
|
||||||
src/draco/mesh/triangle_soup_mesh_builder.cc
|
src/draco/mesh/triangle_soup_mesh_builder.cc
|
||||||
src/draco/mesh/triangle_soup_mesh_builder.h
|
src/draco/mesh/triangle_soup_mesh_builder.h
|
||||||
src/draco/mesh/valence_cache.h
|
src/draco/mesh/valence_cache.h
|
||||||
src/draco/metadata/geometry_metadata.cc
|
src/draco/metadata/geometry_metadata.cc
|
||||||
src/draco/metadata/geometry_metadata.h
|
src/draco/metadata/geometry_metadata.h
|
||||||
src/draco/metadata/metadata.cc
|
src/draco/metadata/metadata.cc
|
||||||
src/draco/metadata/metadata_encoder.cc
|
src/draco/metadata/metadata_encoder.cc
|
||||||
src/draco/metadata/metadata_encoder.h
|
src/draco/metadata/metadata_encoder.h
|
||||||
src/draco/metadata/metadata.h
|
src/draco/metadata/metadata.h
|
||||||
src/draco/point_cloud/point_cloud_builder.cc
|
src/draco/point_cloud/point_cloud_builder.cc
|
||||||
src/draco/point_cloud/point_cloud_builder.h
|
src/draco/point_cloud/point_cloud_builder.h
|
||||||
src/draco/point_cloud/point_cloud.cc
|
src/draco/point_cloud/point_cloud.cc
|
||||||
src/draco/point_cloud/point_cloud.h
|
src/draco/point_cloud/point_cloud.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
src
|
src
|
||||||
)
|
)
|
||||||
|
|
||||||
blender_add_lib(dracoenc "${SRC}" "${INC}" "" "${LIB}")
|
blender_add_lib(dracoenc "${SRC}" "${INC}" "" "${LIB}")
|
||||||
|
|||||||
32
extern/gflags/CMakeLists.txt
vendored
32
extern/gflags/CMakeLists.txt
vendored
@@ -19,35 +19,35 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
src
|
src
|
||||||
src/gflags
|
src/gflags
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/gflags.cc
|
src/gflags.cc
|
||||||
src/gflags_completions.cc
|
src/gflags_completions.cc
|
||||||
src/gflags_reporting.cc
|
src/gflags_reporting.cc
|
||||||
|
|
||||||
src/gflags/config.h
|
src/gflags/config.h
|
||||||
src/gflags/gflags_completions.h
|
src/gflags/gflags_completions.h
|
||||||
src/gflags/gflags_declare.h
|
src/gflags/gflags_declare.h
|
||||||
src/gflags/gflags_gflags.h
|
src/gflags/gflags_gflags.h
|
||||||
src/gflags/gflags.h
|
src/gflags/gflags.h
|
||||||
src/mutex.h
|
src/mutex.h
|
||||||
src/util.h
|
src/util.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
src/windows_port.cc
|
src/windows_port.cc
|
||||||
src/windows_port.h
|
src/windows_port.h
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_definitions(${GFLAGS_DEFINES})
|
add_definitions(${GFLAGS_DEFINES})
|
||||||
|
|||||||
20
extern/glew-es/CMakeLists.txt
vendored
20
extern/glew-es/CMakeLists.txt
vendored
@@ -19,7 +19,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -27,19 +27,19 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
list(APPEND INC_SYS
|
list(APPEND INC_SYS
|
||||||
${X11_X11_INCLUDE_PATH}
|
${X11_X11_INCLUDE_PATH}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/glew.c
|
src/glew.c
|
||||||
|
|
||||||
include/GL/eglew.h
|
include/GL/eglew.h
|
||||||
include/GL/glesew.h
|
include/GL/glesew.h
|
||||||
include/GL/glew.h
|
include/GL/glew.h
|
||||||
include/GL/glxew.h
|
include/GL/glxew.h
|
||||||
include/GL/wglew.h
|
include/GL/wglew.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
18
extern/glew/CMakeLists.txt
vendored
18
extern/glew/CMakeLists.txt
vendored
@@ -19,7 +19,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -27,18 +27,18 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
list(APPEND INC_SYS
|
list(APPEND INC_SYS
|
||||||
${X11_X11_INCLUDE_PATH}
|
${X11_X11_INCLUDE_PATH}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/glew.c
|
src/glew.c
|
||||||
|
|
||||||
include/GL/eglew.h
|
include/GL/eglew.h
|
||||||
include/GL/glew.h
|
include/GL/glew.h
|
||||||
include/GL/glxew.h
|
include/GL/glxew.h
|
||||||
include/GL/wglew.h
|
include/GL/wglew.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
102
extern/glog/CMakeLists.txt
vendored
102
extern/glog/CMakeLists.txt
vendored
@@ -19,81 +19,81 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
src
|
src
|
||||||
../gflags/src
|
../gflags/src
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/logging.cc
|
src/logging.cc
|
||||||
src/raw_logging.cc
|
src/raw_logging.cc
|
||||||
src/utilities.cc
|
src/utilities.cc
|
||||||
src/vlog_is_on.cc
|
src/vlog_is_on.cc
|
||||||
|
|
||||||
src/utilities.h
|
src/utilities.h
|
||||||
|
|
||||||
src/config.h
|
src/config.h
|
||||||
src/config_freebsd.h
|
src/config_freebsd.h
|
||||||
src/config_haiku.h
|
src/config_haiku.h
|
||||||
src/config_hurd.h
|
src/config_hurd.h
|
||||||
src/config_linux.h
|
src/config_linux.h
|
||||||
src/config_mac.h
|
src/config_mac.h
|
||||||
|
|
||||||
src/base/commandlineflags.h
|
src/base/commandlineflags.h
|
||||||
src/base/googleinit.h
|
src/base/googleinit.h
|
||||||
src/base/mutex.h
|
src/base/mutex.h
|
||||||
|
|
||||||
src/stacktrace.h
|
src/stacktrace.h
|
||||||
src/stacktrace_generic-inl.h
|
src/stacktrace_generic-inl.h
|
||||||
src/stacktrace_libunwind-inl.h
|
src/stacktrace_libunwind-inl.h
|
||||||
src/stacktrace_powerpc-inl.h
|
src/stacktrace_powerpc-inl.h
|
||||||
src/stacktrace_x86_64-inl.h
|
src/stacktrace_x86_64-inl.h
|
||||||
src/stacktrace_x86-inl.h
|
src/stacktrace_x86-inl.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT WITH_SYSTEM_GFLAGS)
|
if(NOT WITH_SYSTEM_GFLAGS)
|
||||||
list(APPEND LIB
|
list(APPEND LIB
|
||||||
extern_gflags
|
extern_gflags
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
src/windows/port.cc
|
src/windows/port.cc
|
||||||
|
|
||||||
src/windows/glog/raw_logging.h
|
src/windows/glog/raw_logging.h
|
||||||
src/windows/glog/vlog_is_on.h
|
src/windows/glog/vlog_is_on.h
|
||||||
src/windows/glog/logging.h
|
src/windows/glog/logging.h
|
||||||
src/windows/glog/log_severity.h
|
src/windows/glog/log_severity.h
|
||||||
src/windows/port.h
|
src/windows/port.h
|
||||||
src/windows/config.h
|
src/windows/config.h
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND INC
|
list(APPEND INC
|
||||||
src/windows
|
src/windows
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
list(APPEND INC
|
list(APPEND INC
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
src/demangle.cc
|
src/demangle.cc
|
||||||
src/signalhandler.cc
|
src/signalhandler.cc
|
||||||
src/symbolize.cc
|
src/symbolize.cc
|
||||||
|
|
||||||
src/demangle.h
|
src/demangle.h
|
||||||
src/symbolize.h
|
src/symbolize.h
|
||||||
|
|
||||||
include/glog/logging.h
|
include/glog/logging.h
|
||||||
include/glog/log_severity.h
|
include/glog/log_severity.h
|
||||||
include/glog/raw_logging.h
|
include/glog/raw_logging.h
|
||||||
include/glog/vlog_is_on.h
|
include/glog/vlog_is_on.h
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_definitions(${GFLAGS_DEFINES})
|
add_definitions(${GFLAGS_DEFINES})
|
||||||
|
|||||||
66
extern/gtest/CMakeLists.txt
vendored
66
extern/gtest/CMakeLists.txt
vendored
@@ -20,14 +20,14 @@
|
|||||||
|
|
||||||
# avoid noisy warnings
|
# avoid noisy warnings
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
remove_cc_flag(
|
remove_cc_flag(
|
||||||
"-Wmissing-declarations"
|
"-Wmissing-declarations"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -35,35 +35,35 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
src/gtest.cc
|
src/gtest.cc
|
||||||
src/gtest-death-test.cc
|
src/gtest-death-test.cc
|
||||||
src/gtest-filepath.cc
|
src/gtest-filepath.cc
|
||||||
src/gtest-port.cc
|
src/gtest-port.cc
|
||||||
src/gtest-printers.cc
|
src/gtest-printers.cc
|
||||||
src/gtest-test-part.cc
|
src/gtest-test-part.cc
|
||||||
src/gtest-typed-test.cc
|
src/gtest-typed-test.cc
|
||||||
|
|
||||||
src/gtest-internal-inl.h
|
src/gtest-internal-inl.h
|
||||||
include/gtest/gtest-death-test.h
|
include/gtest/gtest-death-test.h
|
||||||
include/gtest/gtest.h
|
include/gtest/gtest.h
|
||||||
include/gtest/gtest-message.h
|
include/gtest/gtest-message.h
|
||||||
include/gtest/gtest-param-test.h
|
include/gtest/gtest-param-test.h
|
||||||
include/gtest/gtest_pred_impl.h
|
include/gtest/gtest_pred_impl.h
|
||||||
include/gtest/gtest-printers.h
|
include/gtest/gtest-printers.h
|
||||||
include/gtest/gtest_prod.h
|
include/gtest/gtest_prod.h
|
||||||
include/gtest/gtest-spi.h
|
include/gtest/gtest-spi.h
|
||||||
include/gtest/gtest-test-part.h
|
include/gtest/gtest-test-part.h
|
||||||
include/gtest/gtest-typed-test.h
|
include/gtest/gtest-typed-test.h
|
||||||
include/gtest/internal/gtest-death-test-internal.h
|
include/gtest/internal/gtest-death-test-internal.h
|
||||||
include/gtest/internal/gtest-filepath.h
|
include/gtest/internal/gtest-filepath.h
|
||||||
include/gtest/internal/gtest-internal.h
|
include/gtest/internal/gtest-internal.h
|
||||||
include/gtest/internal/gtest-linked_ptr.h
|
include/gtest/internal/gtest-linked_ptr.h
|
||||||
include/gtest/internal/gtest-param-util-generated.h
|
include/gtest/internal/gtest-param-util-generated.h
|
||||||
include/gtest/internal/gtest-param-util.h
|
include/gtest/internal/gtest-param-util.h
|
||||||
include/gtest/internal/gtest-port.h
|
include/gtest/internal/gtest-port.h
|
||||||
include/gtest/internal/gtest-string.h
|
include/gtest/internal/gtest-string.h
|
||||||
include/gtest/internal/gtest-tuple.h
|
include/gtest/internal/gtest-tuple.h
|
||||||
include/gtest/internal/gtest-type-util.h
|
include/gtest/internal/gtest-type-util.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
26
extern/lzma/CMakeLists.txt
vendored
26
extern/lzma/CMakeLists.txt
vendored
@@ -19,7 +19,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -27,19 +27,19 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
Alloc.c
|
Alloc.c
|
||||||
LzFind.c
|
LzFind.c
|
||||||
LzmaDec.c
|
LzmaDec.c
|
||||||
LzmaEnc.c
|
LzmaEnc.c
|
||||||
LzmaLib.c
|
LzmaLib.c
|
||||||
|
|
||||||
Alloc.h
|
Alloc.h
|
||||||
LzFind.h
|
LzFind.h
|
||||||
LzHash.h
|
LzHash.h
|
||||||
LzmaDec.h
|
LzmaDec.h
|
||||||
LzmaEnc.h
|
LzmaEnc.h
|
||||||
LzmaLib.h
|
LzmaLib.h
|
||||||
Types.h
|
Types.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
8
extern/lzo/CMakeLists.txt
vendored
8
extern/lzo/CMakeLists.txt
vendored
@@ -29,11 +29,11 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
minilzo/minilzo.c
|
minilzo/minilzo.c
|
||||||
|
|
||||||
minilzo/lzoconf.h
|
minilzo/lzoconf.h
|
||||||
minilzo/lzodefs.h
|
minilzo/lzodefs.h
|
||||||
minilzo/minilzo.h
|
minilzo/minilzo.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
8
extern/rangetree/CMakeLists.txt
vendored
8
extern/rangetree/CMakeLists.txt
vendored
@@ -17,14 +17,14 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
range_tree.h
|
range_tree.h
|
||||||
intern/generic_alloc_impl.h
|
intern/generic_alloc_impl.h
|
||||||
|
|
||||||
intern/range_tree.c
|
intern/range_tree.c
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
8
extern/sdlew/CMakeLists.txt
vendored
8
extern/sdlew/CMakeLists.txt
vendored
@@ -19,8 +19,8 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -28,8 +28,8 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
include/sdlew.h
|
include/sdlew.h
|
||||||
src/sdlew.c
|
src/sdlew.c
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
6
extern/wcwidth/CMakeLists.txt
vendored
6
extern/wcwidth/CMakeLists.txt
vendored
@@ -19,7 +19,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -27,9 +27,9 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
wcwidth.c
|
wcwidth.c
|
||||||
|
|
||||||
wcwidth.h
|
wcwidth.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
10
extern/xdnd/CMakeLists.txt
vendored
10
extern/xdnd/CMakeLists.txt
vendored
@@ -19,23 +19,23 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
${X11_X11_INCLUDE_PATH}
|
${X11_X11_INCLUDE_PATH}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
xdnd.c
|
xdnd.c
|
||||||
xdnd.h
|
xdnd.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DHAVE_SYS_TIME_H
|
-DHAVE_SYS_TIME_H
|
||||||
)
|
)
|
||||||
|
|
||||||
blender_add_lib(extern_xdnd "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib(extern_xdnd "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
@@ -33,46 +33,46 @@ add_subdirectory(glew-mx)
|
|||||||
add_subdirectory(eigen)
|
add_subdirectory(eigen)
|
||||||
|
|
||||||
if(WITH_AUDASPACE)
|
if(WITH_AUDASPACE)
|
||||||
add_subdirectory(audaspace)
|
add_subdirectory(audaspace)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_MOD_REMESH)
|
if(WITH_MOD_REMESH)
|
||||||
add_subdirectory(dualcon)
|
add_subdirectory(dualcon)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_MOD_FLUID)
|
if(WITH_MOD_FLUID)
|
||||||
add_subdirectory(elbeem)
|
add_subdirectory(elbeem)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_MOD_SMOKE)
|
if(WITH_MOD_SMOKE)
|
||||||
add_subdirectory(smoke)
|
add_subdirectory(smoke)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IK_SOLVER)
|
if(WITH_IK_SOLVER)
|
||||||
add_subdirectory(iksolver)
|
add_subdirectory(iksolver)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IK_ITASC)
|
if(WITH_IK_ITASC)
|
||||||
add_subdirectory(itasc)
|
add_subdirectory(itasc)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
add_subdirectory(cycles)
|
add_subdirectory(cycles)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
add_subdirectory(locale)
|
add_subdirectory(locale)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BULLET)
|
if(WITH_BULLET)
|
||||||
add_subdirectory(rigidbody)
|
add_subdirectory(rigidbody)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# only windows needs utf16 converter
|
# only windows needs utf16 converter
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_subdirectory(utfconv)
|
add_subdirectory(utfconv)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
add_subdirectory(openvdb)
|
add_subdirectory(openvdb)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -19,70 +19,70 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
extern
|
extern
|
||||||
../guardedalloc
|
../guardedalloc
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
${PNG_INCLUDE_DIRS}
|
${PNG_INCLUDE_DIRS}
|
||||||
${ZLIB_INCLUDE_DIRS}
|
${ZLIB_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
intern/attributes.cpp
|
intern/attributes.cpp
|
||||||
intern/controlparticles.cpp
|
intern/controlparticles.cpp
|
||||||
intern/elbeem.cpp
|
intern/elbeem.cpp
|
||||||
intern/elbeem_control.cpp
|
intern/elbeem_control.cpp
|
||||||
intern/isosurface.cpp
|
intern/isosurface.cpp
|
||||||
intern/mvmcoords.cpp
|
intern/mvmcoords.cpp
|
||||||
intern/ntl_blenderdumper.cpp
|
intern/ntl_blenderdumper.cpp
|
||||||
intern/ntl_bsptree.cpp
|
intern/ntl_bsptree.cpp
|
||||||
intern/ntl_geometrymodel.cpp
|
intern/ntl_geometrymodel.cpp
|
||||||
intern/ntl_geometryobject.cpp
|
intern/ntl_geometryobject.cpp
|
||||||
intern/ntl_lighting.cpp
|
intern/ntl_lighting.cpp
|
||||||
intern/ntl_ray.cpp
|
intern/ntl_ray.cpp
|
||||||
intern/ntl_world.cpp
|
intern/ntl_world.cpp
|
||||||
intern/parametrizer.cpp
|
intern/parametrizer.cpp
|
||||||
intern/particletracer.cpp
|
intern/particletracer.cpp
|
||||||
intern/simulation_object.cpp
|
intern/simulation_object.cpp
|
||||||
intern/solver_adap.cpp
|
intern/solver_adap.cpp
|
||||||
intern/solver_control.cpp
|
intern/solver_control.cpp
|
||||||
intern/solver_init.cpp
|
intern/solver_init.cpp
|
||||||
intern/solver_interface.cpp
|
intern/solver_interface.cpp
|
||||||
intern/solver_main.cpp
|
intern/solver_main.cpp
|
||||||
intern/solver_util.cpp
|
intern/solver_util.cpp
|
||||||
intern/utilities.cpp
|
intern/utilities.cpp
|
||||||
|
|
||||||
extern/LBM_fluidsim.h
|
extern/LBM_fluidsim.h
|
||||||
extern/elbeem.h
|
extern/elbeem.h
|
||||||
intern/attributes.h
|
intern/attributes.h
|
||||||
intern/controlparticles.h
|
intern/controlparticles.h
|
||||||
intern/elbeem_control.h
|
intern/elbeem_control.h
|
||||||
intern/isosurface.h
|
intern/isosurface.h
|
||||||
intern/loop_tools.h
|
intern/loop_tools.h
|
||||||
intern/mcubes_tables.h
|
intern/mcubes_tables.h
|
||||||
intern/mvmcoords.h
|
intern/mvmcoords.h
|
||||||
intern/ntl_blenderdumper.h
|
intern/ntl_blenderdumper.h
|
||||||
intern/ntl_bsptree.h
|
intern/ntl_bsptree.h
|
||||||
intern/ntl_geometryclass.h
|
intern/ntl_geometryclass.h
|
||||||
intern/ntl_geometrymodel.h
|
intern/ntl_geometrymodel.h
|
||||||
intern/ntl_geometryobject.h
|
intern/ntl_geometryobject.h
|
||||||
intern/ntl_geometryshader.h
|
intern/ntl_geometryshader.h
|
||||||
intern/ntl_lighting.h
|
intern/ntl_lighting.h
|
||||||
intern/ntl_matrices.h
|
intern/ntl_matrices.h
|
||||||
intern/ntl_ray.h
|
intern/ntl_ray.h
|
||||||
intern/ntl_vector3dim.h
|
intern/ntl_vector3dim.h
|
||||||
intern/ntl_world.h
|
intern/ntl_world.h
|
||||||
intern/paraloopend.h
|
intern/paraloopend.h
|
||||||
intern/parametrizer.h
|
intern/parametrizer.h
|
||||||
intern/particletracer.h
|
intern/particletracer.h
|
||||||
intern/simulation_object.h
|
intern/simulation_object.h
|
||||||
intern/solver_class.h
|
intern/solver_class.h
|
||||||
intern/solver_control.h
|
intern/solver_control.h
|
||||||
intern/solver_interface.h
|
intern/solver_interface.h
|
||||||
intern/solver_relax.h
|
intern/solver_relax.h
|
||||||
intern/utilities.h
|
intern/utilities.h
|
||||||
intern/globals.h
|
intern/globals.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
@@ -92,31 +92,31 @@ set(LIB
|
|||||||
remove_strict_flags()
|
remove_strict_flags()
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DNOGUI
|
-DNOGUI
|
||||||
-DELBEEM_BLENDER=1
|
-DELBEEM_BLENDER=1
|
||||||
)
|
)
|
||||||
|
|
||||||
# not essential but quiet gcc's -Wundef
|
# not essential but quiet gcc's -Wundef
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DLBM_PRECISION=1
|
-DLBM_PRECISION=1
|
||||||
-DLBM_INCLUDE_TESTSOLVERS=0
|
-DLBM_INCLUDE_TESTSOLVERS=0
|
||||||
-DFSGR_STRICT_DEBUG=0
|
-DFSGR_STRICT_DEBUG=0
|
||||||
-DELBEEM_MPI=0
|
-DELBEEM_MPI=0
|
||||||
-DNEWDIRVELMOTEST=0
|
-DNEWDIRVELMOTEST=0
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# We need BLI_gzopen on win32 for unicode paths
|
# We need BLI_gzopen on win32 for unicode paths
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DLBM_GZIP_OVERRIDE_H="${CMAKE_SOURCE_DIR}/source/blender/blenlib/BLI_fileops.h"
|
-DLBM_GZIP_OVERRIDE_H="${CMAKE_SOURCE_DIR}/source/blender/blenlib/BLI_fileops.h"
|
||||||
-D LBM_GZIP_OPEN_FN="\(gzFile\)BLI_gzopen"
|
-D LBM_GZIP_OPEN_FN="\(gzFile\)BLI_gzopen"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
add_definitions(-DPARALLEL=1)
|
add_definitions(-DPARALLEL=1)
|
||||||
else()
|
else()
|
||||||
add_definitions(-DPARALLEL=0)
|
add_definitions(-DPARALLEL=0)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib_nolist(bf_intern_elbeem "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib_nolist(bf_intern_elbeem "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
@@ -23,334 +23,334 @@ set(INC
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
${EIGEN3_INCLUDE_DIRS}
|
${EIGEN3_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT WITH_SYSTEM_EIGEN3)
|
if(NOT WITH_SYSTEM_EIGEN3)
|
||||||
set(EIGEN3_HEADERS
|
set(EIGEN3_HEADERS
|
||||||
# until we have another user...
|
# until we have another user...
|
||||||
../../extern/Eigen3/Eigen/src/Cholesky/LDLT.h
|
../../extern/Eigen3/Eigen/src/Cholesky/LDLT.h
|
||||||
../../extern/Eigen3/Eigen/src/Cholesky/LLT.h
|
../../extern/Eigen3/Eigen/src/Cholesky/LLT.h
|
||||||
../../extern/Eigen3/Eigen/src/Cholesky/LLT_MKL.h
|
../../extern/Eigen3/Eigen/src/Cholesky/LLT_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/CholmodSupport/CholmodSupport.h
|
../../extern/Eigen3/Eigen/src/CholmodSupport/CholmodSupport.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Array.h
|
../../extern/Eigen3/Eigen/src/Core/Array.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/ArrayBase.h
|
../../extern/Eigen3/Eigen/src/Core/ArrayBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/ArrayWrapper.h
|
../../extern/Eigen3/Eigen/src/Core/ArrayWrapper.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Assign.h
|
../../extern/Eigen3/Eigen/src/Core/Assign.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Assign_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/Assign_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/BandMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/BandMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Block.h
|
../../extern/Eigen3/Eigen/src/Core/Block.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/BooleanRedux.h
|
../../extern/Eigen3/Eigen/src/Core/BooleanRedux.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/CommaInitializer.h
|
../../extern/Eigen3/Eigen/src/Core/CommaInitializer.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h
|
../../extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h
|
../../extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h
|
../../extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h
|
../../extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/DenseBase.h
|
../../extern/Eigen3/Eigen/src/Core/DenseBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h
|
../../extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/DenseStorage.h
|
../../extern/Eigen3/Eigen/src/Core/DenseStorage.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Diagonal.h
|
../../extern/Eigen3/Eigen/src/Core/Diagonal.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/DiagonalProduct.h
|
../../extern/Eigen3/Eigen/src/Core/DiagonalProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Dot.h
|
../../extern/Eigen3/Eigen/src/Core/Dot.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/EigenBase.h
|
../../extern/Eigen3/Eigen/src/Core/EigenBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Flagged.h
|
../../extern/Eigen3/Eigen/src/Core/Flagged.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h
|
../../extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Functors.h
|
../../extern/Eigen3/Eigen/src/Core/Functors.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Fuzzy.h
|
../../extern/Eigen3/Eigen/src/Core/Fuzzy.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/GeneralProduct.h
|
../../extern/Eigen3/Eigen/src/Core/GeneralProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/GenericPacketMath.h
|
../../extern/Eigen3/Eigen/src/Core/GenericPacketMath.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/GlobalFunctions.h
|
../../extern/Eigen3/Eigen/src/Core/GlobalFunctions.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/IO.h
|
../../extern/Eigen3/Eigen/src/Core/IO.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Map.h
|
../../extern/Eigen3/Eigen/src/Core/Map.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/MapBase.h
|
../../extern/Eigen3/Eigen/src/Core/MapBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/MathFunctions.h
|
../../extern/Eigen3/Eigen/src/Core/MathFunctions.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Matrix.h
|
../../extern/Eigen3/Eigen/src/Core/Matrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/MatrixBase.h
|
../../extern/Eigen3/Eigen/src/Core/MatrixBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/NestByValue.h
|
../../extern/Eigen3/Eigen/src/Core/NestByValue.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/NoAlias.h
|
../../extern/Eigen3/Eigen/src/Core/NoAlias.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/NumTraits.h
|
../../extern/Eigen3/Eigen/src/Core/NumTraits.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/PermutationMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/PermutationMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/PlainObjectBase.h
|
../../extern/Eigen3/Eigen/src/Core/PlainObjectBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Product.h
|
../../extern/Eigen3/Eigen/src/Core/Product.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/ProductBase.h
|
../../extern/Eigen3/Eigen/src/Core/ProductBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Random.h
|
../../extern/Eigen3/Eigen/src/Core/Random.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Redux.h
|
../../extern/Eigen3/Eigen/src/Core/Redux.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Replicate.h
|
../../extern/Eigen3/Eigen/src/Core/Replicate.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/ReturnByValue.h
|
../../extern/Eigen3/Eigen/src/Core/ReturnByValue.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Reverse.h
|
../../extern/Eigen3/Eigen/src/Core/Reverse.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Select.h
|
../../extern/Eigen3/Eigen/src/Core/Select.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/SelfAdjointView.h
|
../../extern/Eigen3/Eigen/src/Core/SelfAdjointView.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
|
../../extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/SolveTriangular.h
|
../../extern/Eigen3/Eigen/src/Core/SolveTriangular.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/StableNorm.h
|
../../extern/Eigen3/Eigen/src/Core/StableNorm.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Stride.h
|
../../extern/Eigen3/Eigen/src/Core/Stride.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Swap.h
|
../../extern/Eigen3/Eigen/src/Core/Swap.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Transpose.h
|
../../extern/Eigen3/Eigen/src/Core/Transpose.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Transpositions.h
|
../../extern/Eigen3/Eigen/src/Core/Transpositions.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/TriangularMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/TriangularMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/VectorBlock.h
|
../../extern/Eigen3/Eigen/src/Core/VectorBlock.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/VectorwiseOp.h
|
../../extern/Eigen3/Eigen/src/Core/VectorwiseOp.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/Visitor.h
|
../../extern/Eigen3/Eigen/src/Core/Visitor.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
|
../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
|
../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h
|
../../extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h
|
../../extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
|
../../extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h
|
../../extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
|
../../extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
|
../../extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
|
../../extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/Parallelizer.h
|
../../extern/Eigen3/Eigen/src/Core/products/Parallelizer.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
|
../../extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h
|
../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/BlasUtil.h
|
../../extern/Eigen3/Eigen/src/Core/util/BlasUtil.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/Constants.h
|
../../extern/Eigen3/Eigen/src/Core/util/Constants.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
|
../../extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h
|
../../extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/Macros.h
|
../../extern/Eigen3/Eigen/src/Core/util/Macros.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/Memory.h
|
../../extern/Eigen3/Eigen/src/Core/util/Memory.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/Meta.h
|
../../extern/Eigen3/Eigen/src/Core/util/Meta.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/MKL_support.h
|
../../extern/Eigen3/Eigen/src/Core/util/MKL_support.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/NonMPL2.h
|
../../extern/Eigen3/Eigen/src/Core/util/NonMPL2.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
|
../../extern/Eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/StaticAssert.h
|
../../extern/Eigen3/Eigen/src/Core/util/StaticAssert.h
|
||||||
../../extern/Eigen3/Eigen/src/Core/util/XprHelper.h
|
../../extern/Eigen3/Eigen/src/Core/util/XprHelper.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Block.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Block.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/LU.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/LU.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Macros.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Macros.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Memory.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Memory.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Meta.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Meta.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Minor.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Minor.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/QR.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/QR.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/SVD.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/SVD.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
|
../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
|
../../extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/AlignedBox.h
|
../../extern/Eigen3/Eigen/src/Geometry/AlignedBox.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/AngleAxis.h
|
../../extern/Eigen3/Eigen/src/Geometry/AngleAxis.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/EulerAngles.h
|
../../extern/Eigen3/Eigen/src/Geometry/EulerAngles.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Homogeneous.h
|
../../extern/Eigen3/Eigen/src/Geometry/Homogeneous.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Hyperplane.h
|
../../extern/Eigen3/Eigen/src/Geometry/Hyperplane.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h
|
../../extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h
|
../../extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Quaternion.h
|
../../extern/Eigen3/Eigen/src/Geometry/Quaternion.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Rotation2D.h
|
../../extern/Eigen3/Eigen/src/Geometry/Rotation2D.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/RotationBase.h
|
../../extern/Eigen3/Eigen/src/Geometry/RotationBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Scaling.h
|
../../extern/Eigen3/Eigen/src/Geometry/Scaling.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Transform.h
|
../../extern/Eigen3/Eigen/src/Geometry/Transform.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Translation.h
|
../../extern/Eigen3/Eigen/src/Geometry/Translation.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/Umeyama.h
|
../../extern/Eigen3/Eigen/src/Geometry/Umeyama.h
|
||||||
../../extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
|
../../extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
|
||||||
../../extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h
|
../../extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h
|
||||||
../../extern/Eigen3/Eigen/src/Householder/Householder.h
|
../../extern/Eigen3/Eigen/src/Householder/Householder.h
|
||||||
../../extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h
|
../../extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h
|
||||||
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h
|
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h
|
||||||
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h
|
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h
|
||||||
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h
|
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h
|
||||||
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h
|
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h
|
||||||
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h
|
../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h
|
||||||
../../extern/Eigen3/Eigen/src/Jacobi/Jacobi.h
|
../../extern/Eigen3/Eigen/src/Jacobi/Jacobi.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/Determinant.h
|
../../extern/Eigen3/Eigen/src/LU/Determinant.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/FullPivLU.h
|
../../extern/Eigen3/Eigen/src/LU/FullPivLU.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/Inverse.h
|
../../extern/Eigen3/Eigen/src/LU/Inverse.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/PartialPivLU.h
|
../../extern/Eigen3/Eigen/src/LU/PartialPivLU.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/PartialPivLU_MKL.h
|
../../extern/Eigen3/Eigen/src/LU/PartialPivLU_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h
|
../../extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h
|
||||||
../../extern/Eigen3/Eigen/src/misc/blas.h
|
../../extern/Eigen3/Eigen/src/misc/blas.h
|
||||||
../../extern/Eigen3/Eigen/src/misc/Image.h
|
../../extern/Eigen3/Eigen/src/misc/Image.h
|
||||||
../../extern/Eigen3/Eigen/src/misc/Kernel.h
|
../../extern/Eigen3/Eigen/src/misc/Kernel.h
|
||||||
../../extern/Eigen3/Eigen/src/misc/Solve.h
|
../../extern/Eigen3/Eigen/src/misc/Solve.h
|
||||||
../../extern/Eigen3/Eigen/src/misc/SparseSolve.h
|
../../extern/Eigen3/Eigen/src/misc/SparseSolve.h
|
||||||
../../extern/Eigen3/Eigen/src/OrderingMethods/Amd.h
|
../../extern/Eigen3/Eigen/src/OrderingMethods/Amd.h
|
||||||
../../extern/Eigen3/Eigen/src/PardisoSupport/PardisoSupport.h
|
../../extern/Eigen3/Eigen/src/PardisoSupport/PardisoSupport.h
|
||||||
../../extern/Eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h
|
../../extern/Eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/BlockMethods.h
|
../../extern/Eigen3/Eigen/src/plugins/BlockMethods.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
|
../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
|
||||||
../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h
|
../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h
|
||||||
../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
|
../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h
|
../../extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h
|
||||||
../../extern/Eigen3/Eigen/src/QR/HouseholderQR.h
|
../../extern/Eigen3/Eigen/src/QR/HouseholderQR.h
|
||||||
../../extern/Eigen3/Eigen/src/QR/HouseholderQR_MKL.h
|
../../extern/Eigen3/Eigen/src/QR/HouseholderQR_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h
|
../../extern/Eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/AmbiVector.h
|
../../extern/Eigen3/Eigen/src/SparseCore/AmbiVector.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/CompressedStorage.h
|
../../extern/Eigen3/Eigen/src/SparseCore/CompressedStorage.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h
|
../../extern/Eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/CoreIterators.h
|
../../extern/Eigen3/Eigen/src/SparseCore/CoreIterators.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h
|
../../extern/Eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseAssign.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseAssign.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseBlock.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseBlock.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseDenseProduct.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseDenseProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseDot.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseDot.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseFuzzy.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseFuzzy.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrix.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrix.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrixBase.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrixBase.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparsePermutation.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparsePermutation.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseProduct.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseProduct.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseRedux.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseRedux.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseTranspose.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseTranspose.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseTriangularView.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseTriangularView.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseUtil.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseUtil.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseVector.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseVector.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/SparseView.h
|
../../extern/Eigen3/Eigen/src/SparseCore/SparseView.h
|
||||||
../../extern/Eigen3/Eigen/src/SparseCore/TriangularSolver.h
|
../../extern/Eigen3/Eigen/src/SparseCore/TriangularSolver.h
|
||||||
../../extern/Eigen3/Eigen/src/StlSupport/details.h
|
../../extern/Eigen3/Eigen/src/StlSupport/details.h
|
||||||
../../extern/Eigen3/Eigen/src/StlSupport/StdDeque.h
|
../../extern/Eigen3/Eigen/src/StlSupport/StdDeque.h
|
||||||
../../extern/Eigen3/Eigen/src/StlSupport/StdList.h
|
../../extern/Eigen3/Eigen/src/StlSupport/StdList.h
|
||||||
../../extern/Eigen3/Eigen/src/StlSupport/StdVector.h
|
../../extern/Eigen3/Eigen/src/StlSupport/StdVector.h
|
||||||
../../extern/Eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h
|
../../extern/Eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h
|
||||||
../../extern/Eigen3/Eigen/src/SVD/JacobiSVD.h
|
../../extern/Eigen3/Eigen/src/SVD/JacobiSVD.h
|
||||||
../../extern/Eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
|
../../extern/Eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
|
||||||
../../extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h
|
../../extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h
|
||||||
../../extern/Eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h
|
../../extern/Eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
Armature.cpp
|
Armature.cpp
|
||||||
Cache.cpp
|
Cache.cpp
|
||||||
ConstraintSet.cpp
|
ConstraintSet.cpp
|
||||||
ControlledObject.cpp
|
ControlledObject.cpp
|
||||||
CopyPose.cpp
|
CopyPose.cpp
|
||||||
Distance.cpp
|
Distance.cpp
|
||||||
FixedObject.cpp
|
FixedObject.cpp
|
||||||
MovingFrame.cpp
|
MovingFrame.cpp
|
||||||
Scene.cpp
|
Scene.cpp
|
||||||
UncontrolledObject.cpp
|
UncontrolledObject.cpp
|
||||||
WDLSSolver.cpp
|
WDLSSolver.cpp
|
||||||
WSDLSSolver.cpp
|
WSDLSSolver.cpp
|
||||||
WorldObject.cpp
|
WorldObject.cpp
|
||||||
eigen_types.cpp
|
eigen_types.cpp
|
||||||
ublas_types.hpp
|
ublas_types.hpp
|
||||||
|
|
||||||
kdl/chain.cpp
|
kdl/chain.cpp
|
||||||
kdl/chainfksolverpos_recursive.cpp
|
kdl/chainfksolverpos_recursive.cpp
|
||||||
kdl/chainjnttojacsolver.cpp
|
kdl/chainjnttojacsolver.cpp
|
||||||
kdl/frameacc.cpp
|
kdl/frameacc.cpp
|
||||||
kdl/frames.cpp
|
kdl/frames.cpp
|
||||||
kdl/frames_io.cpp
|
kdl/frames_io.cpp
|
||||||
kdl/framevel.cpp
|
kdl/framevel.cpp
|
||||||
kdl/inertia.cpp
|
kdl/inertia.cpp
|
||||||
kdl/jacobian.cpp
|
kdl/jacobian.cpp
|
||||||
kdl/jntarray.cpp
|
kdl/jntarray.cpp
|
||||||
kdl/jntarrayacc.cpp
|
kdl/jntarrayacc.cpp
|
||||||
kdl/jntarrayvel.cpp
|
kdl/jntarrayvel.cpp
|
||||||
kdl/joint.cpp
|
kdl/joint.cpp
|
||||||
kdl/kinfam_io.cpp
|
kdl/kinfam_io.cpp
|
||||||
kdl/segment.cpp
|
kdl/segment.cpp
|
||||||
kdl/tree.cpp
|
kdl/tree.cpp
|
||||||
kdl/treefksolverpos_recursive.cpp
|
kdl/treefksolverpos_recursive.cpp
|
||||||
kdl/treejnttojacsolver.cpp
|
kdl/treejnttojacsolver.cpp
|
||||||
kdl/utilities/error_stack.cpp
|
kdl/utilities/error_stack.cpp
|
||||||
kdl/utilities/utility.cpp
|
kdl/utilities/utility.cpp
|
||||||
kdl/utilities/utility_io.cpp
|
kdl/utilities/utility_io.cpp
|
||||||
|
|
||||||
Armature.hpp
|
Armature.hpp
|
||||||
Cache.hpp
|
Cache.hpp
|
||||||
ConstraintSet.hpp
|
ConstraintSet.hpp
|
||||||
ControlledObject.hpp
|
ControlledObject.hpp
|
||||||
CopyPose.hpp
|
CopyPose.hpp
|
||||||
Distance.hpp
|
Distance.hpp
|
||||||
FixedObject.hpp
|
FixedObject.hpp
|
||||||
MovingFrame.hpp
|
MovingFrame.hpp
|
||||||
Object.hpp
|
Object.hpp
|
||||||
Scene.hpp
|
Scene.hpp
|
||||||
Solver.hpp
|
Solver.hpp
|
||||||
UncontrolledObject.hpp
|
UncontrolledObject.hpp
|
||||||
WDLSSolver.hpp
|
WDLSSolver.hpp
|
||||||
WSDLSSolver.hpp
|
WSDLSSolver.hpp
|
||||||
WorldObject.hpp
|
WorldObject.hpp
|
||||||
eigen_types.hpp
|
eigen_types.hpp
|
||||||
kdl/chain.hpp
|
kdl/chain.hpp
|
||||||
kdl/chainfksolver.hpp
|
kdl/chainfksolver.hpp
|
||||||
kdl/chainfksolverpos_recursive.hpp
|
kdl/chainfksolverpos_recursive.hpp
|
||||||
kdl/chainjnttojacsolver.hpp
|
kdl/chainjnttojacsolver.hpp
|
||||||
kdl/frameacc.hpp
|
kdl/frameacc.hpp
|
||||||
kdl/frames.hpp
|
kdl/frames.hpp
|
||||||
kdl/frames_io.hpp
|
kdl/frames_io.hpp
|
||||||
kdl/framevel.hpp
|
kdl/framevel.hpp
|
||||||
kdl/inertia.hpp
|
kdl/inertia.hpp
|
||||||
kdl/jacobian.hpp
|
kdl/jacobian.hpp
|
||||||
kdl/jntarray.hpp
|
kdl/jntarray.hpp
|
||||||
kdl/jntarrayacc.hpp
|
kdl/jntarrayacc.hpp
|
||||||
kdl/jntarrayvel.hpp
|
kdl/jntarrayvel.hpp
|
||||||
kdl/joint.hpp
|
kdl/joint.hpp
|
||||||
kdl/kinfam_io.hpp
|
kdl/kinfam_io.hpp
|
||||||
kdl/segment.hpp
|
kdl/segment.hpp
|
||||||
kdl/tree.hpp
|
kdl/tree.hpp
|
||||||
kdl/treefksolver.hpp
|
kdl/treefksolver.hpp
|
||||||
kdl/treefksolverpos_recursive.hpp
|
kdl/treefksolverpos_recursive.hpp
|
||||||
kdl/treejnttojacsolver.hpp
|
kdl/treejnttojacsolver.hpp
|
||||||
kdl/utilities/error.h
|
kdl/utilities/error.h
|
||||||
kdl/utilities/error_stack.h
|
kdl/utilities/error_stack.h
|
||||||
kdl/utilities/kdl-config.h
|
kdl/utilities/kdl-config.h
|
||||||
kdl/utilities/rall1d.h
|
kdl/utilities/rall1d.h
|
||||||
kdl/utilities/rall2d.h
|
kdl/utilities/rall2d.h
|
||||||
kdl/utilities/svd_eigen_HH.hpp
|
kdl/utilities/svd_eigen_HH.hpp
|
||||||
kdl/utilities/traits.h
|
kdl/utilities/traits.h
|
||||||
kdl/utilities/utility.h
|
kdl/utilities/utility.h
|
||||||
kdl/utilities/utility_io.h
|
kdl/utilities/utility_io.h
|
||||||
|
|
||||||
kdl/frameacc.inl
|
kdl/frameacc.inl
|
||||||
kdl/frames.inl
|
kdl/frames.inl
|
||||||
kdl/framevel.inl
|
kdl/framevel.inl
|
||||||
|
|
||||||
${EIGEN3_HEADERS}
|
${EIGEN3_HEADERS}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
@@ -23,14 +23,14 @@
|
|||||||
# in that script too
|
# in that script too
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
libmv-capi.h
|
libmv-capi.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
@@ -38,207 +38,207 @@ set(LIB
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_LIBMV)
|
if(WITH_LIBMV)
|
||||||
add_definitions(${GFLAGS_DEFINES})
|
add_definitions(${GFLAGS_DEFINES})
|
||||||
add_definitions(${GLOG_DEFINES})
|
add_definitions(${GLOG_DEFINES})
|
||||||
add_definitions(${CERES_DEFINES})
|
add_definitions(${CERES_DEFINES})
|
||||||
add_definitions(-DLIBMV_GFLAGS_NAMESPACE=${GFLAGS_NAMESPACE})
|
add_definitions(-DLIBMV_GFLAGS_NAMESPACE=${GFLAGS_NAMESPACE})
|
||||||
|
|
||||||
list(APPEND INC
|
list(APPEND INC
|
||||||
${GFLAGS_INCLUDE_DIRS}
|
${GFLAGS_INCLUDE_DIRS}
|
||||||
${GLOG_INCLUDE_DIRS}
|
${GLOG_INCLUDE_DIRS}
|
||||||
../../extern/ceres/include
|
../../extern/ceres/include
|
||||||
../../extern/ceres/config
|
../../extern/ceres/config
|
||||||
../guardedalloc
|
../guardedalloc
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND INC_SYS
|
list(APPEND INC_SYS
|
||||||
${EIGEN3_INCLUDE_DIRS}
|
${EIGEN3_INCLUDE_DIRS}
|
||||||
${PNG_INCLUDE_DIRS}
|
${PNG_INCLUDE_DIRS}
|
||||||
${ZLIB_INCLUDE_DIRS}
|
${ZLIB_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND LIB
|
list(APPEND LIB
|
||||||
extern_ceres
|
extern_ceres
|
||||||
extern_glog
|
extern_glog
|
||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DWITH_LIBMV_GUARDED_ALLOC
|
-DWITH_LIBMV_GUARDED_ALLOC
|
||||||
-DLIBMV_NO_FAST_DETECTOR=
|
-DLIBMV_NO_FAST_DETECTOR=
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
intern/autotrack.cc
|
intern/autotrack.cc
|
||||||
intern/camera_intrinsics.cc
|
intern/camera_intrinsics.cc
|
||||||
intern/detector.cc
|
intern/detector.cc
|
||||||
intern/frame_accessor.cc
|
intern/frame_accessor.cc
|
||||||
intern/homography.cc
|
intern/homography.cc
|
||||||
intern/image.cc
|
intern/image.cc
|
||||||
intern/logging.cc
|
intern/logging.cc
|
||||||
intern/reconstruction.cc
|
intern/reconstruction.cc
|
||||||
intern/track_region.cc
|
intern/track_region.cc
|
||||||
intern/tracks.cc
|
intern/tracks.cc
|
||||||
intern/tracksN.cc
|
intern/tracksN.cc
|
||||||
libmv/autotrack/autotrack.cc
|
libmv/autotrack/autotrack.cc
|
||||||
libmv/autotrack/predict_tracks.cc
|
libmv/autotrack/predict_tracks.cc
|
||||||
libmv/autotrack/tracks.cc
|
libmv/autotrack/tracks.cc
|
||||||
libmv/base/aligned_malloc.cc
|
libmv/base/aligned_malloc.cc
|
||||||
libmv/image/array_nd.cc
|
libmv/image/array_nd.cc
|
||||||
libmv/image/convolve.cc
|
libmv/image/convolve.cc
|
||||||
libmv/multiview/conditioning.cc
|
libmv/multiview/conditioning.cc
|
||||||
libmv/multiview/euclidean_resection.cc
|
libmv/multiview/euclidean_resection.cc
|
||||||
libmv/multiview/fundamental.cc
|
libmv/multiview/fundamental.cc
|
||||||
libmv/multiview/homography.cc
|
libmv/multiview/homography.cc
|
||||||
libmv/multiview/panography.cc
|
libmv/multiview/panography.cc
|
||||||
libmv/multiview/panography_kernel.cc
|
libmv/multiview/panography_kernel.cc
|
||||||
libmv/multiview/projection.cc
|
libmv/multiview/projection.cc
|
||||||
libmv/multiview/triangulation.cc
|
libmv/multiview/triangulation.cc
|
||||||
libmv/numeric/numeric.cc
|
libmv/numeric/numeric.cc
|
||||||
libmv/numeric/poly.cc
|
libmv/numeric/poly.cc
|
||||||
libmv/simple_pipeline/bundle.cc
|
libmv/simple_pipeline/bundle.cc
|
||||||
libmv/simple_pipeline/camera_intrinsics.cc
|
libmv/simple_pipeline/camera_intrinsics.cc
|
||||||
libmv/simple_pipeline/detect.cc
|
libmv/simple_pipeline/detect.cc
|
||||||
libmv/simple_pipeline/distortion_models.cc
|
libmv/simple_pipeline/distortion_models.cc
|
||||||
libmv/simple_pipeline/initialize_reconstruction.cc
|
libmv/simple_pipeline/initialize_reconstruction.cc
|
||||||
libmv/simple_pipeline/intersect.cc
|
libmv/simple_pipeline/intersect.cc
|
||||||
libmv/simple_pipeline/keyframe_selection.cc
|
libmv/simple_pipeline/keyframe_selection.cc
|
||||||
libmv/simple_pipeline/modal_solver.cc
|
libmv/simple_pipeline/modal_solver.cc
|
||||||
libmv/simple_pipeline/pipeline.cc
|
libmv/simple_pipeline/pipeline.cc
|
||||||
libmv/simple_pipeline/reconstruction.cc
|
libmv/simple_pipeline/reconstruction.cc
|
||||||
libmv/simple_pipeline/reconstruction_scale.cc
|
libmv/simple_pipeline/reconstruction_scale.cc
|
||||||
libmv/simple_pipeline/resect.cc
|
libmv/simple_pipeline/resect.cc
|
||||||
libmv/simple_pipeline/tracks.cc
|
libmv/simple_pipeline/tracks.cc
|
||||||
libmv/tracking/brute_region_tracker.cc
|
libmv/tracking/brute_region_tracker.cc
|
||||||
libmv/tracking/hybrid_region_tracker.cc
|
libmv/tracking/hybrid_region_tracker.cc
|
||||||
libmv/tracking/klt_region_tracker.cc
|
libmv/tracking/klt_region_tracker.cc
|
||||||
libmv/tracking/pyramid_region_tracker.cc
|
libmv/tracking/pyramid_region_tracker.cc
|
||||||
libmv/tracking/retrack_region_tracker.cc
|
libmv/tracking/retrack_region_tracker.cc
|
||||||
libmv/tracking/track_region.cc
|
libmv/tracking/track_region.cc
|
||||||
libmv/tracking/trklt_region_tracker.cc
|
libmv/tracking/trklt_region_tracker.cc
|
||||||
|
|
||||||
|
|
||||||
intern/autotrack.h
|
intern/autotrack.h
|
||||||
intern/camera_intrinsics.h
|
intern/camera_intrinsics.h
|
||||||
intern/detector.h
|
intern/detector.h
|
||||||
intern/frame_accessor.h
|
intern/frame_accessor.h
|
||||||
intern/homography.h
|
intern/homography.h
|
||||||
intern/image.h
|
intern/image.h
|
||||||
intern/logging.h
|
intern/logging.h
|
||||||
intern/reconstruction.h
|
intern/reconstruction.h
|
||||||
intern/track_region.h
|
intern/track_region.h
|
||||||
intern/tracks.h
|
intern/tracks.h
|
||||||
intern/tracksN.h
|
intern/tracksN.h
|
||||||
libmv/autotrack/autotrack.h
|
libmv/autotrack/autotrack.h
|
||||||
libmv/autotrack/callbacks.h
|
libmv/autotrack/callbacks.h
|
||||||
libmv/autotrack/frame_accessor.h
|
libmv/autotrack/frame_accessor.h
|
||||||
libmv/autotrack/marker.h
|
libmv/autotrack/marker.h
|
||||||
libmv/autotrack/model.h
|
libmv/autotrack/model.h
|
||||||
libmv/autotrack/predict_tracks.h
|
libmv/autotrack/predict_tracks.h
|
||||||
libmv/autotrack/quad.h
|
libmv/autotrack/quad.h
|
||||||
libmv/autotrack/reconstruction.h
|
libmv/autotrack/reconstruction.h
|
||||||
libmv/autotrack/region.h
|
libmv/autotrack/region.h
|
||||||
libmv/autotrack/tracks.h
|
libmv/autotrack/tracks.h
|
||||||
libmv/base/aligned_malloc.h
|
libmv/base/aligned_malloc.h
|
||||||
libmv/base/id_generator.h
|
libmv/base/id_generator.h
|
||||||
libmv/base/scoped_ptr.h
|
libmv/base/scoped_ptr.h
|
||||||
libmv/base/vector.h
|
libmv/base/vector.h
|
||||||
libmv/base/vector_utils.h
|
libmv/base/vector_utils.h
|
||||||
libmv/image/array_nd.h
|
libmv/image/array_nd.h
|
||||||
libmv/image/convolve.h
|
libmv/image/convolve.h
|
||||||
libmv/image/correlation.h
|
libmv/image/correlation.h
|
||||||
libmv/image/image_converter.h
|
libmv/image/image_converter.h
|
||||||
libmv/image/image_drawing.h
|
libmv/image/image_drawing.h
|
||||||
libmv/image/image.h
|
libmv/image/image.h
|
||||||
libmv/image/sample.h
|
libmv/image/sample.h
|
||||||
libmv/image/tuple.h
|
libmv/image/tuple.h
|
||||||
libmv/logging/logging.h
|
libmv/logging/logging.h
|
||||||
libmv/multiview/conditioning.h
|
libmv/multiview/conditioning.h
|
||||||
libmv/multiview/euclidean_resection.h
|
libmv/multiview/euclidean_resection.h
|
||||||
libmv/multiview/fundamental.h
|
libmv/multiview/fundamental.h
|
||||||
libmv/multiview/homography_error.h
|
libmv/multiview/homography_error.h
|
||||||
libmv/multiview/homography.h
|
libmv/multiview/homography.h
|
||||||
libmv/multiview/homography_parameterization.h
|
libmv/multiview/homography_parameterization.h
|
||||||
libmv/multiview/nviewtriangulation.h
|
libmv/multiview/nviewtriangulation.h
|
||||||
libmv/multiview/panography.h
|
libmv/multiview/panography.h
|
||||||
libmv/multiview/panography_kernel.h
|
libmv/multiview/panography_kernel.h
|
||||||
libmv/multiview/projection.h
|
libmv/multiview/projection.h
|
||||||
libmv/multiview/resection.h
|
libmv/multiview/resection.h
|
||||||
libmv/multiview/triangulation.h
|
libmv/multiview/triangulation.h
|
||||||
libmv/multiview/two_view_kernel.h
|
libmv/multiview/two_view_kernel.h
|
||||||
libmv/numeric/dogleg.h
|
libmv/numeric/dogleg.h
|
||||||
libmv/numeric/function_derivative.h
|
libmv/numeric/function_derivative.h
|
||||||
libmv/numeric/levenberg_marquardt.h
|
libmv/numeric/levenberg_marquardt.h
|
||||||
libmv/numeric/numeric.h
|
libmv/numeric/numeric.h
|
||||||
libmv/numeric/poly.h
|
libmv/numeric/poly.h
|
||||||
libmv/simple_pipeline/bundle.h
|
libmv/simple_pipeline/bundle.h
|
||||||
libmv/simple_pipeline/callbacks.h
|
libmv/simple_pipeline/callbacks.h
|
||||||
libmv/simple_pipeline/camera_intrinsics.h
|
libmv/simple_pipeline/camera_intrinsics.h
|
||||||
libmv/simple_pipeline/camera_intrinsics_impl.h
|
libmv/simple_pipeline/camera_intrinsics_impl.h
|
||||||
libmv/simple_pipeline/detect.h
|
libmv/simple_pipeline/detect.h
|
||||||
libmv/simple_pipeline/distortion_models.h
|
libmv/simple_pipeline/distortion_models.h
|
||||||
libmv/simple_pipeline/initialize_reconstruction.h
|
libmv/simple_pipeline/initialize_reconstruction.h
|
||||||
libmv/simple_pipeline/intersect.h
|
libmv/simple_pipeline/intersect.h
|
||||||
libmv/simple_pipeline/keyframe_selection.h
|
libmv/simple_pipeline/keyframe_selection.h
|
||||||
libmv/simple_pipeline/modal_solver.h
|
libmv/simple_pipeline/modal_solver.h
|
||||||
libmv/simple_pipeline/pipeline.h
|
libmv/simple_pipeline/pipeline.h
|
||||||
libmv/simple_pipeline/reconstruction.h
|
libmv/simple_pipeline/reconstruction.h
|
||||||
libmv/simple_pipeline/reconstruction_scale.h
|
libmv/simple_pipeline/reconstruction_scale.h
|
||||||
libmv/simple_pipeline/resect.h
|
libmv/simple_pipeline/resect.h
|
||||||
libmv/simple_pipeline/tracks.h
|
libmv/simple_pipeline/tracks.h
|
||||||
libmv/tracking/brute_region_tracker.h
|
libmv/tracking/brute_region_tracker.h
|
||||||
libmv/tracking/hybrid_region_tracker.h
|
libmv/tracking/hybrid_region_tracker.h
|
||||||
libmv/tracking/kalman_filter.h
|
libmv/tracking/kalman_filter.h
|
||||||
libmv/tracking/klt_region_tracker.h
|
libmv/tracking/klt_region_tracker.h
|
||||||
libmv/tracking/pyramid_region_tracker.h
|
libmv/tracking/pyramid_region_tracker.h
|
||||||
libmv/tracking/region_tracker.h
|
libmv/tracking/region_tracker.h
|
||||||
libmv/tracking/retrack_region_tracker.h
|
libmv/tracking/retrack_region_tracker.h
|
||||||
libmv/tracking/track_region.h
|
libmv/tracking/track_region.h
|
||||||
libmv/tracking/trklt_region_tracker.h
|
libmv/tracking/trklt_region_tracker.h
|
||||||
|
|
||||||
third_party/msinttypes/inttypes.h
|
third_party/msinttypes/inttypes.h
|
||||||
third_party/msinttypes/stdint.h
|
third_party/msinttypes/stdint.h
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
if(WITH_GTESTS)
|
if(WITH_GTESTS)
|
||||||
blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "" "" "")
|
blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "" "" "")
|
||||||
|
|
||||||
BLENDER_SRC_GTEST("libmv_predict_tracks" "./libmv/autotrack/predict_tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_predict_tracks" "./libmv/autotrack/predict_tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_tracks" "./libmv/autotrack/tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_tracks" "./libmv/autotrack/tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_scoped_ptr" "./libmv/base/scoped_ptr_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_scoped_ptr" "./libmv/base/scoped_ptr_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_vector" "./libmv/base/vector_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_vector" "./libmv/base/vector_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_array_nd" "./libmv/image/array_nd_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_array_nd" "./libmv/image/array_nd_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_convolve" "./libmv/image/convolve_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_convolve" "./libmv/image/convolve_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_image" "./libmv/image/image_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_image" "./libmv/image/image_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_sample" "./libmv/image/sample_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_sample" "./libmv/image/sample_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_tuple" "./libmv/image/tuple_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_tuple" "./libmv/image/tuple_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_euclidean_resection" "./libmv/multiview/euclidean_resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_euclidean_resection" "./libmv/multiview/euclidean_resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_fundamental" "./libmv/multiview/fundamental_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_fundamental" "./libmv/multiview/fundamental_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_homography" "./libmv/multiview/homography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_homography" "./libmv/multiview/homography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_nviewtriangulation" "./libmv/multiview/nviewtriangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_nviewtriangulation" "./libmv/multiview/nviewtriangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_panography" "./libmv/multiview/panography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_panography" "./libmv/multiview/panography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_projection" "./libmv/multiview/projection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_projection" "./libmv/multiview/projection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_resection" "./libmv/multiview/resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_resection" "./libmv/multiview/resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_triangulation" "./libmv/multiview/triangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_triangulation" "./libmv/multiview/triangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_dogleg" "./libmv/numeric/dogleg_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_dogleg" "./libmv/numeric/dogleg_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_function_derivative" "./libmv/numeric/function_derivative_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_function_derivative" "./libmv/numeric/function_derivative_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_levenberg_marquardt" "./libmv/numeric/levenberg_marquardt_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_levenberg_marquardt" "./libmv/numeric/levenberg_marquardt_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_numeric" "./libmv/numeric/numeric_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_numeric" "./libmv/numeric/numeric_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_poly" "./libmv/numeric/poly_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_poly" "./libmv/numeric/poly_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_camera_intrinsics" "./libmv/simple_pipeline/camera_intrinsics_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_camera_intrinsics" "./libmv/simple_pipeline/camera_intrinsics_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_detect" "./libmv/simple_pipeline/detect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_detect" "./libmv/simple_pipeline/detect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_intersect" "./libmv/simple_pipeline/intersect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_intersect" "./libmv/simple_pipeline/intersect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_keyframe_selection" "./libmv/simple_pipeline/keyframe_selection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_keyframe_selection" "./libmv/simple_pipeline/keyframe_selection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_modal_solver" "./libmv/simple_pipeline/modal_solver_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_modal_solver" "./libmv/simple_pipeline/modal_solver_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_resect" "./libmv/simple_pipeline/resect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_resect" "./libmv/simple_pipeline/resect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_brute_region_tracker" "./libmv/tracking/brute_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_brute_region_tracker" "./libmv/tracking/brute_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_klt_region_tracker" "./libmv/tracking/klt_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_klt_region_tracker" "./libmv/tracking/klt_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
BLENDER_SRC_GTEST("libmv_pyramid_region_tracker" "./libmv/tracking/pyramid_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
BLENDER_SRC_GTEST("libmv_pyramid_region_tracker" "./libmv/tracking/pyramid_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
intern/stub.cc
|
intern/stub.cc
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(bf_intern_libmv "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib(bf_intern_libmv "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
@@ -102,14 +102,14 @@ cat > CMakeLists.txt << EOF
|
|||||||
# in that script too
|
# in that script too
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
.
|
.
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
libmv-capi.h
|
libmv-capi.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
@@ -117,76 +117,76 @@ set(LIB
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_LIBMV)
|
if(WITH_LIBMV)
|
||||||
add_definitions(\${GFLAGS_DEFINES})
|
add_definitions(\${GFLAGS_DEFINES})
|
||||||
add_definitions(\${GLOG_DEFINES})
|
add_definitions(\${GLOG_DEFINES})
|
||||||
add_definitions(\${CERES_DEFINES})
|
add_definitions(\${CERES_DEFINES})
|
||||||
add_definitions(-DLIBMV_GFLAGS_NAMESPACE=\${GFLAGS_NAMESPACE})
|
add_definitions(-DLIBMV_GFLAGS_NAMESPACE=\${GFLAGS_NAMESPACE})
|
||||||
|
|
||||||
list(APPEND INC
|
list(APPEND INC
|
||||||
\${GFLAGS_INCLUDE_DIRS}
|
\${GFLAGS_INCLUDE_DIRS}
|
||||||
\${GLOG_INCLUDE_DIRS}
|
\${GLOG_INCLUDE_DIRS}
|
||||||
../../extern/ceres/include
|
../../extern/ceres/include
|
||||||
../../extern/ceres/config
|
../../extern/ceres/config
|
||||||
../guardedalloc
|
../guardedalloc
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND INC_SYS
|
list(APPEND INC_SYS
|
||||||
\${EIGEN3_INCLUDE_DIRS}
|
\${EIGEN3_INCLUDE_DIRS}
|
||||||
\${PNG_INCLUDE_DIRS}
|
\${PNG_INCLUDE_DIRS}
|
||||||
\${ZLIB_INCLUDE_DIRS}
|
\${ZLIB_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND LIB
|
list(APPEND LIB
|
||||||
extern_ceres
|
extern_ceres
|
||||||
extern_glog
|
extern_glog
|
||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DWITH_LIBMV_GUARDED_ALLOC
|
-DWITH_LIBMV_GUARDED_ALLOC
|
||||||
-DLIBMV_NO_FAST_DETECTOR=
|
-DLIBMV_NO_FAST_DETECTOR=
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
intern/autotrack.cc
|
intern/autotrack.cc
|
||||||
intern/camera_intrinsics.cc
|
intern/camera_intrinsics.cc
|
||||||
intern/detector.cc
|
intern/detector.cc
|
||||||
intern/frame_accessor.cc
|
intern/frame_accessor.cc
|
||||||
intern/homography.cc
|
intern/homography.cc
|
||||||
intern/image.cc
|
intern/image.cc
|
||||||
intern/logging.cc
|
intern/logging.cc
|
||||||
intern/reconstruction.cc
|
intern/reconstruction.cc
|
||||||
intern/track_region.cc
|
intern/track_region.cc
|
||||||
intern/tracks.cc
|
intern/tracks.cc
|
||||||
intern/tracksN.cc
|
intern/tracksN.cc
|
||||||
${sources}
|
${sources}
|
||||||
${third_sources}
|
${third_sources}
|
||||||
|
|
||||||
intern/autotrack.h
|
intern/autotrack.h
|
||||||
intern/camera_intrinsics.h
|
intern/camera_intrinsics.h
|
||||||
intern/detector.h
|
intern/detector.h
|
||||||
intern/frame_accessor.h
|
intern/frame_accessor.h
|
||||||
intern/homography.h
|
intern/homography.h
|
||||||
intern/image.h
|
intern/image.h
|
||||||
intern/logging.h
|
intern/logging.h
|
||||||
intern/reconstruction.h
|
intern/reconstruction.h
|
||||||
intern/track_region.h
|
intern/track_region.h
|
||||||
intern/tracks.h
|
intern/tracks.h
|
||||||
intern/tracksN.h
|
intern/tracksN.h
|
||||||
${headers}
|
${headers}
|
||||||
|
|
||||||
${third_headers}
|
${third_headers}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
if(WITH_GTESTS)
|
if(WITH_GTESTS)
|
||||||
blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "${INC}" "${INC_SYS}" "")
|
blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "${INC}" "${INC_SYS}" "")
|
||||||
|
|
||||||
${tests}
|
${tests}
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
list(APPEND SRC
|
list(APPEND SRC
|
||||||
intern/stub.cc
|
intern/stub.cc
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(bf_intern_libmv "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
|
blender_add_lib(bf_intern_libmv "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
include
|
include
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
@@ -25,13 +25,13 @@ set(INC_SYS
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
source/numaapi.c
|
source/numaapi.c
|
||||||
source/numaapi_linux.c
|
source/numaapi_linux.c
|
||||||
source/numaapi_stub.c
|
source/numaapi_stub.c
|
||||||
source/numaapi_win32.c
|
source/numaapi_win32.c
|
||||||
|
|
||||||
include/numaapi.h
|
include/numaapi.h
|
||||||
source/build_config.h
|
source/build_config.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
|
|||||||
@@ -19,62 +19,62 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(INC
|
||||||
intern
|
intern
|
||||||
../memutil
|
../memutil
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
set(INC_SYS
|
||||||
${BULLET_INCLUDE_DIRS}
|
${BULLET_INCLUDE_DIRS}
|
||||||
${PNG_INCLUDE_DIRS}
|
${PNG_INCLUDE_DIRS}
|
||||||
${ZLIB_INCLUDE_DIRS}
|
${ZLIB_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
set(SRC
|
set(SRC
|
||||||
intern/EIGENVALUE_HELPER.cpp
|
intern/EIGENVALUE_HELPER.cpp
|
||||||
intern/FLUID_3D.cpp
|
intern/FLUID_3D.cpp
|
||||||
intern/FLUID_3D_SOLVERS.cpp
|
intern/FLUID_3D_SOLVERS.cpp
|
||||||
intern/FLUID_3D_STATIC.cpp
|
intern/FLUID_3D_STATIC.cpp
|
||||||
intern/LU_HELPER.cpp
|
intern/LU_HELPER.cpp
|
||||||
intern/SPHERE.cpp
|
intern/SPHERE.cpp
|
||||||
intern/WTURBULENCE.cpp
|
intern/WTURBULENCE.cpp
|
||||||
intern/smoke_API.cpp
|
intern/smoke_API.cpp
|
||||||
|
|
||||||
extern/smoke_API.h
|
extern/smoke_API.h
|
||||||
intern/EIGENVALUE_HELPER.h
|
intern/EIGENVALUE_HELPER.h
|
||||||
intern/FFT_NOISE.h
|
intern/FFT_NOISE.h
|
||||||
intern/FLUID_3D.h
|
intern/FLUID_3D.h
|
||||||
intern/IMAGE.h
|
intern/IMAGE.h
|
||||||
intern/INTERPOLATE.h
|
intern/INTERPOLATE.h
|
||||||
intern/LU_HELPER.h
|
intern/LU_HELPER.h
|
||||||
intern/MERSENNETWISTER.h
|
intern/MERSENNETWISTER.h
|
||||||
intern/OBSTACLE.h
|
intern/OBSTACLE.h
|
||||||
intern/SPHERE.h
|
intern/SPHERE.h
|
||||||
intern/VEC3.h
|
intern/VEC3.h
|
||||||
intern/WAVELET_NOISE.h
|
intern/WAVELET_NOISE.h
|
||||||
intern/WTURBULENCE.h
|
intern/WTURBULENCE.h
|
||||||
intern/tnt/jama_eig.h
|
intern/tnt/jama_eig.h
|
||||||
intern/tnt/jama_lu.h
|
intern/tnt/jama_lu.h
|
||||||
intern/tnt/tnt.h
|
intern/tnt/tnt.h
|
||||||
intern/tnt/tnt_array1d.h
|
intern/tnt/tnt_array1d.h
|
||||||
intern/tnt/tnt_array1d_utils.h
|
intern/tnt/tnt_array1d_utils.h
|
||||||
intern/tnt/tnt_array2d.h
|
intern/tnt/tnt_array2d.h
|
||||||
intern/tnt/tnt_array2d_utils.h
|
intern/tnt/tnt_array2d_utils.h
|
||||||
intern/tnt/tnt_array3d.h
|
intern/tnt/tnt_array3d.h
|
||||||
intern/tnt/tnt_array3d_utils.h
|
intern/tnt/tnt_array3d_utils.h
|
||||||
intern/tnt/tnt_cmat.h
|
intern/tnt/tnt_cmat.h
|
||||||
intern/tnt/tnt_fortran_array1d.h
|
intern/tnt/tnt_fortran_array1d.h
|
||||||
intern/tnt/tnt_fortran_array1d_utils.h
|
intern/tnt/tnt_fortran_array1d_utils.h
|
||||||
intern/tnt/tnt_fortran_array2d.h
|
intern/tnt/tnt_fortran_array2d.h
|
||||||
intern/tnt/tnt_fortran_array2d_utils.h
|
intern/tnt/tnt_fortran_array2d_utils.h
|
||||||
intern/tnt/tnt_fortran_array3d.h
|
intern/tnt/tnt_fortran_array3d.h
|
||||||
intern/tnt/tnt_fortran_array3d_utils.h
|
intern/tnt/tnt_fortran_array3d_utils.h
|
||||||
intern/tnt/tnt_i_refvec.h
|
intern/tnt/tnt_i_refvec.h
|
||||||
intern/tnt/tnt_math_utils.h
|
intern/tnt/tnt_math_utils.h
|
||||||
intern/tnt/tnt_sparse_matrix_csr.h
|
intern/tnt/tnt_sparse_matrix_csr.h
|
||||||
intern/tnt/tnt_stopwatch.h
|
intern/tnt/tnt_stopwatch.h
|
||||||
intern/tnt/tnt_subscript.h
|
intern/tnt/tnt_subscript.h
|
||||||
intern/tnt/tnt_vec.h
|
intern/tnt/tnt_vec.h
|
||||||
intern/tnt/tnt_version.h
|
intern/tnt/tnt_version.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(LIB
|
set(LIB
|
||||||
@@ -84,16 +84,16 @@ set(LIB
|
|||||||
add_definitions(-DDDF_DEBUG=0)
|
add_definitions(-DDDF_DEBUG=0)
|
||||||
|
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
add_definitions(-DPARALLEL=1)
|
add_definitions(-DPARALLEL=1)
|
||||||
else()
|
else()
|
||||||
add_definitions(-DPARALLEL=0)
|
add_definitions(-DPARALLEL=0)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_FFTW3)
|
if(WITH_FFTW3)
|
||||||
add_definitions(-DWITH_FFTW3)
|
add_definitions(-DWITH_FFTW3)
|
||||||
list(APPEND INC_SYS
|
list(APPEND INC_SYS
|
||||||
${FFTW3_INCLUDE_DIRS}
|
${FFTW3_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
blender_add_lib(bf_intern_smoke "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
blender_add_lib(bf_intern_smoke "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||||
|
|||||||
@@ -27,10 +27,10 @@ include_directories(${ZLIB_INCLUDE})
|
|||||||
|
|
||||||
#Can manually add the sources using the set command as follows:
|
#Can manually add the sources using the set command as follows:
|
||||||
set(SRC
|
set(SRC
|
||||||
src/BlenderThumb.cpp
|
src/BlenderThumb.cpp
|
||||||
src/BlendThumb.def
|
src/BlendThumb.def
|
||||||
src/BlendThumb.rc
|
src/BlendThumb.rc
|
||||||
src/Dll.cpp
|
src/Dll.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(BlendThumb SHARED ${SRC})
|
add_library(BlendThumb SHARED ${SRC})
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
# Python CTests
|
# Python CTests
|
||||||
if(WITH_BLENDER AND WITH_PYTHON)
|
if(WITH_BLENDER AND WITH_PYTHON)
|
||||||
add_subdirectory(python)
|
add_subdirectory(python)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# GTest
|
# GTest
|
||||||
|
|||||||
@@ -30,19 +30,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
|
|||||||
# ugh, any better way to do this on testing only?
|
# ugh, any better way to do this on testing only?
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
||||||
|
|
||||||
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
||||||
#~ message(FATAL_ERROR "CMake test directory not found!")
|
#~ message(FATAL_ERROR "CMake test directory not found!")
|
||||||
#~ endif()
|
#~ endif()
|
||||||
|
|
||||||
# all calls to blender use this
|
# all calls to blender use this
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
||||||
@@ -53,94 +53,94 @@ endif()
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# GENERAL PYTHON CORRECTNESS TESTS
|
# GENERAL PYTHON CORRECTNESS TESTS
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_load_keymap
|
NAME script_load_keymap
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_keymap_completeness.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_keymap_completeness.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_load_addons
|
NAME script_load_addons
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_addons.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_addons.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_load_modules
|
NAME script_load_modules
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_py_modules.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_py_modules.py
|
||||||
)
|
)
|
||||||
|
|
||||||
# test running operators doesn't segfault under various conditions
|
# test running operators doesn't segfault under various conditions
|
||||||
if(USE_EXPERIMENTAL_TESTS)
|
if(USE_EXPERIMENTAL_TESTS)
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_run_operators
|
NAME script_run_operators
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_run_operators.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_run_operators.py
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# PY API TESTS
|
# PY API TESTS
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_pyapi_bpy_path
|
NAME script_pyapi_bpy_path
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_path.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_path.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_pyapi_bpy_utils_units
|
NAME script_pyapi_bpy_utils_units
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_utils_units.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_utils_units.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_pyapi_mathutils
|
NAME script_pyapi_mathutils
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_mathutils.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_mathutils.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_pyapi_idprop
|
NAME script_pyapi_idprop
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop.py
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_pyapi_idprop_datablock
|
NAME script_pyapi_idprop_datablock
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop_datablock.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop_datablock.py
|
||||||
)
|
)
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# MODELING TESTS
|
# MODELING TESTS
|
||||||
add_test(
|
add_test(
|
||||||
NAME bmesh_bevel
|
NAME bmesh_bevel
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/modeling/bevel_regression.blend
|
${TEST_SRC_DIR}/modeling/bevel_regression.blend
|
||||||
--python-text run_tests
|
--python-text run_tests
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME bmesh_boolean
|
NAME bmesh_boolean
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/modeling/bool_regression.blend
|
${TEST_SRC_DIR}/modeling/bool_regression.blend
|
||||||
--python-text run_tests
|
--python-text run_tests
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME bmesh_split_faces
|
NAME bmesh_split_faces
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/modeling/split_faces_test.blend
|
${TEST_SRC_DIR}/modeling/split_faces_test.blend
|
||||||
--python-text run_tests
|
--python-text run_tests
|
||||||
)
|
)
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# MODIFIERS TESTS
|
# MODIFIERS TESTS
|
||||||
add_test(
|
add_test(
|
||||||
NAME object_modifier_array
|
NAME object_modifier_array
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/modifier_stack/array_test.blend
|
${TEST_SRC_DIR}/modifier_stack/array_test.blend
|
||||||
--python-text run_tests
|
--python-text run_tests
|
||||||
)
|
)
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
@@ -150,67 +150,67 @@ add_test(
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_obj_cube
|
NAME import_obj_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/cube.obj'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/cube.obj'\)
|
||||||
--md5=39cce4bacac2d1b18fc470380279bc15 --md5_method=SCENE
|
--md5=39cce4bacac2d1b18fc470380279bc15 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_obj_cube.blend
|
--write-blend=${TEST_OUT_DIR}/import_obj_cube.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_obj_nurbs_cyclic
|
NAME import_obj_nurbs_cyclic
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/nurbs_cyclic.obj'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/nurbs_cyclic.obj'\)
|
||||||
--md5=ad3c307e5883224a0492378cd32691ab --md5_method=SCENE
|
--md5=ad3c307e5883224a0492378cd32691ab --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_obj_nurbs_cyclic.blend
|
--write-blend=${TEST_OUT_DIR}/import_obj_nurbs_cyclic.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_obj_makehuman
|
NAME import_obj_makehuman
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/makehuman.obj'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/makehuman.obj'\)
|
||||||
--md5=c9f78b185e58358daa4ecaecfa75464e --md5_method=SCENE
|
--md5=c9f78b185e58358daa4ecaecfa75464e --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_obj_makehuman.blend
|
--write-blend=${TEST_OUT_DIR}/import_obj_makehuman.blend
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OBJ Export tests
|
# OBJ Export tests
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_obj_cube
|
NAME export_obj_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_cube.obj',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_cube.obj',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_cube.obj
|
--md5_source=${TEST_OUT_DIR}/export_obj_cube.obj
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_cube.mtl
|
--md5_source=${TEST_OUT_DIR}/export_obj_cube.mtl
|
||||||
--md5=95832f81160f07101dc566cb286a9f76 --md5_method=FILE
|
--md5=95832f81160f07101dc566cb286a9f76 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_obj_nurbs
|
NAME export_obj_nurbs
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_nurbs.obj',use_selection=False,use_nurbs=True\)
|
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_nurbs.obj',use_selection=False,use_nurbs=True\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.obj
|
--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.obj
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.mtl
|
--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.mtl
|
||||||
--md5=a733ae4fa4a591ea9b0912da3af042de --md5_method=FILE
|
--md5=a733ae4fa4a591ea9b0912da3af042de --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_obj_all_objects
|
NAME export_obj_all_objects
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_all_objects.obj',use_selection=False,use_nurbs=True\)
|
--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_all_objects.obj',use_selection=False,use_nurbs=True\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.obj
|
--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.obj
|
||||||
--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.mtl
|
--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.mtl
|
||||||
--md5=04b3ed97cede07a19548fc518ce9f8ca --md5_method=FILE
|
--md5=04b3ed97cede07a19548fc518ce9f8ca --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -218,64 +218,64 @@ endif()
|
|||||||
|
|
||||||
# PLY Import tests
|
# PLY Import tests
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_ply_cube
|
NAME import_ply_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/cube_ascii.ply'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/cube_ascii.ply'\)
|
||||||
--md5=527134343c27fc0ea73115b85fbfd3ac --md5_method=SCENE
|
--md5=527134343c27fc0ea73115b85fbfd3ac --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_ply_cube.blend
|
--write-blend=${TEST_OUT_DIR}/import_ply_cube.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_ply_bunny
|
NAME import_ply_bunny
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/bunny2.ply'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/bunny2.ply'\)
|
||||||
--md5=6ea5b8533400a17accf928b8fd024eaa --md5_method=SCENE
|
--md5=6ea5b8533400a17accf928b8fd024eaa --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_ply_bunny.blend
|
--write-blend=${TEST_OUT_DIR}/import_ply_bunny.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_ply_small_holes
|
NAME import_ply_small_holes
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/many_small_holes.ply'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/many_small_holes.ply'\)
|
||||||
--md5=c3093e26ecae5b6d59fbbcf2a0d0b39f --md5_method=SCENE
|
--md5=c3093e26ecae5b6d59fbbcf2a0d0b39f --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_ply_small_holes.blend
|
--write-blend=${TEST_OUT_DIR}/import_ply_small_holes.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
# PLY Export
|
# PLY Export
|
||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_ply_cube_all_data
|
NAME export_ply_cube_all_data
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_cube_all_data.ply'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_cube_all_data.ply'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_ply_cube_all_data.ply
|
--md5_source=${TEST_OUT_DIR}/export_ply_cube_all_data.ply
|
||||||
--md5=6adc3748ceae8298496f99d0e7e76c15 --md5_method=FILE
|
--md5=6adc3748ceae8298496f99d0e7e76c15 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_ply_suzanne_all_data
|
NAME export_ply_suzanne_all_data
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply
|
--md5_source=${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply
|
||||||
--md5=68ba23f02efd6511bfd093f45f703221 --md5_method=FILE
|
--md5=68ba23f02efd6511bfd093f45f703221 --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_ply_vertices # lame, add a better one
|
NAME export_ply_vertices # lame, add a better one
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_vertices.ply'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_vertices.ply'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_ply_vertices.ply
|
--md5_source=${TEST_OUT_DIR}/export_ply_vertices.ply
|
||||||
--md5=37faba0aa2014451b27f951afa92f870 --md5_method=FILE
|
--md5=37faba0aa2014451b27f951afa92f870 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -283,30 +283,30 @@ add_test(
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_stl_cube
|
NAME import_stl_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/cube.stl'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/cube.stl'\)
|
||||||
--md5=8ceb5bb7e1cb5f4342fa1669988c66b4 --md5_method=SCENE
|
--md5=8ceb5bb7e1cb5f4342fa1669988c66b4 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_stl_cube.blend
|
--write-blend=${TEST_OUT_DIR}/import_stl_cube.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_stl_conrod
|
NAME import_stl_conrod
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/conrod.stl'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/conrod.stl'\)
|
||||||
--md5=690a4b8eb9002dcd8631c5a575ea7348 --md5_method=SCENE
|
--md5=690a4b8eb9002dcd8631c5a575ea7348 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_stl_conrod.blend
|
--write-blend=${TEST_OUT_DIR}/import_stl_conrod.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_stl_knot_max_simplified
|
NAME import_stl_knot_max_simplified
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/knot_max_simplified.stl'\)
|
--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/knot_max_simplified.stl'\)
|
||||||
--md5=baf82803f45a84ec4ddbad9cef57dd3e --md5_method=SCENE
|
--md5=baf82803f45a84ec4ddbad9cef57dd3e --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_stl_knot_max_simplified.blend
|
--write-blend=${TEST_OUT_DIR}/import_stl_knot_max_simplified.blend
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -314,33 +314,33 @@ endif()
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_stl_cube_all_data
|
NAME export_stl_cube_all_data
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_cube_all_data.stl'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_cube_all_data.stl'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_stl_cube_all_data.stl
|
--md5_source=${TEST_OUT_DIR}/export_stl_cube_all_data.stl
|
||||||
--md5=64cb97c0cabb015e1c3f76369835075a --md5_method=FILE
|
--md5=64cb97c0cabb015e1c3f76369835075a --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_stl_suzanne_all_data
|
NAME export_stl_suzanne_all_data
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl
|
--md5_source=${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl
|
||||||
--md5=e9b23c97c139ad64961c635105bb9192 --md5_method=FILE
|
--md5=e9b23c97c139ad64961c635105bb9192 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_stl_vertices # lame, add a better one
|
NAME export_stl_vertices # lame, add a better one
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_vertices.stl'\)
|
--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_vertices.stl'\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_stl_vertices.stl
|
--md5_source=${TEST_OUT_DIR}/export_stl_vertices.stl
|
||||||
--md5=3fd3c877e573beeebc782532cc005820 --md5_method=FILE
|
--md5=3fd3c877e573beeebc782532cc005820 --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -349,61 +349,61 @@ endif()
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_x3d_cube
|
NAME import_x3d_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/color_cube.x3d'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/color_cube.x3d'\)
|
||||||
--md5=3fae9be004199c145941cd3f9f80ad7b --md5_method=SCENE
|
--md5=3fae9be004199c145941cd3f9f80ad7b --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_x3d_cube.blend
|
--write-blend=${TEST_OUT_DIR}/import_x3d_cube.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_x3d_teapot
|
NAME import_x3d_teapot
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/teapot.x3d'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/teapot.x3d'\)
|
||||||
--md5=8ee196c71947dce4199d55698501691e --md5_method=SCENE
|
--md5=8ee196c71947dce4199d55698501691e --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_x3d_teapot.blend
|
--write-blend=${TEST_OUT_DIR}/import_x3d_teapot.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_x3d_suzanne_material
|
NAME import_x3d_suzanne_material
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/suzanne_material.x3d'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/suzanne_material.x3d'\)
|
||||||
--md5=3edea1353257d8b5a5f071942f417be6 --md5_method=SCENE
|
--md5=3edea1353257d8b5a5f071942f417be6 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_x3d_suzanne_material.blend
|
--write-blend=${TEST_OUT_DIR}/import_x3d_suzanne_material.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
# X3D Export
|
# X3D Export
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_x3d_cube
|
NAME export_x3d_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_cube.x3d',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_cube.x3d',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_x3d_cube.x3d
|
--md5_source=${TEST_OUT_DIR}/export_x3d_cube.x3d
|
||||||
--md5=05312d278fe41da33560fdfb9bdb268f --md5_method=FILE
|
--md5=05312d278fe41da33560fdfb9bdb268f --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_x3d_nurbs
|
NAME export_x3d_nurbs
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_nurbs.x3d',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_nurbs.x3d',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_x3d_nurbs.x3d
|
--md5_source=${TEST_OUT_DIR}/export_x3d_nurbs.x3d
|
||||||
--md5=4286d4a2aa507ef78b22ddcbdcc88481 --md5_method=FILE
|
--md5=4286d4a2aa507ef78b22ddcbdcc88481 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_x3d_all_objects
|
NAME export_x3d_all_objects
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_all_objects.x3d',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_all_objects.x3d',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_x3d_all_objects.x3d
|
--md5_source=${TEST_OUT_DIR}/export_x3d_all_objects.x3d
|
||||||
--md5=f5f9fa4c5619a0eeab66685aafd2f7f0 --md5_method=FILE
|
--md5=f5f9fa4c5619a0eeab66685aafd2f7f0 --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -413,30 +413,30 @@ endif()
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_3ds_cube
|
NAME import_3ds_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/cube.3ds'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/cube.3ds'\)
|
||||||
--md5=cb5a45c35a343c3f5beca2a918472951 --md5_method=SCENE
|
--md5=cb5a45c35a343c3f5beca2a918472951 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_3ds_cube.blend
|
--write-blend=${TEST_OUT_DIR}/import_3ds_cube.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_3ds_hierarchy_lara
|
NAME import_3ds_hierarchy_lara
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_lara.3ds'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_lara.3ds'\)
|
||||||
--md5=766c873d9fdb5f190e43796cfbae63b6 --md5_method=SCENE
|
--md5=766c873d9fdb5f190e43796cfbae63b6 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_lara.blend
|
--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_lara.blend
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME import_3ds_hierarchy_greek_trireme
|
NAME import_3ds_hierarchy_greek_trireme
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_greek_trireme.3ds'\)
|
--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_greek_trireme.3ds'\)
|
||||||
--md5=b62ee30101e8999cb91ef4f8a8760056 --md5_method=SCENE
|
--md5=b62ee30101e8999cb91ef4f8a8760056 --md5_method=SCENE
|
||||||
--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_greek_trireme.blend
|
--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_greek_trireme.blend
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -444,33 +444,33 @@ endif()
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_3ds_cube
|
NAME export_3ds_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_cube.3ds',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_cube.3ds',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_3ds_cube.3ds
|
--md5_source=${TEST_OUT_DIR}/export_3ds_cube.3ds
|
||||||
--md5=a31f5071b6c6dc7445b9099cdc7f63b3 --md5_method=FILE
|
--md5=a31f5071b6c6dc7445b9099cdc7f63b3 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_3ds_nurbs
|
NAME export_3ds_nurbs
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_nurbs.3ds',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_nurbs.3ds',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_3ds_nurbs.3ds
|
--md5_source=${TEST_OUT_DIR}/export_3ds_nurbs.3ds
|
||||||
--md5=5bdd21be3c80d814fbc83cb25edb08c2 --md5_method=FILE
|
--md5=5bdd21be3c80d814fbc83cb25edb08c2 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_3ds_all_objects
|
NAME export_3ds_all_objects
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_all_objects.3ds',use_selection=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_all_objects.3ds',use_selection=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_3ds_all_objects.3ds
|
--md5_source=${TEST_OUT_DIR}/export_3ds_all_objects.3ds
|
||||||
--md5=68447761ab0ca38e1e22e7c177ed48a8 --md5_method=FILE
|
--md5=68447761ab0ca38e1e22e7c177ed48a8 --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -481,160 +481,160 @@ endif()
|
|||||||
# disabled until updated & working
|
# disabled until updated & working
|
||||||
if(FALSE)
|
if(FALSE)
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_fbx_cube
|
NAME export_fbx_cube
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_cube.fbx',use_selection=False,use_metadata=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_cube.fbx',use_selection=False,use_metadata=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_fbx_cube.fbx
|
--md5_source=${TEST_OUT_DIR}/export_fbx_cube.fbx
|
||||||
--md5=59a35577462f95f9a0b4e6035226ce9b --md5_method=FILE
|
--md5=59a35577462f95f9a0b4e6035226ce9b --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_fbx_nurbs
|
NAME export_fbx_nurbs
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_nurbs.fbx',use_selection=False,use_metadata=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_nurbs.fbx',use_selection=False,use_metadata=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_fbx_nurbs.fbx
|
--md5_source=${TEST_OUT_DIR}/export_fbx_nurbs.fbx
|
||||||
--md5=d31875f18f613fa0c3b16e978f87f6f8 --md5_method=FILE
|
--md5=d31875f18f613fa0c3b16e978f87f6f8 --md5_method=FILE
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME export_fbx_all_objects
|
NAME export_fbx_all_objects
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
|
||||||
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_all_objects.fbx',use_selection=False,use_metadata=False\)
|
--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_all_objects.fbx',use_selection=False,use_metadata=False\)
|
||||||
--md5_source=${TEST_OUT_DIR}/export_fbx_all_objects.fbx
|
--md5_source=${TEST_OUT_DIR}/export_fbx_all_objects.fbx
|
||||||
--md5=b35eb2a9d0e73762ecae2278c25a38ac --md5_method=FILE
|
--md5=b35eb2a9d0e73762ecae2278c25a38ac --md5_method=FILE
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Run Python script outside Blender.
|
# Run Python script outside Blender.
|
||||||
function(add_python_test testname testscript)
|
function(add_python_test testname testscript)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
add_test(
|
add_test(
|
||||||
NAME ${testname}
|
NAME ${testname}
|
||||||
COMMAND
|
COMMAND
|
||||||
"$<TARGET_FILE_DIR:blender>/${BLENDER_VERSION_MAJOR}.${BLENDER_VERSION_MINOR}/python/bin/python$<$<CONFIG:Debug>:_d>"
|
"$<TARGET_FILE_DIR:blender>/${BLENDER_VERSION_MAJOR}.${BLENDER_VERSION_MINOR}/python/bin/python$<$<CONFIG:Debug>:_d>"
|
||||||
${testscript} ${ARGN}
|
${testscript} ${ARGN}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_test(
|
add_test(
|
||||||
NAME ${testname}
|
NAME ${testname}
|
||||||
COMMAND ${testscript} ${ARGN}
|
COMMAND ${testscript} ${ARGN}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/render/ctests/shader")
|
if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/render/ctests/shader")
|
||||||
macro(add_cycles_render_test subject)
|
macro(add_cycles_render_test subject)
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
add_python_test(
|
add_python_test(
|
||||||
cycles_${subject}
|
cycles_${subject}
|
||||||
${CMAKE_CURRENT_LIST_DIR}/cycles_render_tests.py
|
${CMAKE_CURRENT_LIST_DIR}/cycles_render_tests.py
|
||||||
-blender "$<TARGET_FILE:blender>"
|
-blender "$<TARGET_FILE:blender>"
|
||||||
-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
|
-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
|
||||||
-idiff "${OPENIMAGEIO_IDIFF}"
|
-idiff "${OPENIMAGEIO_IDIFF}"
|
||||||
-outdir "${TEST_OUT_DIR}/cycles"
|
-outdir "${TEST_OUT_DIR}/cycles"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENGL_RENDER_TESTS AND (NOT ${subject} MATCHES "bake"))
|
if(WITH_OPENGL_RENDER_TESTS AND (NOT ${subject} MATCHES "bake"))
|
||||||
add_python_test(
|
add_python_test(
|
||||||
eevee_${subject}_test
|
eevee_${subject}_test
|
||||||
${CMAKE_CURRENT_LIST_DIR}/eevee_render_tests.py
|
${CMAKE_CURRENT_LIST_DIR}/eevee_render_tests.py
|
||||||
-blender "$<TARGET_FILE:blender>"
|
-blender "$<TARGET_FILE:blender>"
|
||||||
-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
|
-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
|
||||||
-idiff "${OPENIMAGEIO_IDIFF}"
|
-idiff "${OPENIMAGEIO_IDIFF}"
|
||||||
-outdir "${TEST_OUT_DIR}/eevee"
|
-outdir "${TEST_OUT_DIR}/eevee"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
add_cycles_render_test(bake)
|
add_cycles_render_test(bake)
|
||||||
add_cycles_render_test(bsdf)
|
add_cycles_render_test(bsdf)
|
||||||
add_cycles_render_test(denoise)
|
add_cycles_render_test(denoise)
|
||||||
add_cycles_render_test(denoise_animation)
|
add_cycles_render_test(denoise_animation)
|
||||||
add_cycles_render_test(displacement)
|
add_cycles_render_test(displacement)
|
||||||
add_cycles_render_test(hair)
|
add_cycles_render_test(hair)
|
||||||
add_cycles_render_test(image_data_types)
|
add_cycles_render_test(image_data_types)
|
||||||
add_cycles_render_test(image_mapping)
|
add_cycles_render_test(image_mapping)
|
||||||
add_cycles_render_test(image_texture_limit)
|
add_cycles_render_test(image_texture_limit)
|
||||||
add_cycles_render_test(integrator)
|
add_cycles_render_test(integrator)
|
||||||
add_cycles_render_test(light)
|
add_cycles_render_test(light)
|
||||||
add_cycles_render_test(mesh)
|
add_cycles_render_test(mesh)
|
||||||
add_cycles_render_test(motion_blur)
|
add_cycles_render_test(motion_blur)
|
||||||
add_cycles_render_test(render_layer)
|
add_cycles_render_test(render_layer)
|
||||||
add_cycles_render_test(reports)
|
add_cycles_render_test(reports)
|
||||||
add_cycles_render_test(shader)
|
add_cycles_render_test(shader)
|
||||||
add_cycles_render_test(shadow_catcher)
|
add_cycles_render_test(shadow_catcher)
|
||||||
add_cycles_render_test(sss)
|
add_cycles_render_test(sss)
|
||||||
add_cycles_render_test(volume)
|
add_cycles_render_test(volume)
|
||||||
elseif(WITH_CYCLES)
|
elseif(WITH_CYCLES)
|
||||||
MESSAGE(STATUS "Disabling Cycles tests because tests folder does not exist")
|
MESSAGE(STATUS "Disabling Cycles tests because tests folder does not exist")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENGL_DRAW_TESTS)
|
if(WITH_OPENGL_DRAW_TESTS)
|
||||||
if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/opengl")
|
if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/opengl")
|
||||||
# Use all subdirectories of opengl folder.
|
# Use all subdirectories of opengl folder.
|
||||||
file(GLOB children RELATIVE ${TEST_SRC_DIR}/opengl ${TEST_SRC_DIR}/opengl/*)
|
file(GLOB children RELATIVE ${TEST_SRC_DIR}/opengl ${TEST_SRC_DIR}/opengl/*)
|
||||||
foreach(child ${children})
|
foreach(child ${children})
|
||||||
# Resolve symlinks, useful to test production files with linked libraries.
|
# Resolve symlinks, useful to test production files with linked libraries.
|
||||||
get_filename_component(child_path ${TEST_SRC_DIR}/opengl/${child} REALPATH)
|
get_filename_component(child_path ${TEST_SRC_DIR}/opengl/${child} REALPATH)
|
||||||
if(IS_DIRECTORY ${child_path})
|
if(IS_DIRECTORY ${child_path})
|
||||||
file(GLOB_RECURSE blends "${child_path}/*.blend")
|
file(GLOB_RECURSE blends "${child_path}/*.blend")
|
||||||
if(blends)
|
if(blends)
|
||||||
add_python_test(
|
add_python_test(
|
||||||
opengl_draw_${child}
|
opengl_draw_${child}
|
||||||
${CMAKE_CURRENT_LIST_DIR}/opengl_draw_tests.py
|
${CMAKE_CURRENT_LIST_DIR}/opengl_draw_tests.py
|
||||||
-blender "$<TARGET_FILE:blender>"
|
-blender "$<TARGET_FILE:blender>"
|
||||||
-testdir "${child_path}"
|
-testdir "${child_path}"
|
||||||
-idiff "${OPENIMAGEIO_IDIFF}"
|
-idiff "${OPENIMAGEIO_IDIFF}"
|
||||||
-outdir "${TEST_OUT_DIR}/opengl_draw"
|
-outdir "${TEST_OUT_DIR}/opengl_draw"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
else()
|
else()
|
||||||
MESSAGE(STATUS "Disabling OpenGL tests because tests folder does not exist")
|
MESSAGE(STATUS "Disabling OpenGL tests because tests folder does not exist")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(WITH_ALEMBIC)
|
if(WITH_ALEMBIC)
|
||||||
find_package_wrapper(Alembic)
|
find_package_wrapper(Alembic)
|
||||||
if(NOT ALEMBIC_FOUND)
|
if(NOT ALEMBIC_FOUND)
|
||||||
message(FATAL_ERROR "Alembic is enabled but cannot be found")
|
message(FATAL_ERROR "Alembic is enabled but cannot be found")
|
||||||
endif()
|
endif()
|
||||||
get_filename_component(real_include_dir ${ALEMBIC_INCLUDE_DIR} REALPATH)
|
get_filename_component(real_include_dir ${ALEMBIC_INCLUDE_DIR} REALPATH)
|
||||||
get_filename_component(ALEMBIC_ROOT_DIR ${real_include_dir} DIRECTORY)
|
get_filename_component(ALEMBIC_ROOT_DIR ${real_include_dir} DIRECTORY)
|
||||||
|
|
||||||
add_python_test(
|
add_python_test(
|
||||||
alembic_tests
|
alembic_tests
|
||||||
${CMAKE_CURRENT_LIST_DIR}/alembic_tests.py
|
${CMAKE_CURRENT_LIST_DIR}/alembic_tests.py
|
||||||
--blender "$<TARGET_FILE:blender>"
|
--blender "$<TARGET_FILE:blender>"
|
||||||
--testdir "${TEST_SRC_DIR}/alembic"
|
--testdir "${TEST_SRC_DIR}/alembic"
|
||||||
--alembic-root "${ALEMBIC_ROOT_DIR}"
|
--alembic-root "${ALEMBIC_ROOT_DIR}"
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME script_alembic_import
|
NAME script_alembic_import
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/bl_alembic_import_test.py
|
--python ${CMAKE_CURRENT_LIST_DIR}/bl_alembic_import_test.py
|
||||||
--
|
--
|
||||||
--testdir "${TEST_SRC_DIR}/alembic"
|
--testdir "${TEST_SRC_DIR}/alembic"
|
||||||
--with-legacy-depsgraph=${WITH_LEGACY_DEPSGRAPH}
|
--with-legacy-depsgraph=${WITH_LEGACY_DEPSGRAPH}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CODEC_FFMPEG)
|
if(WITH_CODEC_FFMPEG)
|
||||||
add_python_test(
|
add_python_test(
|
||||||
ffmpeg
|
ffmpeg
|
||||||
${CMAKE_CURRENT_LIST_DIR}/ffmpeg_tests.py
|
${CMAKE_CURRENT_LIST_DIR}/ffmpeg_tests.py
|
||||||
--blender "$<TARGET_FILE:blender>"
|
--blender "$<TARGET_FILE:blender>"
|
||||||
--testdir "${TEST_DATA_SRC_DIR}/ffmpeg"
|
--testdir "${TEST_DATA_SRC_DIR}/ffmpeg"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_subdirectory(collada)
|
add_subdirectory(collada)
|
||||||
|
|||||||
@@ -29,19 +29,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
|
|||||||
# ugh, any better way to do this on testing only?
|
# ugh, any better way to do this on testing only?
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
||||||
|
|
||||||
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
||||||
#~ message(FATAL_ERROR "CMake test directory not found!")
|
#~ message(FATAL_ERROR "CMake test directory not found!")
|
||||||
#~ endif()
|
#~ endif()
|
||||||
|
|
||||||
# all calls to blender use this
|
# all calls to blender use this
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
||||||
@@ -51,12 +51,12 @@ endif()
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# GENERAL PYTHON CORRECTNESS TESTS
|
# GENERAL PYTHON CORRECTNESS TESTS
|
||||||
macro (COLLADA_TEST module test_name blend_file)
|
macro (COLLADA_TEST module test_name blend_file)
|
||||||
add_test(
|
add_test(
|
||||||
NAME collada_${module}_${test_name}
|
NAME collada_${module}_${test_name}
|
||||||
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS} ${TEST_SRC_DIR}/collada/${module}/${blend_file}
|
COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS} ${TEST_SRC_DIR}/collada/${module}/${blend_file}
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/${module}/test_${module}_${test_name}.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/${module}/test_${module}_${test_name}.py --
|
||||||
--testdir ${TEST_SRC_DIR}/collada/${module}
|
--testdir ${TEST_SRC_DIR}/collada/${module}
|
||||||
)
|
)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# Tests are disabled because they only work on Windows
|
# Tests are disabled because they only work on Windows
|
||||||
|
|||||||
@@ -25,19 +25,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
|
|||||||
# ugh, any better way to do this on testing only?
|
# ugh, any better way to do this on testing only?
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
|
||||||
|
|
||||||
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
#~ if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
|
||||||
#~ message(FATAL_ERROR "CMake test directory not found!")
|
#~ message(FATAL_ERROR "CMake test directory not found!")
|
||||||
#~ endif()
|
#~ endif()
|
||||||
|
|
||||||
# all calls to blender use this
|
# all calls to blender use this
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
if(${CMAKE_GENERATOR} MATCHES "Xcode")
|
||||||
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/Debug/blender.app/Contents/MacOS/blender)
|
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/Debug/blender.app/Contents/MacOS/blender)
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender.app/Contents/MacOS/blender)
|
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender.app/Contents/MacOS/blender)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender)
|
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
|
||||||
@@ -47,14 +47,14 @@ set(TEST_BLENDER_EXE ${TEST_BLENDER_EXE} --background -noaudio --factory-startup
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
macro(VIEW_LAYER_TEST test_name)
|
macro(VIEW_LAYER_TEST test_name)
|
||||||
# Adds ${CMAKE_CURRENT_LIST_DIR} to sys.path so that the tests can import
|
# Adds ${CMAKE_CURRENT_LIST_DIR} to sys.path so that the tests can import
|
||||||
# things from view_layer_common.py
|
# things from view_layer_common.py
|
||||||
add_test(view_layer_${test_name} ${TEST_BLENDER_EXE}
|
add_test(view_layer_${test_name} ${TEST_BLENDER_EXE}
|
||||||
--python-expr "import sys; sys.path.append('${CMAKE_CURRENT_LIST_DIR}')"
|
--python-expr "import sys; sys.path.append('${CMAKE_CURRENT_LIST_DIR}')"
|
||||||
--python-exit-code 1
|
--python-exit-code 1
|
||||||
--python ${CMAKE_CURRENT_LIST_DIR}/test_${test_name}.py --
|
--python ${CMAKE_CURRENT_LIST_DIR}/test_${test_name}.py --
|
||||||
--testdir="${TEST_SRC_DIR}/layers"
|
--testdir="${TEST_SRC_DIR}/layers"
|
||||||
)
|
)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
VIEW_LAYER_TEST(active_collection)
|
VIEW_LAYER_TEST(active_collection)
|
||||||
|
|||||||
Reference in New Issue
Block a user