Compare commits
24 Commits
soc-2020-x
...
tmp-eevee-
Author | SHA1 | Date | |
---|---|---|---|
b063115d4e | |||
312dbf8af1 | |||
eb8093cb14 | |||
6adaa4202a | |||
4dd3a9790f | |||
c584116e25 | |||
3e10785c60 | |||
9468425524 | |||
31e21d38e3 | |||
8457593672 | |||
e13f5cc5ae | |||
278d174e35 | |||
d5555e5d5a | |||
585eaa5b0a | |||
4ec63b5421 | |||
a77301289d | |||
95a3c256dc | |||
0edd48c904 | |||
9e19ec0d18 | |||
e951f5f0fe | |||
4df76629a5 | |||
786b0c6414 | |||
9ee5e73a3d | |||
77a0ef91ba |
@@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
"project_id" : "Blender",
|
"project_id" : "Blender",
|
||||||
"conduit_uri" : "https://developer.blender.org/",
|
"conduit_uri" : "https://developer.blender.org/",
|
||||||
"phabricator.uri" : "https://developer.blender.org/",
|
|
||||||
"git.default-relative-commit" : "origin/master",
|
"git.default-relative-commit" : "origin/master",
|
||||||
"arc.land.update.default" : "rebase",
|
"arc.land.update.default" : "rebase",
|
||||||
"arc.land.onto.default" : "master"
|
"arc.land.onto.default" : "master"
|
||||||
|
@@ -132,7 +132,9 @@ PenaltyBreakAssignment: 100
|
|||||||
|
|
||||||
AllowShortFunctionsOnASingleLine: None
|
AllowShortFunctionsOnASingleLine: None
|
||||||
|
|
||||||
SortIncludes: true
|
# Disable for now since it complicates initial migration tests,
|
||||||
|
# TODO: look into enabling this in the future.
|
||||||
|
SortIncludes: false
|
||||||
|
|
||||||
# Don't right align escaped newlines to the right because we have a wide default
|
# Don't right align escaped newlines to the right because we have a wide default
|
||||||
AlignEscapedNewlines: DontAlign
|
AlignEscapedNewlines: DontAlign
|
||||||
@@ -191,7 +193,6 @@ ForEachMacros:
|
|||||||
- FOREACH_MAIN_ID_BEGIN
|
- FOREACH_MAIN_ID_BEGIN
|
||||||
- FOREACH_MAIN_LISTBASE_BEGIN
|
- FOREACH_MAIN_LISTBASE_BEGIN
|
||||||
- FOREACH_MAIN_LISTBASE_ID_BEGIN
|
- FOREACH_MAIN_LISTBASE_ID_BEGIN
|
||||||
- FOREACH_MESH_BUFFER_CACHE
|
|
||||||
- FOREACH_NODETREE_BEGIN
|
- FOREACH_NODETREE_BEGIN
|
||||||
- FOREACH_OBJECT_BEGIN
|
- FOREACH_OBJECT_BEGIN
|
||||||
- FOREACH_OBJECT_FLAG_BEGIN
|
- FOREACH_OBJECT_FLAG_BEGIN
|
||||||
@@ -214,30 +215,19 @@ ForEachMacros:
|
|||||||
- GHASH_ITER_INDEX
|
- GHASH_ITER_INDEX
|
||||||
- GPU_SELECT_LOAD_IF_PICKSEL_LIST
|
- GPU_SELECT_LOAD_IF_PICKSEL_LIST
|
||||||
- GP_EDITABLE_STROKES_BEGIN
|
- GP_EDITABLE_STROKES_BEGIN
|
||||||
- GP_EVALUATED_STROKES_BEGIN
|
|
||||||
- GSET_FOREACH_BEGIN
|
- GSET_FOREACH_BEGIN
|
||||||
- GSET_ITER
|
- GSET_ITER
|
||||||
- GSET_ITER_INDEX
|
- GSET_ITER_INDEX
|
||||||
- ITER_BEGIN
|
- ITER_BEGIN
|
||||||
- ITER_PIXELS
|
- ITER_PIXELS
|
||||||
- ITER_SLOTS
|
- ITER_SLOTS
|
||||||
- ITER_SLOTS_BEGIN
|
|
||||||
- LOOP_EDITED_POINTS
|
|
||||||
- LOOP_KEYS
|
|
||||||
- LOOP_POINTS
|
|
||||||
- LOOP_SELECTED_KEYS
|
|
||||||
- LOOP_SELECTED_POINTS
|
|
||||||
- LOOP_TAGGED_KEYS
|
|
||||||
- LOOP_TAGGED_POINTS
|
|
||||||
- LOOP_UNSELECTED_POINTS
|
|
||||||
- LOOP_VISIBLE_KEYS
|
|
||||||
- LOOP_VISIBLE_POINTS
|
|
||||||
- LISTBASE_CIRCULAR_BACKWARD_BEGIN
|
- LISTBASE_CIRCULAR_BACKWARD_BEGIN
|
||||||
- LISTBASE_CIRCULAR_FORWARD_BEGIN
|
- LISTBASE_CIRCULAR_FORWARD_BEGIN
|
||||||
- LISTBASE_FOREACH
|
- LISTBASE_FOREACH
|
||||||
- LISTBASE_FOREACH_BACKWARD
|
- LISTBASE_FOREACH_BACKWARD
|
||||||
- LISTBASE_FOREACH_MUTABLE
|
- LISTBASE_FOREACH_MUTABLE
|
||||||
- LISTBASE_FOREACH_BACKWARD_MUTABLE
|
- LISTBASE_FOREACH_BACKWARD_MUTABLE
|
||||||
|
- MAN2D_ITER_AXES_BEGIN
|
||||||
- MAN_ITER_AXES_BEGIN
|
- MAN_ITER_AXES_BEGIN
|
||||||
- NODE_INSTANCE_HASH_ITER
|
- NODE_INSTANCE_HASH_ITER
|
||||||
- NODE_SOCKET_TYPES_BEGIN
|
- NODE_SOCKET_TYPES_BEGIN
|
||||||
@@ -245,22 +235,13 @@ ForEachMacros:
|
|||||||
- NODE_TYPES_BEGIN
|
- NODE_TYPES_BEGIN
|
||||||
- PIXEL_LOOPER_BEGIN
|
- PIXEL_LOOPER_BEGIN
|
||||||
- PIXEL_LOOPER_BEGIN_CHANNELS
|
- PIXEL_LOOPER_BEGIN_CHANNELS
|
||||||
- RENDER_PASS_ITER_BEGIN
|
|
||||||
- RNA_BEGIN
|
- RNA_BEGIN
|
||||||
- RNA_PROP_BEGIN
|
- RNA_PROP_BEGIN
|
||||||
- RNA_STRUCT_BEGIN
|
- RNA_STRUCT_BEGIN
|
||||||
- RNA_STRUCT_BEGIN_SKIP_RNA_TYPE
|
- RNA_STRUCT_BEGIN_SKIP_RNA_TYPE
|
||||||
- SCULPT_VERTEX_DUPLICATES_AND_NEIGHBORS_ITER_BEGIN
|
|
||||||
- SCULPT_VERTEX_NEIGHBORS_ITER_BEGIN
|
|
||||||
- SEQP_BEGIN
|
- SEQP_BEGIN
|
||||||
- SEQ_BEGIN
|
- SEQ_BEGIN
|
||||||
- SURFACE_QUAD_ITER_BEGIN
|
|
||||||
- foreach
|
- foreach
|
||||||
- ED_screen_areas_iter
|
|
||||||
- SLOT_PROBING_BEGIN
|
|
||||||
- SET_SLOT_PROBING_BEGIN
|
|
||||||
- MAP_SLOT_PROBING_BEGIN
|
|
||||||
- VECTOR_SET_SLOT_PROBING_BEGIN
|
|
||||||
|
|
||||||
# Use once we bump the minimum version to version 8.
|
# Use once we bump the minimum version to version 8.
|
||||||
# # Without this string literals that in-line 'STRINGIFY' behave strangely (a bug?).
|
# # Without this string literals that in-line 'STRINGIFY' behave strangely (a bug?).
|
||||||
|
45
.clang-tidy
45
.clang-tidy
@@ -1,45 +0,0 @@
|
|||||||
Checks: >
|
|
||||||
-*,
|
|
||||||
readability-*,
|
|
||||||
-readability-uppercase-literal-suffix,
|
|
||||||
-readability-magic-numbers,
|
|
||||||
-readability-isolate-declaration,
|
|
||||||
-readability-convert-member-functions-to-static,
|
|
||||||
-readability-implicit-bool-conversion,
|
|
||||||
-readability-avoid-const-params-in-decls,
|
|
||||||
-readability-simplify-boolean-expr,
|
|
||||||
-readability-make-member-function-const,
|
|
||||||
|
|
||||||
-readability-misleading-indentation,
|
|
||||||
|
|
||||||
-readability-else-after-return,
|
|
||||||
-readability-inconsistent-declaration-parameter-name,
|
|
||||||
-readability-redundant-preprocessor,
|
|
||||||
-readability-function-size,
|
|
||||||
-readability-function-size,
|
|
||||||
-readability-redundant-string-init,
|
|
||||||
-readability-redundant-member-init,
|
|
||||||
-readability-const-return-type,
|
|
||||||
-readability-static-accessed-through-instance,
|
|
||||||
-readability-redundant-declaration,
|
|
||||||
-readability-qualified-auto,
|
|
||||||
-readability-use-anyofallof,
|
|
||||||
|
|
||||||
bugprone-*,
|
|
||||||
-bugprone-narrowing-conversions,
|
|
||||||
-bugprone-unhandled-self-assignment,
|
|
||||||
-bugprone-branch-clone,
|
|
||||||
-bugprone-macro-parentheses,
|
|
||||||
-bugprone-reserved-identifier,
|
|
||||||
|
|
||||||
-bugprone-sizeof-expression,
|
|
||||||
-bugprone-integer-division,
|
|
||||||
-bugprone-incorrect-roundings,
|
|
||||||
-bugprone-suspicious-string-compare,
|
|
||||||
-bugprone-not-null-terminated-result,
|
|
||||||
-bugprone-suspicious-missing-comma,
|
|
||||||
-bugprone-parent-virtual-call,
|
|
||||||
-bugprone-infinite-loop,
|
|
||||||
-bugprone-copy-constructor-init,
|
|
||||||
|
|
||||||
WarningsAsErrors: '*'
|
|
22
.github/stale.yml
vendored
22
.github/stale.yml
vendored
@@ -1,22 +0,0 @@
|
|||||||
# Configuration for probot-stale - https://github.com/probot/stale
|
|
||||||
# This file is used on Blender's GitHub mirror to automatically close any pull request
|
|
||||||
# and invite contributors to join the official development platform on blender.org
|
|
||||||
|
|
||||||
# Number of days of inactivity before an Issue or Pull Request becomes stale
|
|
||||||
daysUntilStale: 1
|
|
||||||
|
|
||||||
# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
|
|
||||||
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
|
|
||||||
daysUntilClose: 1
|
|
||||||
|
|
||||||
# Label to use when marking as stale
|
|
||||||
staleLabel: stale
|
|
||||||
|
|
||||||
# Comment to post when closing a stale Issue or Pull Request.
|
|
||||||
closeComment: >
|
|
||||||
This issue has been automatically closed, because this repository is only
|
|
||||||
used as a mirror of git.blender.org. Blender development happens on
|
|
||||||
developer.blender.org.
|
|
||||||
|
|
||||||
To get started contributing code, please read:
|
|
||||||
https://wiki.blender.org/wiki/Process/Contributing_Code
|
|
6
.gitignore
vendored
6
.gitignore
vendored
@@ -40,9 +40,3 @@ Desktop.ini
|
|||||||
|
|
||||||
# in-source lib downloads
|
# in-source lib downloads
|
||||||
/build_files/build_environment/downloads
|
/build_files/build_environment/downloads
|
||||||
|
|
||||||
# in-source buildbot signing configuration
|
|
||||||
/build_files/buildbot/codesign/config_server.py
|
|
||||||
|
|
||||||
# smoke simulation noise tile (generated)
|
|
||||||
waveletNoiseTile.bin
|
|
||||||
|
412
CMakeLists.txt
412
CMakeLists.txt
@@ -16,7 +16,6 @@
|
|||||||
#
|
#
|
||||||
# The Original Code is Copyright (C) 2006, Blender Foundation
|
# The Original Code is Copyright (C) 2006, Blender Foundation
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -41,7 +40,7 @@ if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.10)
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
# Prever LEGACY OpenGL to eb compatible with all the existing releases and
|
# Prever LEGACY OpenGL to eb compatible with all the existing releases and
|
||||||
# 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
|
||||||
@@ -97,11 +96,6 @@ cmake_policy(SET CMP0010 NEW)
|
|||||||
# Input directories must have CMakeLists.txt
|
# Input directories must have CMakeLists.txt
|
||||||
cmake_policy(SET CMP0014 NEW)
|
cmake_policy(SET CMP0014 NEW)
|
||||||
|
|
||||||
# Silence draco warning on macOS, new policy works fine.
|
|
||||||
if(POLICY CMP0068)
|
|
||||||
cmake_policy(SET CMP0068 NEW)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Load some macros.
|
# Load some macros.
|
||||||
include(build_files/cmake/macros.cmake)
|
include(build_files/cmake/macros.cmake)
|
||||||
@@ -135,9 +129,76 @@ endif()
|
|||||||
get_blender_version()
|
get_blender_version()
|
||||||
|
|
||||||
|
|
||||||
|
#-----------------------------------------------------------------------------
|
||||||
|
# Platform Specific Defaults
|
||||||
|
|
||||||
|
# list of var-names
|
||||||
|
set(_init_vars)
|
||||||
|
|
||||||
|
# initialize to ON
|
||||||
|
macro(option_defaults_init)
|
||||||
|
foreach(_var ${ARGV})
|
||||||
|
set(${_var} ON)
|
||||||
|
list(APPEND _init_vars "${_var}")
|
||||||
|
endforeach()
|
||||||
|
unset(_var)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
# remove from namespace
|
||||||
|
macro(option_defaults_clear)
|
||||||
|
foreach(_var ${_init_vars})
|
||||||
|
unset(${_var})
|
||||||
|
endforeach()
|
||||||
|
unset(_var)
|
||||||
|
unset(_init_vars)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
|
# values to initialize WITH_****
|
||||||
|
option_defaults_init(
|
||||||
|
_init_BUILDINFO
|
||||||
|
_init_CODEC_FFMPEG
|
||||||
|
_init_CYCLES_OSL
|
||||||
|
_init_IMAGE_OPENEXR
|
||||||
|
_init_INPUT_NDOF
|
||||||
|
_init_JACK
|
||||||
|
_init_OPENCOLLADA
|
||||||
|
_init_OPENCOLORIO
|
||||||
|
_init_SDL
|
||||||
|
_init_FFTW3
|
||||||
|
_init_OPENSUBDIV
|
||||||
|
)
|
||||||
|
|
||||||
|
# customize...
|
||||||
|
if(UNIX AND NOT APPLE)
|
||||||
|
# some of these libraries are problematic on Linux
|
||||||
|
# disable less important dependencies by default
|
||||||
|
set(_init_CODEC_FFMPEG OFF)
|
||||||
|
set(_init_CYCLES_OSL OFF)
|
||||||
|
set(_init_IMAGE_OPENEXR OFF)
|
||||||
|
set(_init_JACK OFF)
|
||||||
|
set(_init_OPENCOLLADA OFF)
|
||||||
|
set(_init_OPENCOLORIO OFF)
|
||||||
|
set(_init_SDL OFF)
|
||||||
|
set(_init_FFTW3 OFF)
|
||||||
|
set(_init_OPENSUBDIV OFF)
|
||||||
|
set(_init_OPENVDB OFF)
|
||||||
|
set(_init_OPENIMAGEDENOISE OFF)
|
||||||
|
elseif(WIN32)
|
||||||
|
set(_init_JACK OFF)
|
||||||
|
elseif(APPLE)
|
||||||
|
set(_init_JACK OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Options
|
# Options
|
||||||
|
|
||||||
|
# First platform specific non-cached vars
|
||||||
|
if(UNIX AND NOT (APPLE OR HAIKU))
|
||||||
|
set(WITH_X11 ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Blender internal features
|
# Blender internal features
|
||||||
option(WITH_BLENDER "Build blender (disable to build only the blender player)" ON)
|
option(WITH_BLENDER "Build blender (disable to build only the blender player)" ON)
|
||||||
mark_as_advanced(WITH_BLENDER)
|
mark_as_advanced(WITH_BLENDER)
|
||||||
@@ -156,7 +217,7 @@ 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)" ON)
|
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)
|
||||||
@@ -170,28 +231,20 @@ mark_as_advanced(BUILDINFO_OVERRIDE_TIME)
|
|||||||
|
|
||||||
option(WITH_IK_ITASC "Enable ITASC IK solver (only disable for development & for incompatible C++ compilers)" ON)
|
option(WITH_IK_ITASC "Enable ITASC IK solver (only disable for development & for incompatible C++ compilers)" ON)
|
||||||
option(WITH_IK_SOLVER "Enable Legacy IK solver (only disable for development)" ON)
|
option(WITH_IK_SOLVER "Enable Legacy IK solver (only disable for development)" ON)
|
||||||
option(WITH_FFTW3 "Enable FFTW3 support (Used for smoke, ocean sim, and audio effects)" ON)
|
option(WITH_FFTW3 "Enable FFTW3 support (Used for smoke, ocean sim, and audio effects)" ${_init_FFTW3})
|
||||||
option(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
|
option(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
|
||||||
option(WITH_SYSTEM_BULLET "Use the systems bullet library (currently unsupported due to missing features in upstream!)" )
|
option(WITH_SYSTEM_BULLET "Use the systems bullet library (currently unsupported due to missing features in upstream!)" )
|
||||||
mark_as_advanced(WITH_SYSTEM_BULLET)
|
mark_as_advanced(WITH_SYSTEM_BULLET)
|
||||||
option(WITH_OPENCOLORIO "Enable OpenColorIO color management" ON)
|
option(WITH_OPENCOLORIO "Enable OpenColorIO color management" ${_init_OPENCOLORIO})
|
||||||
if(APPLE)
|
|
||||||
# There's no OpenXR runtime in sight for macOS, neither is code well
|
|
||||||
# tested there -> disable it by default.
|
|
||||||
option(WITH_XR_OPENXR "Enable VR features through the OpenXR specification" OFF)
|
|
||||||
mark_as_advanced(WITH_XR_OPENXR)
|
|
||||||
else()
|
|
||||||
option(WITH_XR_OPENXR "Enable VR features through the OpenXR specification" ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Compositor
|
# Compositor
|
||||||
option(WITH_COMPOSITOR "Enable the tile based nodal compositor" ON)
|
option(WITH_COMPOSITOR "Enable the tile based nodal compositor" ON)
|
||||||
option(WITH_OPENIMAGEDENOISE "Enable the OpenImageDenoise compositing node" ON)
|
option(WITH_OPENIMAGEDENOISE "Enable the OpenImageDenoise compositing node" ${_init_OPENIMAGEDENOISE})
|
||||||
|
|
||||||
option(WITH_OPENSUBDIV "Enable OpenSubdiv for surface subdivision" ON)
|
option(WITH_OPENSUBDIV "Enable OpenSubdiv for surface subdivision" ${_init_OPENSUBDIV})
|
||||||
|
|
||||||
option(WITH_OPENVDB "Enable features relying on OpenVDB" ON)
|
option(WITH_OPENVDB "Enable features relying on OpenVDB" ${_init_OPENVDB})
|
||||||
option(WITH_OPENVDB_BLOSC "Enable blosc compression for OpenVDB, only enable if OpenVDB was built with blosc support" ON)
|
option(WITH_OPENVDB_BLOSC "Enable blosc compression for OpenVDB, only enable if OpenVDB was built with blosc support" ${_init_OPENVDB})
|
||||||
option(WITH_OPENVDB_3_ABI_COMPATIBLE "Assume OpenVDB library has been compiled with version 3 ABI compatibility" OFF)
|
option(WITH_OPENVDB_3_ABI_COMPATIBLE "Assume OpenVDB library has been compiled with version 3 ABI compatibility" OFF)
|
||||||
mark_as_advanced(WITH_OPENVDB_3_ABI_COMPATIBLE)
|
mark_as_advanced(WITH_OPENVDB_3_ABI_COMPATIBLE)
|
||||||
|
|
||||||
@@ -202,15 +255,7 @@ mark_as_advanced(WITH_GHOST_DEBUG)
|
|||||||
option(WITH_GHOST_SDL "Enable building Blender against SDL for windowing rather than the native APIs" OFF)
|
option(WITH_GHOST_SDL "Enable building Blender against SDL for windowing rather than the native APIs" OFF)
|
||||||
mark_as_advanced(WITH_GHOST_SDL)
|
mark_as_advanced(WITH_GHOST_SDL)
|
||||||
|
|
||||||
if(UNIX AND NOT (APPLE OR HAIKU))
|
if(WITH_X11)
|
||||||
option(WITH_GHOST_X11 "Enable building Blender against X11 for windowing" ON)
|
|
||||||
mark_as_advanced(WITH_GHOST_X11)
|
|
||||||
|
|
||||||
option(WITH_GHOST_WAYLAND "Enable building Blender against Wayland for windowing (under development)" OFF)
|
|
||||||
mark_as_advanced(WITH_GHOST_WAYLAND)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WITH_GHOST_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()
|
||||||
|
|
||||||
@@ -218,8 +263,6 @@ endif()
|
|||||||
option(WITH_HEADLESS "Build without graphical support (renderfarm, server mode only)" OFF)
|
option(WITH_HEADLESS "Build without graphical support (renderfarm, server mode only)" OFF)
|
||||||
mark_as_advanced(WITH_HEADLESS)
|
mark_as_advanced(WITH_HEADLESS)
|
||||||
|
|
||||||
option(WITH_QUADRIFLOW "Build with quadriflow remesher support" ON)
|
|
||||||
|
|
||||||
option(WITH_AUDASPACE "Build with blenders audio library (only disable if you know what you're doing!)" ON)
|
option(WITH_AUDASPACE "Build with blenders audio library (only disable if you know what you're doing!)" ON)
|
||||||
option(WITH_SYSTEM_AUDASPACE "Build with external audaspace library installed on the system (only enable if you know what you're doing!)" OFF)
|
option(WITH_SYSTEM_AUDASPACE "Build with external audaspace library installed on the system (only enable if you know what you're doing!)" OFF)
|
||||||
mark_as_advanced(WITH_AUDASPACE)
|
mark_as_advanced(WITH_AUDASPACE)
|
||||||
@@ -235,7 +278,7 @@ if(UNIX AND NOT APPLE)
|
|||||||
mark_as_advanced(WITH_OPENMP_STATIC)
|
mark_as_advanced(WITH_OPENMP_STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GHOST_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)
|
||||||
@@ -258,13 +301,16 @@ endif()
|
|||||||
|
|
||||||
|
|
||||||
# Modifiers
|
# Modifiers
|
||||||
option(WITH_MOD_FLUID "Enable Mantaflow Fluid Simulation Framework" ON)
|
option(WITH_MOD_FLUID "Enable Elbeem Modifier (Fluid Simulation)" ON)
|
||||||
|
option(WITH_MOD_SMOKE "Enable Smoke Modifier (Smoke Simulation)" ON)
|
||||||
option(WITH_MOD_REMESH "Enable Remesh Modifier" ON)
|
option(WITH_MOD_REMESH "Enable Remesh Modifier" ON)
|
||||||
option(WITH_MOD_OCEANSIM "Enable Ocean Modifier" ON)
|
# option(WITH_MOD_CLOTH_ELTOPO "Enable Experimental cloth solver" OFF) # this is now only available in a branch
|
||||||
|
# mark_as_advanced(WITH_MOD_CLOTH_ELTOPO)
|
||||||
|
option(WITH_MOD_OCEANSIM "Enable Ocean Modifier" OFF)
|
||||||
|
|
||||||
# Image format support
|
# Image format support
|
||||||
option(WITH_OPENIMAGEIO "Enable OpenImageIO Support (http://www.openimageio.org)" ON)
|
option(WITH_OPENIMAGEIO "Enable OpenImageIO Support (http://www.openimageio.org)" ON)
|
||||||
option(WITH_IMAGE_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ON)
|
option(WITH_IMAGE_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ${_init_IMAGE_OPENEXR})
|
||||||
option(WITH_IMAGE_OPENJPEG "Enable OpenJpeg Support (http://www.openjpeg.org)" ON)
|
option(WITH_IMAGE_OPENJPEG "Enable OpenJpeg Support (http://www.openjpeg.org)" ON)
|
||||||
option(WITH_IMAGE_TIFF "Enable LibTIFF Support" ON)
|
option(WITH_IMAGE_TIFF "Enable LibTIFF Support" ON)
|
||||||
option(WITH_IMAGE_DDS "Enable DDS Image Support" ON)
|
option(WITH_IMAGE_DDS "Enable DDS Image Support" ON)
|
||||||
@@ -273,27 +319,23 @@ option(WITH_IMAGE_HDR "Enable HDR Image Support" ON)
|
|||||||
|
|
||||||
# Audio/Video format support
|
# Audio/Video format support
|
||||||
option(WITH_CODEC_AVI "Enable Blenders own AVI file support (raw/jpeg)" ON)
|
option(WITH_CODEC_AVI "Enable Blenders own AVI file support (raw/jpeg)" ON)
|
||||||
option(WITH_CODEC_FFMPEG "Enable FFMPeg Support (http://ffmpeg.org)" ON)
|
option(WITH_CODEC_FFMPEG "Enable FFMPeg Support (http://ffmpeg.org)" ${_init_CODEC_FFMPEG})
|
||||||
option(WITH_CODEC_SNDFILE "Enable libsndfile Support (http://www.mega-nerd.com/libsndfile)" ON)
|
option(WITH_CODEC_SNDFILE "Enable libsndfile Support (http://www.mega-nerd.com/libsndfile)" OFF)
|
||||||
|
|
||||||
# Alembic support
|
# Alembic support
|
||||||
option(WITH_ALEMBIC "Enable Alembic Support" ON)
|
option(WITH_ALEMBIC "Enable Alembic Support" OFF)
|
||||||
|
option(WITH_ALEMBIC_HDF5 "Enable Legacy Alembic Support (not officially supported)" OFF)
|
||||||
# Universal Scene Description support
|
|
||||||
option(WITH_USD "Enable Universal Scene Description (USD) Support" ON)
|
|
||||||
|
|
||||||
# 3D format support
|
# 3D format support
|
||||||
# Disable opencollada when we don't have precompiled libs
|
# Disable opencollada when we don't have precompiled libs
|
||||||
option(WITH_OPENCOLLADA "Enable OpenCollada Support (http://www.opencollada.org)" ON)
|
option(WITH_OPENCOLLADA "Enable OpenCollada Support (http://www.opencollada.org)" ${_init_OPENCOLLADA})
|
||||||
|
|
||||||
# Sound output
|
# Sound output
|
||||||
option(WITH_SDL "Enable SDL for sound and joystick support" ON)
|
option(WITH_SDL "Enable SDL for sound and joystick support" ${_init_SDL})
|
||||||
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
||||||
if(NOT WIN32)
|
option(WITH_JACK "Enable JACK Support (http://www.jackaudio.org)" ${_init_JACK})
|
||||||
option(WITH_JACK "Enable JACK Support (http://www.jackaudio.org)" ON)
|
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()
|
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)
|
||||||
@@ -309,7 +351,7 @@ option(WITH_DRACO "Enable Draco mesh compression Python module (used for
|
|||||||
|
|
||||||
# Camera/motion tracking
|
# Camera/motion tracking
|
||||||
option(WITH_LIBMV "Enable Libmv structure from motion library" ON)
|
option(WITH_LIBMV "Enable Libmv structure from motion library" ON)
|
||||||
option(WITH_LIBMV_SCHUR_SPECIALIZATIONS "Enable fixed-size schur specializations." ON)
|
option(WITH_LIBMV_SCHUR_SPECIALIZATIONS "Enable fixed-size schur specializations." OFF)
|
||||||
mark_as_advanced(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
mark_as_advanced(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
|
||||||
|
|
||||||
# Logging/unbit test libraries.
|
# Logging/unbit test libraries.
|
||||||
@@ -325,7 +367,8 @@ option(WITH_FREESTYLE "Enable Freestyle (advanced edges rendering)" ON)
|
|||||||
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)" ON)
|
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)
|
||||||
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)
|
||||||
@@ -361,13 +404,13 @@ mark_as_advanced(WITH_CPU_SSE)
|
|||||||
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" ON)
|
option(WITH_CYCLES_OSL "Build Cycles with OSL support" ${_init_CYCLES_OSL})
|
||||||
option(WITH_CYCLES_EMBREE "Build Cycles with Embree support" ON)
|
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 compute_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)
|
||||||
@@ -381,7 +424,6 @@ 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_OPTIX "Enable Cycles OptiX support" OFF)
|
|
||||||
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)
|
||||||
@@ -415,25 +457,13 @@ 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)
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
option(WITH_BOOST "Enable features depending on boost" ON)
|
||||||
option(WITH_CLANG_TIDY "Use Clang Tidy to analyze the source code (only enable for development on Linux using Clang)" OFF)
|
|
||||||
mark_as_advanced(WITH_CLANG_TIDY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
option(WITH_BOOST "Enable features depending on boost" ON)
|
|
||||||
option(WITH_TBB "Enable features depending on TBB (OpenVDB, OpenImageDenoise, sculpt multithreading)" ON)
|
|
||||||
|
|
||||||
# TBB malloc is only supported on for windows currently
|
|
||||||
if(WIN32)
|
|
||||||
option(WITH_TBB_MALLOC_PROXY "Enable the TBB malloc replacement" ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Unit testsing
|
# Unit testsing
|
||||||
option(WITH_GTESTS "Enable GTest unit testing" OFF)
|
option(WITH_GTESTS "Enable GTest unit testing" OFF)
|
||||||
option(WITH_OPENGL_RENDER_TESTS "Enable OpenGL render related unit testing (Experimental)" OFF)
|
option(WITH_OPENGL_RENDER_TESTS "Enable OpenGL render related unit testing (Experimental)" OFF)
|
||||||
option(WITH_OPENGL_DRAW_TESTS "Enable OpenGL UI drawing related unit testing (Experimental)" OFF)
|
option(WITH_OPENGL_DRAW_TESTS "Enable OpenGL UI drawing related unit testing (Experimental)" OFF)
|
||||||
set(TEST_PYTHON_EXE "" CACHE PATH "Python executable to run unit tests")
|
|
||||||
mark_as_advanced(TEST_PYTHON_EXE)
|
|
||||||
|
|
||||||
# Documentation
|
# Documentation
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
@@ -474,8 +504,6 @@ endif()
|
|||||||
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)
|
||||||
option(WITH_LINKER_LLD "Use ld.lld linker which is usually faster than ld.gold" OFF)
|
|
||||||
mark_as_advanced(WITH_LINKER_LLD)
|
|
||||||
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")
|
||||||
@@ -511,8 +539,7 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|||||||
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(
|
find_library( COMPILER_ASAN_LIBRARY NAMES clang_rt.asan-x86_64
|
||||||
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
|
||||||
@@ -527,6 +554,15 @@ if(WIN32)
|
|||||||
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)
|
||||||
|
mark_as_advanced(WITH_WINDOWS_CODESIGN)
|
||||||
|
|
||||||
|
set(WINDOWS_CODESIGN_PFX CACHE FILEPATH "Path to pfx file to use for codesigning.")
|
||||||
|
mark_as_advanced(WINDOWS_CODESIGN_PFX)
|
||||||
|
|
||||||
|
set(WINDOWS_CODESIGN_PFX_PASSWORD CACHE STRING "password for pfx file used for codesigning.")
|
||||||
|
mark_as_advanced(WINDOWS_CODESIGN_PFX_PASSWORD)
|
||||||
|
|
||||||
option(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS "Organize the visual studio projects according to source folder structure." ON)
|
option(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS "Organize the visual studio projects according to source folder structure." ON)
|
||||||
mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS)
|
mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS)
|
||||||
|
|
||||||
@@ -535,19 +571,6 @@ if(WIN32)
|
|||||||
|
|
||||||
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)
|
||||||
|
|
||||||
option(WITH_WINDOWS_BUNDLE_CRT "Bundle the C runtime for install free distribution." ON)
|
|
||||||
mark_as_advanced(WITH_WINDOWS_BUNDLE_CRT)
|
|
||||||
|
|
||||||
option(WITH_WINDOWS_SCCACHE "Use sccache to speed up builds (Ninja builder only)" OFF)
|
|
||||||
mark_as_advanced(WITH_WINDOWS_SCCACHE)
|
|
||||||
|
|
||||||
option(WITH_WINDOWS_PDB "Generate a pdb file for client side stacktraces" ON)
|
|
||||||
mark_as_advanced(WITH_WINDOWS_PDB)
|
|
||||||
|
|
||||||
option(WITH_WINDOWS_STRIPPED_PDB "Use a stripped PDB file" On)
|
|
||||||
mark_as_advanced(WITH_WINDOWS_STRIPPED_PDB)
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# The following only works with the Ninja generator in CMake >= 3.0.
|
# The following only works with the Ninja generator in CMake >= 3.0.
|
||||||
@@ -558,14 +581,8 @@ if("${CMAKE_GENERATOR}" MATCHES "Ninja")
|
|||||||
mark_as_advanced(WITH_NINJA_POOL_JOBS)
|
mark_as_advanced(WITH_NINJA_POOL_JOBS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
# avoid using again
|
||||||
option(WITH_CXX11_ABI "Use native C++11 ABI of compiler" ON)
|
option_defaults_clear()
|
||||||
mark_as_advanced(WITH_CXX11_ABI)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Installation process.
|
|
||||||
option(POSTINSTALL_SCRIPT "Run given CMake script after installation process" OFF)
|
|
||||||
mark_as_advanced(POSTINSTALL_SCRIPT)
|
|
||||||
|
|
||||||
# end option(...)
|
# end option(...)
|
||||||
|
|
||||||
@@ -624,6 +641,12 @@ 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
|
||||||
|
if(WITH_PYTHON_MODULE)
|
||||||
|
set(WITH_HEADLESS ON)
|
||||||
|
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)
|
||||||
@@ -636,30 +659,28 @@ 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)
|
||||||
|
# Explicitly disabled. so disable all deps.
|
||||||
|
macro(set_and_warn
|
||||||
|
_setting _val)
|
||||||
|
if(${${_setting}})
|
||||||
|
message(STATUS "'WITH_BOOST' is disabled: forcing 'set(${_setting} ${_val})'")
|
||||||
|
endif()
|
||||||
|
set(${_setting} ${_val})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_CYCLES OFF)
|
set_and_warn(WITH_CYCLES OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_INTERNATIONAL OFF)
|
set_and_warn(WITH_INTERNATIONAL OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_OPENVDB OFF)
|
set_and_warn(WITH_OPENVDB OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_OPENCOLORIO OFF)
|
set_and_warn(WITH_OPENCOLORIO OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_QUADRIFLOW OFF)
|
elseif(WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_USD OFF)
|
WITH_OPENVDB OR WITH_OPENCOLORIO)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_ALEMBIC OFF)
|
# Keep enabled
|
||||||
|
else()
|
||||||
if(WITH_BOOST AND NOT (WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
# Disable boost if not needed.
|
||||||
WITH_OPENVDB OR WITH_OPENCOLORIO OR WITH_USD OR WITH_ALEMBIC))
|
|
||||||
message(STATUS "No dependencies need 'WITH_BOOST' forcing WITH_BOOST=OFF")
|
|
||||||
set(WITH_BOOST OFF)
|
set(WITH_BOOST OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set_and_warn_dependency(WITH_TBB WITH_CYCLES OFF)
|
|
||||||
set_and_warn_dependency(WITH_TBB WITH_USD OFF)
|
|
||||||
set_and_warn_dependency(WITH_TBB WITH_OPENIMAGEDENOISE OFF)
|
|
||||||
set_and_warn_dependency(WITH_TBB WITH_OPENVDB OFF)
|
|
||||||
set_and_warn_dependency(WITH_TBB WITH_MOD_FLUID OFF)
|
|
||||||
|
|
||||||
# OpenVDB uses 'half' type from OpenEXR & fails to link without OpenEXR enabled.
|
|
||||||
set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_OPENVDB OFF)
|
|
||||||
|
|
||||||
# auto enable openimageio for cycles
|
# auto enable openimageio for cycles
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
set(WITH_OPENIMAGEIO ON)
|
set(WITH_OPENIMAGEIO ON)
|
||||||
@@ -689,15 +710,13 @@ if(WITH_INSTALL_PORTABLE)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GHOST_SDL OR WITH_HEADLESS)
|
if(WITH_GHOST_SDL OR WITH_HEADLESS)
|
||||||
set(WITH_GHOST_WAYLAND OFF)
|
set(WITH_X11 OFF)
|
||||||
set(WITH_GHOST_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)
|
||||||
set(WITH_XR_OPENXR OFF)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_CPU_SSE)
|
if(WITH_CPU_SSE)
|
||||||
@@ -733,12 +752,14 @@ if(NOT WITH_CUDA_DYNLOAD)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Check check if submodules are cloned
|
# Check for valid directories
|
||||||
|
# ... a partial checkout may cause this.
|
||||||
|
#
|
||||||
|
# note: we need to check for a known subdir in both cases.
|
||||||
|
# since uninitialized git submodules will give blank dirs
|
||||||
|
|
||||||
if(WITH_INTERNATIONAL)
|
if(WITH_INTERNATIONAL)
|
||||||
file(GLOB RESULT "${CMAKE_SOURCE_DIR}/release/datafiles/locale")
|
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/datafiles/locale/languages")
|
||||||
list(LENGTH RESULT DIR_LEN)
|
|
||||||
if(DIR_LEN EQUAL 0)
|
|
||||||
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 "
|
||||||
@@ -760,9 +781,7 @@ if(WITH_PYTHON)
|
|||||||
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()
|
||||||
|
|
||||||
file(GLOB RESULT "${CMAKE_SOURCE_DIR}/release/scripts/addons")
|
if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/scripts/addons/modules")
|
||||||
list(LENGTH RESULT DIR_LEN)
|
|
||||||
if(DIR_LEN EQUAL 0)
|
|
||||||
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 "
|
||||||
@@ -811,14 +830,67 @@ if(NOT CMAKE_BUILD_TYPE MATCHES "Release")
|
|||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
|
set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
|
||||||
endif()
|
endif()
|
||||||
if(COMPILER_ASAN_LIBRARY)
|
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()
|
endif()
|
||||||
|
|
||||||
|
#-----------------------------------------------------------------------------
|
||||||
|
#Platform specifics
|
||||||
|
|
||||||
|
if(WITH_X11)
|
||||||
|
find_package(X11 REQUIRED)
|
||||||
|
|
||||||
|
find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
|
||||||
|
mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
|
||||||
|
|
||||||
|
list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
|
||||||
|
|
||||||
|
if(WITH_X11_XINPUT)
|
||||||
|
if(X11_Xinput_LIB)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "LibXi not found. Disable WITH_X11_XINPUT if you
|
||||||
|
want to build without tablet support")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WITH_X11_XF86VMODE)
|
||||||
|
# XXX, why doesn't cmake make this available?
|
||||||
|
find_library(X11_Xxf86vmode_LIB Xxf86vm ${X11_LIB_SEARCH_PATH})
|
||||||
|
mark_as_advanced(X11_Xxf86vmode_LIB)
|
||||||
|
if(X11_Xxf86vmode_LIB)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xxf86vmode_LIB})
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "libXxf86vm not found. Disable WITH_X11_XF86VMODE if you
|
||||||
|
want to build without")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WITH_X11_XFIXES)
|
||||||
|
if(X11_Xfixes_LIB)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xfixes_LIB})
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "libXfixes not found. Disable WITH_X11_XFIXES if you
|
||||||
|
want to build without")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WITH_X11_ALPHA)
|
||||||
|
find_library(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH})
|
||||||
|
mark_as_advanced(X11_Xrender_LIB)
|
||||||
|
if(X11_Xrender_LIB)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS ${X11_Xrender_LIB})
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "libXrender not found. Disable WITH_X11_ALPHA if you
|
||||||
|
want to build without")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
# Main Platform Checks
|
# Main Platform Checks
|
||||||
#
|
#
|
||||||
@@ -900,7 +972,7 @@ if(MSVC)
|
|||||||
# 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 OR CMAKE_OSX_ARCHITECTURES MATCHES arm64)
|
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__)
|
||||||
@@ -928,28 +1000,6 @@ 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()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
|
||||||
list(APPEND OPENVDB_DEFINITIONS -DWITH_OPENVDB)
|
|
||||||
|
|
||||||
if(WITH_OPENVDB_3_ABI_COMPATIBLE)
|
|
||||||
list(APPEND OPENVDB_DEFINITIONS -DOPENVDB_3_ABI_COMPATIBLE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND OPENVDB_INCLUDE_DIRS
|
|
||||||
${BOOST_INCLUDE_DIR}
|
|
||||||
${TBB_INCLUDE_DIRS}
|
|
||||||
${OPENEXR_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
list(APPEND OPENVDB_LIBRARIES ${OPENEXR_LIBRARIES} ${ZLIB_LIBRARIES})
|
|
||||||
|
|
||||||
if(WITH_OPENVDB_BLOSC)
|
|
||||||
list(APPEND OPENVDB_DEFINITIONS -DWITH_OPENVDB_BLOSC)
|
|
||||||
list(APPEND OPENVDB_LIBRARIES ${BLOSC_LIBRARIES} ${ZLIB_LIBRARIES})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND OPENVDB_LIBRARIES ${BOOST_LIBRARIES} ${TBB_LIBRARIES})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure OpenGL.
|
# Configure OpenGL.
|
||||||
|
|
||||||
@@ -973,7 +1023,7 @@ if(WITH_GL_PROFILE_ES20)
|
|||||||
)
|
)
|
||||||
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")
|
||||||
@@ -1033,10 +1083,7 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GL_EGL)
|
if(WITH_GL_EGL)
|
||||||
find_package(OpenGL REQUIRED EGL)
|
list(APPEND GL_DEFINITIONS -DWITH_GL_EGL)
|
||||||
list(APPEND BLENDER_GL_LIBRARIES OpenGL::EGL)
|
|
||||||
|
|
||||||
list(APPEND GL_DEFINITIONS -DWITH_GL_EGL -DGLEW_EGL -DGLEW_INC_EGL)
|
|
||||||
|
|
||||||
if(WITH_SYSTEM_GLES)
|
if(WITH_SYSTEM_GLES)
|
||||||
if(NOT OPENGLES_EGL_LIBRARY)
|
if(NOT OPENGLES_EGL_LIBRARY)
|
||||||
@@ -1046,7 +1093,7 @@ if(WITH_GL_EGL)
|
|||||||
)
|
)
|
||||||
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")
|
||||||
@@ -1086,6 +1133,10 @@ else()
|
|||||||
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
|
list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(WITH_GL_EGL)
|
||||||
|
list(APPEND GL_DEFINITIONS -DWITH_EGL)
|
||||||
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Configure OpenMP.
|
# Configure OpenMP.
|
||||||
if(WITH_OPENMP)
|
if(WITH_OPENMP)
|
||||||
@@ -1128,7 +1179,6 @@ if(WITH_SYSTEM_GLEW)
|
|||||||
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(GLEW_INCLUDE_PATH "${GLEW_INCLUDE_DIR}")
|
|
||||||
set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
|
set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
|
||||||
else()
|
else()
|
||||||
if(WITH_GLEW_ES)
|
if(WITH_GLEW_ES)
|
||||||
@@ -1157,6 +1207,10 @@ else()
|
|||||||
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)
|
||||||
|
list(APPEND GL_DEFINITIONS -DGLEW_INC_EGL)
|
||||||
|
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()
|
||||||
@@ -1243,7 +1297,7 @@ endif()
|
|||||||
|
|
||||||
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;-DCERES_USE_CXX_THREADS")
|
set(CERES_DEFINES -DCERES_STD_UNORDERED_MAP)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@@ -1337,16 +1391,13 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
|||||||
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_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)
|
||||||
|
|
||||||
# C-only.
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_NULL -Wnonnull)
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ABSOLUTE_VALUE -Wabsolute-value)
|
|
||||||
|
|
||||||
# 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)
|
||||||
@@ -1453,7 +1504,6 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|||||||
|
|
||||||
# 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_VARIABLE -Wno-unused-variable)
|
|
||||||
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)
|
||||||
@@ -1472,8 +1522,6 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|||||||
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)
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNDEFINED_VAR_TEMPLATE -Wno-undefined-var-template)
|
|
||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_INSTANTIATION_AFTER_SPECIALIZATION -Wno-instantiation-after-specialization)
|
|
||||||
|
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
|
|
||||||
@@ -1518,7 +1566,7 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
|||||||
|
|
||||||
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 initialization in c++ constructors
|
set(_WARNINGS "${_WARNINGS} /w35038") #order of initialisation in c++ constructors
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
|
string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
|
||||||
@@ -1558,16 +1606,17 @@ if(WITH_PYTHON)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MSVC)
|
if(
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++17")
|
|
||||||
elseif(
|
|
||||||
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"
|
||||||
)
|
)
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
|
# TODO(sergey): Do we want c++11 or gnu-c++11 here?
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||||
|
elseif(MSVC)
|
||||||
|
# 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++17 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
|
||||||
@@ -1581,12 +1630,6 @@ if(
|
|||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
if(NOT WITH_CXX11_ABI)
|
|
||||||
set(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -D_GLIBCXX_USE_CXX11_ABI=0")
|
|
||||||
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
|
||||||
# eg: -Wno-uninitialized
|
# eg: -Wno-uninitialized
|
||||||
set(CMAKE_C_FLAGS "${C_WARNINGS} ${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS}")
|
set(CMAKE_C_FLAGS "${C_WARNINGS} ${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS}")
|
||||||
@@ -1628,6 +1671,10 @@ endif()
|
|||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Libraries
|
# Libraries
|
||||||
|
|
||||||
|
if(WITH_GTESTS)
|
||||||
|
include(GTestTesting)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(WITH_BLENDER)
|
if(WITH_BLENDER)
|
||||||
add_subdirectory(intern)
|
add_subdirectory(intern)
|
||||||
add_subdirectory(extern)
|
add_subdirectory(extern)
|
||||||
@@ -1715,17 +1762,14 @@ if(FIRST_RUN)
|
|||||||
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_XR_OPENXR)
|
|
||||||
info_cfg_option(WITH_OPENIMAGEDENOISE)
|
info_cfg_option(WITH_OPENIMAGEDENOISE)
|
||||||
info_cfg_option(WITH_OPENVDB)
|
info_cfg_option(WITH_OPENVDB)
|
||||||
info_cfg_option(WITH_ALEMBIC)
|
info_cfg_option(WITH_ALEMBIC)
|
||||||
info_cfg_option(WITH_QUADRIFLOW)
|
|
||||||
info_cfg_option(WITH_USD)
|
|
||||||
info_cfg_option(WITH_TBB)
|
|
||||||
|
|
||||||
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_text("System Options:")
|
info_cfg_text("System Options:")
|
||||||
info_cfg_option(WITH_INSTALL_PORTABLE)
|
info_cfg_option(WITH_INSTALL_PORTABLE)
|
||||||
|
113
GNUmakefile
113
GNUmakefile
@@ -32,7 +32,6 @@ Convenience Targets
|
|||||||
* debug: Build a debug binary.
|
* debug: Build a debug binary.
|
||||||
* full: Enable all supported dependencies & options.
|
* full: Enable all supported dependencies & options.
|
||||||
* lite: Disable non essential features for a smaller binary and faster build.
|
* lite: Disable non essential features for a smaller binary and faster build.
|
||||||
* release Complete build with all options enabled including CUDA and Optix, matching the releases on blender.org
|
|
||||||
* headless: Build without an interface (renderfarm or server automation).
|
* headless: Build without an interface (renderfarm or server automation).
|
||||||
* cycles: Build Cycles standalone only, without Blender.
|
* cycles: Build Cycles standalone only, without Blender.
|
||||||
* bpy: Build as a python module which can be loaded from python directly.
|
* bpy: Build as a python module which can be loaded from python directly.
|
||||||
@@ -63,7 +62,8 @@ Testing Targets
|
|||||||
Not associated with building Blender.
|
Not associated with building Blender.
|
||||||
|
|
||||||
* test:
|
* test:
|
||||||
Run automated tests with ctest.
|
Run ctest, currently tests import/export,
|
||||||
|
operator execution and that python modules load
|
||||||
* test_cmake:
|
* test_cmake:
|
||||||
Runs our own cmake file checker
|
Runs our own cmake file checker
|
||||||
which detects errors in the cmake file list definitions
|
which detects errors in the cmake file list definitions
|
||||||
@@ -72,6 +72,17 @@ Testing Targets
|
|||||||
which are tagged to use the stricter formatting
|
which are tagged to use the stricter formatting
|
||||||
* test_deprecated:
|
* test_deprecated:
|
||||||
Checks for deprecation tags in our code which may need to be removed
|
Checks for deprecation tags in our code which may need to be removed
|
||||||
|
* test_style_c:
|
||||||
|
Checks C/C++ conforms with blenders style guide:
|
||||||
|
https://wiki.blender.org/wiki/Source/Code_Style
|
||||||
|
* test_style_c_qtc:
|
||||||
|
Same as test_style but outputs QtCreator tasks format
|
||||||
|
* test_style_osl:
|
||||||
|
Checks OpenShadingLanguage conforms with blenders style guide:
|
||||||
|
https://wiki.blender.org/wiki/Source/Code_Style
|
||||||
|
* test_style_osl_qtc:
|
||||||
|
Checks OpenShadingLanguage conforms with blenders style guide:
|
||||||
|
https://wiki.blender.org/wiki/Source/Code_Style
|
||||||
|
|
||||||
Static Source Code Checking
|
Static Source Code Checking
|
||||||
Not associated with building Blender.
|
Not associated with building Blender.
|
||||||
@@ -108,7 +119,7 @@ Utilities
|
|||||||
Example
|
Example
|
||||||
make icons_geom BLENDER_BIN=/path/to/blender
|
make icons_geom BLENDER_BIN=/path/to/blender
|
||||||
|
|
||||||
* source_archive:
|
* tgz:
|
||||||
Create a compressed archive of the source code.
|
Create a compressed archive of the source code.
|
||||||
|
|
||||||
* update:
|
* update:
|
||||||
@@ -142,10 +153,6 @@ Information
|
|||||||
endef
|
endef
|
||||||
# HELP_TEXT (end)
|
# HELP_TEXT (end)
|
||||||
|
|
||||||
# This makefile is not meant for Windows
|
|
||||||
ifeq ($(OS),Windows_NT)
|
|
||||||
$(error On Windows, use "cmd //c make.bat" instead of "make")
|
|
||||||
endif
|
|
||||||
|
|
||||||
# System Vars
|
# System Vars
|
||||||
OS:=$(shell uname -s)
|
OS:=$(shell uname -s)
|
||||||
@@ -157,8 +164,9 @@ CPU:=$(shell uname -m)
|
|||||||
BLENDER_DIR:=$(shell pwd -P)
|
BLENDER_DIR:=$(shell pwd -P)
|
||||||
BUILD_TYPE:=Release
|
BUILD_TYPE:=Release
|
||||||
|
|
||||||
# CMake arguments, assigned to local variable to make it mutable.
|
ifndef BUILD_CMAKE_ARGS
|
||||||
CMAKE_CONFIG_ARGS := $(BUILD_CMAKE_ARGS)
|
BUILD_CMAKE_ARGS:=
|
||||||
|
endif
|
||||||
|
|
||||||
ifndef BUILD_DIR
|
ifndef BUILD_DIR
|
||||||
BUILD_DIR:=$(shell dirname "$(BLENDER_DIR)")/build_$(OS_NCASE)
|
BUILD_DIR:=$(shell dirname "$(BLENDER_DIR)")/build_$(OS_NCASE)
|
||||||
@@ -185,16 +193,6 @@ ifndef PYTHON
|
|||||||
PYTHON:=python3
|
PYTHON:=python3
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# For macOS python3 is not installed by default, so fallback to python binary
|
|
||||||
# in libraries, or python 2 for running make update to get it.
|
|
||||||
ifeq ($(OS_NCASE),darwin)
|
|
||||||
ifeq (, $(shell command -v $(PYTHON)))
|
|
||||||
PYTHON:=../lib/darwin/python/bin/python3.7m
|
|
||||||
ifeq (, $(shell command -v $(PYTHON)))
|
|
||||||
PYTHON:=python
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# additional targets for the build configuration
|
# additional targets for the build configuration
|
||||||
@@ -206,38 +204,34 @@ ifneq "$(findstring debug, $(MAKECMDGOALS))" ""
|
|||||||
endif
|
endif
|
||||||
ifneq "$(findstring full, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring full, $(MAKECMDGOALS))" ""
|
||||||
BUILD_DIR:=$(BUILD_DIR)_full
|
BUILD_DIR:=$(BUILD_DIR)_full
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/blender_full.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/blender_full.cmake"
|
||||||
endif
|
endif
|
||||||
ifneq "$(findstring lite, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring lite, $(MAKECMDGOALS))" ""
|
||||||
BUILD_DIR:=$(BUILD_DIR)_lite
|
BUILD_DIR:=$(BUILD_DIR)_lite
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/blender_lite.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/blender_lite.cmake"
|
||||||
endif
|
|
||||||
ifneq "$(findstring release, $(MAKECMDGOALS))" ""
|
|
||||||
BUILD_DIR:=$(BUILD_DIR)_release
|
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/blender_release.cmake" $(CMAKE_CONFIG_ARGS)
|
|
||||||
endif
|
endif
|
||||||
ifneq "$(findstring cycles, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring cycles, $(MAKECMDGOALS))" ""
|
||||||
BUILD_DIR:=$(BUILD_DIR)_cycles
|
BUILD_DIR:=$(BUILD_DIR)_cycles
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/cycles_standalone.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/cycles_standalone.cmake"
|
||||||
endif
|
endif
|
||||||
ifneq "$(findstring headless, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring headless, $(MAKECMDGOALS))" ""
|
||||||
BUILD_DIR:=$(BUILD_DIR)_headless
|
BUILD_DIR:=$(BUILD_DIR)_headless
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/blender_headless.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/blender_headless.cmake"
|
||||||
endif
|
endif
|
||||||
ifneq "$(findstring bpy, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring bpy, $(MAKECMDGOALS))" ""
|
||||||
BUILD_DIR:=$(BUILD_DIR)_bpy
|
BUILD_DIR:=$(BUILD_DIR)_bpy
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/bpy_module.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/bpy_module.cmake"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq "$(findstring developer, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring developer, $(MAKECMDGOALS))" ""
|
||||||
CMAKE_CONFIG_ARGS:=-C"$(BLENDER_DIR)/build_files/cmake/config/blender_developer.cmake" $(CMAKE_CONFIG_ARGS)
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -C"$(BLENDER_DIR)/build_files/cmake/config/blender_developer.cmake"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# build tool
|
# build tool
|
||||||
|
|
||||||
ifneq "$(findstring ninja, $(MAKECMDGOALS))" ""
|
ifneq "$(findstring ninja, $(MAKECMDGOALS))" ""
|
||||||
CMAKE_CONFIG_ARGS:=$(CMAKE_CONFIG_ARGS) -G Ninja
|
BUILD_CMAKE_ARGS:=$(BUILD_CMAKE_ARGS) -G Ninja
|
||||||
BUILD_COMMAND:=ninja
|
BUILD_COMMAND:=ninja
|
||||||
DEPS_BUILD_COMMAND:=ninja
|
DEPS_BUILD_COMMAND:=ninja
|
||||||
else
|
else
|
||||||
@@ -273,10 +267,7 @@ ifndef NPROCS
|
|||||||
ifeq ($(OS), Linux)
|
ifeq ($(OS), Linux)
|
||||||
NPROCS:=$(shell nproc)
|
NPROCS:=$(shell nproc)
|
||||||
endif
|
endif
|
||||||
ifeq ($(OS), NetBSD)
|
ifneq (,$(filter $(OS),Darwin FreeBSD NetBSD))
|
||||||
NPROCS:=$(shell getconf NPROCESSORS_ONLN)
|
|
||||||
endif
|
|
||||||
ifneq (,$(filter $(OS),Darwin FreeBSD))
|
|
||||||
NPROCS:=$(shell sysctl -n hw.ncpu)
|
NPROCS:=$(shell sysctl -n hw.ncpu)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
@@ -285,7 +276,7 @@ endif
|
|||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# Macro for configuring cmake
|
# Macro for configuring cmake
|
||||||
|
|
||||||
CMAKE_CONFIG = cmake $(CMAKE_CONFIG_ARGS) \
|
CMAKE_CONFIG = cmake $(BUILD_CMAKE_ARGS) \
|
||||||
-H"$(BLENDER_DIR)" \
|
-H"$(BLENDER_DIR)" \
|
||||||
-B"$(BUILD_DIR)" \
|
-B"$(BUILD_DIR)" \
|
||||||
-DCMAKE_BUILD_TYPE_INIT:STRING=$(BUILD_TYPE)
|
-DCMAKE_BUILD_TYPE_INIT:STRING=$(BUILD_TYPE)
|
||||||
@@ -326,7 +317,6 @@ all: .FORCE
|
|||||||
debug: all
|
debug: all
|
||||||
full: all
|
full: all
|
||||||
lite: all
|
lite: all
|
||||||
release: all
|
|
||||||
cycles: all
|
cycles: all
|
||||||
headless: all
|
headless: all
|
||||||
bpy: all
|
bpy: all
|
||||||
@@ -385,7 +375,7 @@ package_archive: .FORCE
|
|||||||
# Tests
|
# Tests
|
||||||
#
|
#
|
||||||
test: .FORCE
|
test: .FORCE
|
||||||
$(PYTHON) ./build_files/utils/make_test.py "$(BUILD_DIR)"
|
python3 ./build_files/utils/make_test.py "$(BUILD_DIR)"
|
||||||
|
|
||||||
# run pep8 check check on scripts we distribute.
|
# run pep8 check check on scripts we distribute.
|
||||||
test_pep8: .FORCE
|
test_pep8: .FORCE
|
||||||
@@ -401,6 +391,45 @@ test_cmake: .FORCE
|
|||||||
test_deprecated: .FORCE
|
test_deprecated: .FORCE
|
||||||
$(PYTHON) tests/check_deprecated.py
|
$(PYTHON) tests/check_deprecated.py
|
||||||
|
|
||||||
|
test_style_c: .FORCE
|
||||||
|
# run our own checks on C/C++ style
|
||||||
|
PYTHONIOENCODING=utf_8 $(PYTHON) \
|
||||||
|
"$(BLENDER_DIR)/source/tools/check_source/check_style_c.py" \
|
||||||
|
"$(BLENDER_DIR)/source/blender" \
|
||||||
|
"$(BLENDER_DIR)/source/creator" \
|
||||||
|
--no-length-check
|
||||||
|
|
||||||
|
test_style_c_qtc: .FORCE
|
||||||
|
# run our own checks on C/C++ style
|
||||||
|
USE_QTC_TASK=1 \
|
||||||
|
PYTHONIOENCODING=utf_8 $(PYTHON) \
|
||||||
|
"$(BLENDER_DIR)/source/tools/check_source/check_style_c.py" \
|
||||||
|
"$(BLENDER_DIR)/source/blender" \
|
||||||
|
"$(BLENDER_DIR)/source/creator" \
|
||||||
|
--no-length-check \
|
||||||
|
> \
|
||||||
|
"$(BLENDER_DIR)/test_style.tasks"
|
||||||
|
@echo "written: test_style.tasks"
|
||||||
|
|
||||||
|
|
||||||
|
test_style_osl: .FORCE
|
||||||
|
# run our own checks on C/C++ style
|
||||||
|
PYTHONIOENCODING=utf_8 $(PYTHON) \
|
||||||
|
"$(BLENDER_DIR)/source/tools/check_source/check_style_c.py" \
|
||||||
|
"$(BLENDER_DIR)/intern/cycles/kernel/shaders" \
|
||||||
|
"$(BLENDER_DIR)/release/scripts/templates_osl"
|
||||||
|
|
||||||
|
|
||||||
|
test_style_osl_qtc: .FORCE
|
||||||
|
# run our own checks on C/C++ style
|
||||||
|
USE_QTC_TASK=1 \
|
||||||
|
PYTHONIOENCODING=utf_8 $(PYTHON) \
|
||||||
|
"$(BLENDER_DIR)/source/tools/check_source/check_style_c.py" \
|
||||||
|
"$(BLENDER_DIR)/intern/cycles/kernel/shaders" \
|
||||||
|
"$(BLENDER_DIR)/release/scripts/templates_osl" \
|
||||||
|
> \
|
||||||
|
"$(BLENDER_DIR)/test_style.tasks"
|
||||||
|
@echo "written: test_style.tasks"
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# Project Files
|
# Project Files
|
||||||
@@ -487,8 +516,8 @@ check_descriptions: .FORCE
|
|||||||
# Utilities
|
# Utilities
|
||||||
#
|
#
|
||||||
|
|
||||||
source_archive: .FORCE
|
tgz: .FORCE
|
||||||
./build_files/utils/make_source_archive.sh
|
./build_files/utils/build_tgz.sh
|
||||||
|
|
||||||
INKSCAPE_BIN?="inkscape"
|
INKSCAPE_BIN?="inkscape"
|
||||||
icons: .FORCE
|
icons: .FORCE
|
||||||
@@ -502,11 +531,11 @@ icons_geom: .FORCE
|
|||||||
"$(BLENDER_DIR)/release/datafiles/blender_icons_geom_update.py"
|
"$(BLENDER_DIR)/release/datafiles/blender_icons_geom_update.py"
|
||||||
|
|
||||||
update: .FORCE
|
update: .FORCE
|
||||||
$(PYTHON) ./build_files/utils/make_update.py
|
python3 ./build_files/utils/make_update.py
|
||||||
|
|
||||||
format: .FORCE
|
format: .FORCE
|
||||||
PATH="../lib/${OS_NCASE}_${CPU}/llvm/bin/:../lib/${OS_NCASE}_centos7_${CPU}/llvm/bin/:../lib/${OS_NCASE}/llvm/bin/:$(PATH)" \
|
PATH="../lib/${OS_NCASE}/llvm/bin/:$(PATH)" \
|
||||||
$(PYTHON) source/tools/utils_maintenance/clang_format_paths.py $(PATHS)
|
python3 source/tools/utils_maintenance/clang_format_paths.py $(PATHS)
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
# build_deps 2015 x64 / build_deps 2015 x86
|
# build_deps 2015 x64 / build_deps 2015 x86
|
||||||
#
|
#
|
||||||
# MAC OS X USAGE:
|
# MAC OS X USAGE:
|
||||||
# Install with homebrew: brew install cmake autoconf automake libtool yasm nasm bison
|
# Install with homebrew: brew install cmake autoconf automake libtool yasm nasm
|
||||||
# Run "make deps" from main Blender directory
|
# Run "make deps" from main Blender directory
|
||||||
#
|
#
|
||||||
# LINUX USAGE:
|
# LINUX USAGE:
|
||||||
@@ -48,7 +48,11 @@ include(cmake/options.cmake)
|
|||||||
include(cmake/versions.cmake)
|
include(cmake/versions.cmake)
|
||||||
|
|
||||||
if(ENABLE_MINGW64)
|
if(ENABLE_MINGW64)
|
||||||
include(cmake/setup_mingw64.cmake)
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
|
include(cmake/setup_mingw64.cmake)
|
||||||
|
else()
|
||||||
|
include(cmake/setup_mingw32.cmake)
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
set(mingw_LIBDIR ${LIBDIR})
|
set(mingw_LIBDIR ${LIBDIR})
|
||||||
endif()
|
endif()
|
||||||
@@ -60,6 +64,7 @@ include(cmake/jpeg.cmake)
|
|||||||
include(cmake/boost.cmake)
|
include(cmake/boost.cmake)
|
||||||
include(cmake/blosc.cmake)
|
include(cmake/blosc.cmake)
|
||||||
include(cmake/pthreads.cmake)
|
include(cmake/pthreads.cmake)
|
||||||
|
include(cmake/ilmbase.cmake)
|
||||||
include(cmake/openexr.cmake)
|
include(cmake/openexr.cmake)
|
||||||
include(cmake/freetype.cmake)
|
include(cmake/freetype.cmake)
|
||||||
include(cmake/freeglut.cmake)
|
include(cmake/freeglut.cmake)
|
||||||
@@ -76,7 +81,6 @@ include(cmake/llvm.cmake)
|
|||||||
include(cmake/clang.cmake)
|
include(cmake/clang.cmake)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
include(cmake/openmp.cmake)
|
include(cmake/openmp.cmake)
|
||||||
include(cmake/nasm.cmake)
|
|
||||||
endif()
|
endif()
|
||||||
include(cmake/openimageio.cmake)
|
include(cmake/openimageio.cmake)
|
||||||
include(cmake/tiff.cmake)
|
include(cmake/tiff.cmake)
|
||||||
@@ -88,31 +92,29 @@ include(cmake/python.cmake)
|
|||||||
include(cmake/python_site_packages.cmake)
|
include(cmake/python_site_packages.cmake)
|
||||||
include(cmake/package_python.cmake)
|
include(cmake/package_python.cmake)
|
||||||
include(cmake/numpy.cmake)
|
include(cmake/numpy.cmake)
|
||||||
include(cmake/usd.cmake)
|
if(UNIX AND NOT APPLE)
|
||||||
if(UNIX)
|
|
||||||
# Rely on PugiXML compiled with OpenImageIO
|
# Rely on PugiXML compiled with OpenImageIO
|
||||||
else()
|
else()
|
||||||
include(cmake/pugixml.cmake)
|
include(cmake/pugixml.cmake)
|
||||||
endif()
|
endif()
|
||||||
if((NOT APPLE) OR ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
|
include(cmake/openimagedenoise.cmake)
|
||||||
include(cmake/ispc.cmake)
|
|
||||||
include(cmake/openimagedenoise.cmake)
|
|
||||||
include(cmake/embree.cmake)
|
|
||||||
endif()
|
|
||||||
if(NOT APPLE)
|
|
||||||
include(cmake/xr_openxr.cmake)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WITH_WEBP)
|
if(WITH_WEBP)
|
||||||
include(cmake/webp.cmake)
|
include(cmake/webp.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(WITH_EMBREE)
|
||||||
|
include(cmake/embree.cmake)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
# HMD branch deps
|
||||||
|
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()
|
||||||
|
|
||||||
@@ -126,10 +128,10 @@ if(NOT WIN32 OR ENABLE_MINGW64)
|
|||||||
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/opus.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/ffmpeg.cmake)
|
include(cmake/ffmpeg.cmake)
|
||||||
include(cmake/fftw.cmake)
|
include(cmake/fftw.cmake)
|
||||||
include(cmake/sndfile.cmake)
|
include(cmake/sndfile.cmake)
|
||||||
@@ -155,9 +157,4 @@ if(UNIX)
|
|||||||
include(cmake/sqlite.cmake)
|
include(cmake/sqlite.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
include(cmake/libglu.cmake)
|
|
||||||
include(cmake/mesa.cmake)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(cmake/harvest.cmake)
|
include(cmake/harvest.cmake)
|
||||||
|
@@ -16,6 +16,22 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
|
if(ALEMBIC_HDF5)
|
||||||
|
set(ALEMBIC_HDF5_HL)
|
||||||
|
# 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
|
||||||
|
# point in time anyhow
|
||||||
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
|
set(ALEMBIC_HDF5_HL -DHDF5_hdf5_hl_LIBRARY=${LIBDIR}/hdf5/lib/libhdf5_hl_D.${LIBEXT})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(ALEMBIC_ILMBASE ${LIBDIR}/openexr)
|
||||||
|
else()
|
||||||
|
set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(ALEMBIC_EXTRA_ARGS
|
set(ALEMBIC_EXTRA_ARGS
|
||||||
-DBUILDSTATIC=ON
|
-DBUILDSTATIC=ON
|
||||||
-DLINKSTATIC=ON
|
-DLINKSTATIC=ON
|
||||||
@@ -24,18 +40,17 @@ set(ALEMBIC_EXTRA_ARGS
|
|||||||
-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=OFF
|
-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
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
-DILMBASE_ROOT=${ALEMBIC_ILMBASE}
|
||||||
-DILMBASE_ROOT=${LIBDIR}/openexr
|
-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR
|
||||||
-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${LIBDIR}/openexr/include/OpenEXR
|
-DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_HALF_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IEX_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DALEMBIC_ILMBASE_IEXMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IexMath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DUSE_PYILMBASE=0
|
-DUSE_PYILMBASE=0
|
||||||
-DUSE_PYALEMBIC=0
|
-DUSE_PYALEMBIC=0
|
||||||
-DUSE_ARNOLD=0
|
-DUSE_ARNOLD=0
|
||||||
@@ -43,6 +58,7 @@ set(ALEMBIC_EXTRA_ARGS
|
|||||||
-DUSE_PRMAN=0
|
-DUSE_PRMAN=0
|
||||||
-DUSE_HDF5=Off
|
-DUSE_HDF5=Off
|
||||||
-DUSE_STATIC_HDF5=Off
|
-DUSE_STATIC_HDF5=Off
|
||||||
|
-DHDF5_ROOT=${LIBDIR}/hdf5
|
||||||
-DUSE_TESTS=Off
|
-DUSE_TESTS=Off
|
||||||
-DALEMBIC_NO_OPENGL=1
|
-DALEMBIC_NO_OPENGL=1
|
||||||
-DUSE_BINARIES=ON
|
-DUSE_BINARIES=ON
|
||||||
@@ -51,6 +67,7 @@ set(ALEMBIC_EXTRA_ARGS
|
|||||||
-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}
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_alembic
|
ExternalProject_Add(external_alembic
|
||||||
@@ -83,5 +100,6 @@ add_dependencies(
|
|||||||
external_alembic
|
external_alembic
|
||||||
external_boost
|
external_boost
|
||||||
external_zlib
|
external_zlib
|
||||||
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
)
|
)
|
||||||
|
@@ -29,11 +29,13 @@ set(BLOSC_EXTRA_ARGS
|
|||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
# Prevent blosc from including it's own local copy of zlib in the object file
|
if(WIN32)
|
||||||
# and cause linker errors with everybody else.
|
#prevent blosc from including it's own local copy of zlib in the object file
|
||||||
set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
|
#and cause linker errors with everybody else
|
||||||
-DPREFER_EXTERNAL_ZLIB=ON
|
set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
|
||||||
)
|
-DPREFER_EXTERNAL_ZLIB=ON
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_blosc
|
ExternalProject_Add(external_blosc
|
||||||
URL ${BLOSC_URI}
|
URL ${BLOSC_URI}
|
||||||
|
@@ -29,22 +29,22 @@ if(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)
|
||||||
set(BOOST_TOOLSET toolset=msvc-14.1)
|
set(BOOST_TOOLSET toolset=msvc-14.0)
|
||||||
set(BOOST_COMPILER_STRING -vc141)
|
set(BOOST_COMPILER_STRING -vc140)
|
||||||
|
endif()
|
||||||
set(BOOST_CONFIGURE_COMMAND bootstrap.bat)
|
set(BOOST_CONFIGURE_COMMAND bootstrap.bat)
|
||||||
set(BOOST_BUILD_COMMAND bjam)
|
set(BOOST_BUILD_COMMAND bjam)
|
||||||
set(BOOST_BUILD_OPTIONS runtime-link=shared )
|
set(BOOST_BUILD_OPTIONS runtime-link=static )
|
||||||
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-${BOOST_VERSION_NODOTS_SHORT}/ ${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=clang-darwin cxxflags=${PLATFORM_CXXFLAGS} linkflags=${PLATFORM_LDFLAGS} visibility=global --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()
|
||||||
@@ -72,9 +72,6 @@ set(BOOST_OPTIONS
|
|||||||
--with-serialization
|
--with-serialization
|
||||||
--with-program_options
|
--with-program_options
|
||||||
--with-iostreams
|
--with-iostreams
|
||||||
-sNO_BZIP2=1
|
|
||||||
-sNO_LZMA=1
|
|
||||||
-sNO_ZSTD=1
|
|
||||||
${BOOST_TOOLSET}
|
${BOOST_TOOLSET}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -25,8 +25,6 @@ if(UNIX AND NOT APPLE)
|
|||||||
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})
|
||||||
else()
|
|
||||||
set(BZIP2_CONFIGURE_ENV ${CONFIGURE_ENV})
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_bzip2
|
ExternalProject_Add(external_bzip2
|
||||||
|
@@ -17,20 +17,13 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
if(APPLE)
|
|
||||||
set(_libtoolize_name glibtoolize)
|
|
||||||
else()
|
|
||||||
set(_libtoolize_name libtoolize)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_required_software
|
set(_required_software
|
||||||
autoconf
|
autoconf
|
||||||
automake
|
automake
|
||||||
${_libtoolize_name}
|
libtoolize
|
||||||
nasm
|
nasm
|
||||||
yasm
|
yasm
|
||||||
tclsh
|
tclsh
|
||||||
bison
|
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(_software ${_required_software})
|
foreach(_software ${_required_software})
|
||||||
@@ -41,12 +34,6 @@ if(UNIX)
|
|||||||
unset(_software_find CACHE)
|
unset(_software_find CACHE)
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
if(NOT EXISTS "/usr/local/opt/bison/bin/bison")
|
|
||||||
set(_software_missing "${_software_missing} bison")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_software_missing)
|
if(_software_missing)
|
||||||
message(
|
message(
|
||||||
"\n"
|
"\n"
|
||||||
@@ -57,7 +44,7 @@ if(UNIX)
|
|||||||
" apt install autoconf automake libtool yasm nasm tcl\n"
|
" apt install autoconf automake libtool yasm nasm tcl\n"
|
||||||
"\n"
|
"\n"
|
||||||
"On macOS (with homebrew):\n"
|
"On macOS (with homebrew):\n"
|
||||||
" brew install cmake autoconf automake libtool yasm nasm bison\n"
|
" brew install cmake autoconf automake libtool yasm nasm\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Other platforms:\n"
|
"Other platforms:\n"
|
||||||
" Install equivalent packages.\n")
|
" Install equivalent packages.\n")
|
||||||
|
@@ -19,8 +19,8 @@
|
|||||||
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=MD
|
-DLLVM_USE_CRT_RELEASE=MT
|
||||||
-DLLVM_USE_CRT_DEBUG=MDd
|
-DLLVM_USE_CRT_DEBUG=MTd
|
||||||
-DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
|
-DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -30,11 +30,6 @@ else()
|
|||||||
set(CLANG_GENERATOR "Unix Makefiles")
|
set(CLANG_GENERATOR "Unix Makefiles")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
set(CLANG_EXTRA_ARGS ${CLANG_EXTRA_ARGS}
|
|
||||||
-DLIBXML2_LIBRARY=${LIBDIR}/xml2/lib/libxml2.a
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ExternalProject_Add(external_clang
|
ExternalProject_Add(external_clang
|
||||||
URL ${CLANG_URI}
|
URL ${CLANG_URI}
|
||||||
@@ -51,7 +46,9 @@ if(MSVC)
|
|||||||
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/include/ ${HARVEST_TARGET}/llvm/debug/include/
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
ExternalProject_Add_Step(external_clang after_install
|
ExternalProject_Add_Step(external_clang after_install
|
||||||
|
@@ -26,20 +26,10 @@ set(EMBREE_EXTRA_ARGS
|
|||||||
-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_MAX_ISA=AVX2
|
-DEMBREE_MAX_ISA=AVX2
|
||||||
-DEMBREE_TASKING_SYSTEM=TBB
|
|
||||||
-DEMBREE_TBB_ROOT=${LIBDIR}/tbb
|
|
||||||
-DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(TBB_STATIC_LIBRARY)
|
|
||||||
set(EMBREE_EXTRA_ARGS
|
|
||||||
${EMBREE_EXTRA_ARGS}
|
|
||||||
-DEMBREE_TBB_LIBRARY_NAME=tbb_static
|
|
||||||
-DEMBREE_TBBMALLOC_LIBRARY_NAME=tbbmalloc_static
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
|
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
|
||||||
else()
|
else()
|
||||||
@@ -51,16 +41,9 @@ ExternalProject_Add(external_embree
|
|||||||
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
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/embree/src/external_embree < ${PATCH_DIR}/embree.diff
|
|
||||||
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
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
|
||||||
external_embree
|
|
||||||
external_tbb
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
|
@@ -16,14 +16,25 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_nasm
|
set(FAAD_EXTRA_ARGS)
|
||||||
URL ${NASM_URI}
|
|
||||||
|
if(WIN32)
|
||||||
|
set(FAAD_EXTRA_CONFIGURE "utils\\win32\\ac2ver.exe" "faad2" "configure.ac" > libfaad\\win32_ver.h)
|
||||||
|
else()
|
||||||
|
set(FAAD_EXTRA_CONFIGURE echo .)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
ExternalProject_Add(external_faad
|
||||||
|
URL ${FAAD_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${NASM_HASH}
|
URL_HASH MD5=${FAAD_HASH}
|
||||||
PREFIX ${BUILD_DIR}/nasm
|
PREFIX ${BUILD_DIR}/faad
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/nasm/src/external_nasm < ${PATCH_DIR}/nasm.diff
|
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}/nasm/src/external_nasm/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/nasm
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make -j${MAKE_THREADS}
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/nasm/src/external_nasm/ && make -j${MAKE_THREADS}
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make install
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/nasm/src/external_nasm/ && make install
|
INSTALL_DIR ${LIBDIR}/faad
|
||||||
INSTALL_DIR ${LIBDIR}/nasm
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(MSVC)
|
||||||
|
set_target_properties(external_faad PROPERTIES FOLDER Mingw)
|
||||||
|
endif()
|
@@ -16,10 +16,10 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(FFMPEG_CFLAGS "-I${mingw_LIBDIR}/lame/include -I${mingw_LIBDIR}/openjpeg/include/ -I${mingw_LIBDIR}/ogg/include -I${mingw_LIBDIR}/vorbis/include -I${mingw_LIBDIR}/theora/include -I${mingw_LIBDIR}/opus/include -I${mingw_LIBDIR}/vpx/include -I${mingw_LIBDIR}/x264/include -I${mingw_LIBDIR}/xvidcore/include -I${mingw_LIBDIR}/zlib/include")
|
set(FFMPEG_CFLAGS "-I${mingw_LIBDIR}/lame/include -I${mingw_LIBDIR}/openjpeg/include/ -I${mingw_LIBDIR}/ogg/include -I${mingw_LIBDIR}/vorbis/include -I${mingw_LIBDIR}/theora/include -I${mingw_LIBDIR}/vpx/include -I${mingw_LIBDIR}/x264/include -I${mingw_LIBDIR}/xvidcore/include -I${mingw_LIBDIR}/zlib/include")
|
||||||
set(FFMPEG_LDFLAGS "-L${mingw_LIBDIR}/lame/lib -L${mingw_LIBDIR}/openjpeg/lib -L${mingw_LIBDIR}/ogg/lib -L${mingw_LIBDIR}/vorbis/lib -L${mingw_LIBDIR}/theora/lib -L${mingw_LIBDIR}/opus/lib -L${mingw_LIBDIR}/vpx/lib -L${mingw_LIBDIR}/x264/lib -L${mingw_LIBDIR}/xvidcore/lib -L${mingw_LIBDIR}/zlib/lib")
|
set(FFMPEG_LDFLAGS "-L${mingw_LIBDIR}/lame/lib -L${mingw_LIBDIR}/openjpeg/lib -L${mingw_LIBDIR}/ogg/lib -L${mingw_LIBDIR}/vorbis/lib -L${mingw_LIBDIR}/theora/lib -L${mingw_LIBDIR}/vpx/lib -L${mingw_LIBDIR}/x264/lib -L${mingw_LIBDIR}/xvidcore/lib -L${mingw_LIBDIR}/zlib/lib")
|
||||||
set(FFMPEG_EXTRA_FLAGS --pkg-config-flags=--static --extra-cflags=${FFMPEG_CFLAGS} --extra-ldflags=${FFMPEG_LDFLAGS})
|
set(FFMPEG_EXTRA_FLAGS --pkg-config-flags=--static --extra-cflags=${FFMPEG_CFLAGS} --extra-ldflags=${FFMPEG_LDFLAGS})
|
||||||
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}:${mingw_LIBDIR}/vpx/lib/pkgconfig:${mingw_LIBDIR}/theora/lib/pkgconfig:${mingw_LIBDIR}/openjpeg/lib/pkgconfig:${mingw_LIBDIR}/opus/lib/pkgconfig:)
|
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} &&)
|
||||||
@@ -50,8 +50,7 @@ if(APPLE)
|
|||||||
set(FFMPEG_EXTRA_FLAGS
|
set(FFMPEG_EXTRA_FLAGS
|
||||||
${FFMPEG_EXTRA_FLAGS}
|
${FFMPEG_EXTRA_FLAGS}
|
||||||
--target-os=darwin
|
--target-os=darwin
|
||||||
--x86asmexe=${LIBDIR}/nasm/bin/nasm
|
)
|
||||||
)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_ffmpeg
|
ExternalProject_Add(external_ffmpeg
|
||||||
@@ -74,7 +73,6 @@ ExternalProject_Add(external_ffmpeg
|
|||||||
--disable-libgsm
|
--disable-libgsm
|
||||||
--disable-libspeex
|
--disable-libspeex
|
||||||
--enable-libvpx
|
--enable-libvpx
|
||||||
--enable-libopus
|
|
||||||
--prefix=${LIBDIR}/ffmpeg
|
--prefix=${LIBDIR}/ffmpeg
|
||||||
--enable-libtheora
|
--enable-libtheora
|
||||||
--enable-libvorbis
|
--enable-libvorbis
|
||||||
@@ -128,10 +126,10 @@ endif()
|
|||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_ffmpeg
|
external_ffmpeg
|
||||||
external_zlib
|
external_zlib
|
||||||
|
external_faad
|
||||||
external_openjpeg
|
external_openjpeg
|
||||||
external_xvidcore
|
external_xvidcore
|
||||||
external_x264
|
external_x264
|
||||||
external_opus
|
|
||||||
external_vpx
|
external_vpx
|
||||||
external_theora
|
external_theora
|
||||||
external_vorbis
|
external_vorbis
|
||||||
@@ -144,12 +142,6 @@ if(WIN32)
|
|||||||
external_zlib_mingw
|
external_zlib_mingw
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(APPLE)
|
|
||||||
add_dependencies(
|
|
||||||
external_ffmpeg
|
|
||||||
external_nasm
|
|
||||||
)
|
|
||||||
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
|
||||||
|
@@ -19,12 +19,8 @@
|
|||||||
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_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)
|
||||||
set(FFTW_EXTRA_ARGS --disable-static --enable-shared)
|
|
||||||
set(FFTW_INSTALL install-strip)
|
|
||||||
else()
|
|
||||||
set(FFTW_EXTRA_ARGS --enable-static)
|
|
||||||
set(FFTW_INSTALL install)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(external_fftw3
|
ExternalProject_Add(external_fftw3
|
||||||
@@ -32,10 +28,10 @@ ExternalProject_Add(external_fftw3
|
|||||||
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} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && ${CONFIGURE_COMMAND} ${FFTW_EXTRA_ARGS} --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 ${FFTW_INSTALL}
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/fftw3
|
INSTALL_DIR ${LIBDIR}/fftw3
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -43,8 +39,7 @@ 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.dll.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/bin/libfftw3-3.dll ${HARVEST_TARGET}/fftw3/lib/libfftw3-3.dll
|
|
||||||
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
|
||||||
)
|
)
|
||||||
|
@@ -24,8 +24,7 @@ set(FREETYPE_EXTRA_ARGS
|
|||||||
-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)
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_BrotliDec=TRUE)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_freetype
|
ExternalProject_Add(external_freetype
|
||||||
URL ${FREETYPE_URI}
|
URL ${FREETYPE_URI}
|
||||||
@@ -33,6 +32,7 @@ ExternalProject_Add(external_freetype
|
|||||||
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
|
||||||
INSTALL_DIR ${LIBDIR}/freetype
|
INSTALL_DIR ${LIBDIR}/freetype
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -31,6 +31,10 @@ if(BUILD_MODE STREQUAL Release)
|
|||||||
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
|
||||||
|
${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 ${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/ &&
|
||||||
@@ -40,13 +44,38 @@ if(BUILD_MODE STREQUAL Release)
|
|||||||
# 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
|
||||||
|
${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/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/ &&
|
||||||
|
# hidapi
|
||||||
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
|
||||||
|
# webp, straight up copy
|
||||||
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
|
||||||
DEPENDS
|
DEPENDS
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
|
add_custom_target(Harvest_Debug_Results
|
||||||
|
# OpenImageIO
|
||||||
|
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 &&
|
||||||
|
# python
|
||||||
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/ &&
|
||||||
|
# hdf5
|
||||||
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hdf5/lib ${HARVEST_TARGET}/hdf5/lib &&
|
||||||
|
# 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 &&
|
||||||
|
# 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
|
||||||
|
DEPENDS Package_Python
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
|
|
||||||
function(harvest from to)
|
function(harvest from to)
|
||||||
@@ -89,6 +118,8 @@ harvest(freetype/include freetype/include "*.h")
|
|||||||
harvest(freetype/lib/libfreetype2ST.a freetype/lib/libfreetype.a)
|
harvest(freetype/lib/libfreetype2ST.a freetype/lib/libfreetype.a)
|
||||||
harvest(glew/include glew/include "*.h")
|
harvest(glew/include glew/include "*.h")
|
||||||
harvest(glew/lib glew/lib "*.a")
|
harvest(glew/lib glew/lib "*.a")
|
||||||
|
harvest(ilmbase openexr "*")
|
||||||
|
harvest(ilmbase/include openexr/include "*.h")
|
||||||
harvest(jemalloc/include jemalloc/include "*.h")
|
harvest(jemalloc/include jemalloc/include "*.h")
|
||||||
harvest(jemalloc/lib jemalloc/lib "*.a")
|
harvest(jemalloc/lib jemalloc/lib "*.a")
|
||||||
harvest(jpg/include jpeg/include "*.h")
|
harvest(jpg/include jpeg/include "*.h")
|
||||||
@@ -132,20 +163,14 @@ harvest(openimageio/bin openimageio/bin "maketx")
|
|||||||
harvest(openimageio/bin openimageio/bin "oiiotool")
|
harvest(openimageio/bin openimageio/bin "oiiotool")
|
||||||
harvest(openimageio/include openimageio/include "*")
|
harvest(openimageio/include openimageio/include "*")
|
||||||
harvest(openimageio/lib openimageio/lib "*.a")
|
harvest(openimageio/lib openimageio/lib "*.a")
|
||||||
if((NOT APPLE) OR ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
|
harvest(openimagedenoise/include openimagedenoise/include "*")
|
||||||
harvest(openimagedenoise/include openimagedenoise/include "*")
|
harvest(openimagedenoise/lib openimagedenoise/lib "*.a")
|
||||||
harvest(openimagedenoise/lib openimagedenoise/lib "*.a")
|
|
||||||
harvest(embree/include embree/include "*.h")
|
|
||||||
harvest(embree/lib embree/lib "*.a")
|
|
||||||
endif()
|
|
||||||
harvest(openjpeg/include/openjpeg-2.3 openjpeg/include "*.h")
|
harvest(openjpeg/include/openjpeg-2.3 openjpeg/include "*.h")
|
||||||
harvest(openjpeg/lib openjpeg/lib "*.a")
|
harvest(openjpeg/lib openjpeg/lib "*.a")
|
||||||
harvest(opensubdiv/include opensubdiv/include "*.h")
|
harvest(opensubdiv/include opensubdiv/include "*.h")
|
||||||
harvest(opensubdiv/lib opensubdiv/lib "*.a")
|
harvest(opensubdiv/lib opensubdiv/lib "*.a")
|
||||||
harvest(openvdb/include/openvdb openvdb/include/openvdb "*.h")
|
harvest(openvdb/include/openvdb openvdb/include/openvdb "*.h")
|
||||||
harvest(openvdb/lib openvdb/lib "*.a")
|
harvest(openvdb/lib openvdb/lib "*.a")
|
||||||
harvest(xr_openxr_sdk/include/openxr xr_openxr_sdk/include/openxr "*.h")
|
|
||||||
harvest(xr_openxr_sdk/lib xr_openxr_sdk/lib "*.a")
|
|
||||||
harvest(osl/bin osl/bin "oslc")
|
harvest(osl/bin osl/bin "oslc")
|
||||||
harvest(osl/include osl/include "*.h")
|
harvest(osl/include osl/include "*.h")
|
||||||
harvest(osl/lib osl/lib "*.a")
|
harvest(osl/lib osl/lib "*.a")
|
||||||
@@ -167,18 +192,11 @@ harvest(theora/lib ffmpeg/lib "*.a")
|
|||||||
harvest(tiff/include tiff/include "*.h")
|
harvest(tiff/include tiff/include "*.h")
|
||||||
harvest(tiff/lib tiff/lib "*.a")
|
harvest(tiff/lib tiff/lib "*.a")
|
||||||
harvest(vorbis/lib ffmpeg/lib "*.a")
|
harvest(vorbis/lib ffmpeg/lib "*.a")
|
||||||
harvest(opus/lib ffmpeg/lib "*.a")
|
|
||||||
harvest(vpx/lib ffmpeg/lib "*.a")
|
harvest(vpx/lib ffmpeg/lib "*.a")
|
||||||
harvest(webp/lib ffmpeg/lib "*.a")
|
harvest(webp/lib ffmpeg/lib "*.a")
|
||||||
harvest(x264/lib ffmpeg/lib "*.a")
|
harvest(x264/lib ffmpeg/lib "*.a")
|
||||||
harvest(xvidcore/lib ffmpeg/lib "*.a")
|
harvest(xvidcore/lib ffmpeg/lib "*.a")
|
||||||
harvest(usd/include usd/include "*.h")
|
harvest(embree/include embree/include "*.h")
|
||||||
harvest(usd/lib/usd usd/lib/usd "*")
|
harvest(embree/lib embree/lib "*.a")
|
||||||
harvest(usd/plugin usd/plugin "*")
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
harvest(libglu/lib mesa/lib "*.so*")
|
|
||||||
harvest(mesa/lib mesa/lib "*.so*")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
@@ -16,20 +16,27 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
ExternalProject_Add(external_opus
|
set(HDF5_EXTRA_ARGS
|
||||||
URL ${OPUS_URI}
|
-DHDF5_ENABLE_THREADSAFE=Off
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
-DHDF5_BUILD_CPP_LIB=Off
|
||||||
URL_HASH SHA256=${OPUS_HASH}
|
-DBUILD_TESTING=Off
|
||||||
PREFIX ${BUILD_DIR}/opus
|
-DHDF5_BUILD_TOOLS=Off
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/opus/src/external_opus/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/opus
|
-DHDF5_BUILD_EXAMPLES=Off
|
||||||
--disable-shared
|
-DHDF5_BUILD_HL_LIB=On
|
||||||
--enable-static
|
-DBUILD_STATIC_CRT_LIBS=On
|
||||||
--with-pic
|
-DBUILD_SHARED_LIBS=On
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/opus/src/external_opus/ && make -j${MAKE_THREADS}
|
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/opus/src/external_opus/ && make install
|
|
||||||
INSTALL_DIR ${LIBDIR}/opus
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(MSVC)
|
if(WIN32)
|
||||||
set_target_properties(external_opus PROPERTIES FOLDER Mingw)
|
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
|
||||||
|
URL ${HDF5_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${HDF5_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/hdf5
|
||||||
|
PATCH_COMMAND ${HDF5_PATCH}
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hdf5 ${HDF5_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/hdf5
|
||||||
|
)
|
@@ -14,33 +14,16 @@
|
|||||||
# along with this program; if not, write to the Free Software Foundation,
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# The Original Code is Copyright (C) 2019, Blender Foundation
|
|
||||||
# All rights reserved.
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
set(INC
|
set(HIDAPI_EXTRA_ARGS)
|
||||||
.
|
|
||||||
../guardedalloc
|
ExternalProject_Add(external_hidapi
|
||||||
|
URL ${HIDAPI_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${HIDAPI_HASH}
|
||||||
|
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
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hidapi -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${HIDAPI_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/hidapi
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INC_SYS
|
|
||||||
../../extern/quadriflow/src
|
|
||||||
${BOOST_INCLUDE_DIR}
|
|
||||||
${EIGEN3_INCLUDE_DIRS}
|
|
||||||
)
|
|
||||||
|
|
||||||
set(SRC
|
|
||||||
quadriflow_capi.cpp
|
|
||||||
quadriflow_capi.hpp
|
|
||||||
)
|
|
||||||
|
|
||||||
set(LIB
|
|
||||||
extern_quadriflow
|
|
||||||
${BOOST_LIBRARIES}
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
add_definitions(-D_USE_MATH_DEFINES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
blender_add_lib(bf_intern_quadriflow "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
|
58
build_files/build_environment/cmake/ilmbase.cmake
Normal file
58
build_files/build_environment/cmake/ilmbase.cmake
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
# ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
#
|
||||||
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
|
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_EXTRA_ARGS
|
||||||
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES}
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_ilmbase
|
||||||
|
URL ${ILMBASE_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${ILMBASE_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/ilmbase
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
|
)
|
||||||
|
|
||||||
|
if(BUILD_MODE STREQUAL Release)
|
||||||
|
ExternalProject_Add_Step(external_ilmbase after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr
|
||||||
|
DEPENDEES install
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
else()
|
||||||
|
set(ILMBASE_EXTRA_ARGS
|
||||||
|
--enable-static
|
||||||
|
--disable-shared
|
||||||
|
--enable-cxxstd=11
|
||||||
|
)
|
||||||
|
ExternalProject_Add(external_ilmbase
|
||||||
|
URL ${ILMBASE_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${ILMBASE_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/ilmbase
|
||||||
|
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}
|
||||||
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install
|
||||||
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
|
)
|
||||||
|
endif()
|
@@ -1,76 +0,0 @@
|
|||||||
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(ISPC_EXTRA_ARGS_WIN
|
|
||||||
-DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe
|
|
||||||
-DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe
|
|
||||||
-DM4_EXECUTABLE=${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/m4.exe
|
|
||||||
)
|
|
||||||
elseif(APPLE)
|
|
||||||
# Use bison installed via Homebrew.
|
|
||||||
# The one which comes which Xcode toolset is too old.
|
|
||||||
set(ISPC_EXTRA_ARGS_APPLE
|
|
||||||
-DBISON_EXECUTABLE=/usr/local/opt/bison/bin/bison
|
|
||||||
)
|
|
||||||
elseif(UNIX)
|
|
||||||
set(ISPC_EXTRA_ARGS_UNIX
|
|
||||||
-DCMAKE_C_COMPILER=${LIBDIR}/clang/bin/clang
|
|
||||||
-DCMAKE_CXX_COMPILER=${LIBDIR}/clang/bin/clang++
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(ISPC_EXTRA_ARGS
|
|
||||||
-DARM_ENABLED=Off
|
|
||||||
-DISPC_NO_DUMPS=On
|
|
||||||
-DISPC_INCLUDE_EXAMPLES=Off
|
|
||||||
-DISPC_INCLUDE_TESTS=Off
|
|
||||||
-DLLVM_ROOT=${LIBDIR}/llvm/lib/cmake/llvm
|
|
||||||
-DLLVM_LIBRARY_DIR=${LIBDIR}/llvm/lib
|
|
||||||
-DCLANG_EXECUTABLE=${LIBDIR}/clang/bin/clang
|
|
||||||
-DISPC_INCLUDE_TESTS=Off
|
|
||||||
-DCLANG_LIBRARY_DIR=${LIBDIR}/clang/lib
|
|
||||||
-DCLANG_INCLUDE_DIRS=${LIBDIR}/clang/include
|
|
||||||
${ISPC_EXTRA_ARGS_WIN}
|
|
||||||
${ISPC_EXTRA_ARGS_APPLE}
|
|
||||||
${ISPC_EXTRA_ARGS_UNIX}
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_ispc
|
|
||||||
URL ${ISPC_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${ISPC_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/ispc
|
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/ispc/src/external_ispc < ${PATCH_DIR}/ispc.diff
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ispc -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${ISPC_EXTRA_ARGS} ${BUILD_DIR}/ispc/src/external_ispc
|
|
||||||
INSTALL_DIR ${LIBDIR}/ispc
|
|
||||||
)
|
|
||||||
|
|
||||||
add_dependencies(
|
|
||||||
external_ispc
|
|
||||||
ll
|
|
||||||
external_clang
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
add_dependencies(
|
|
||||||
external_ispc
|
|
||||||
external_flexbison
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# cmake for windows
|
# cmake for windows
|
||||||
set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON -DCMAKE_DEBUG_POSTFIX=d -DWITH_CRT_DLL=On)
|
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}
|
||||||
@@ -42,17 +42,20 @@ if(WIN32)
|
|||||||
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
# cmake for unix
|
# autoconf for unix
|
||||||
set(JPEG_EXTRA_ARGS
|
if(APPLE)
|
||||||
-DWITH_JPEG8=ON
|
set(JPEG_EXTRA_ARGS --host x86_64-apple-darwin --with-jpeg8)
|
||||||
-DENABLE_STATIC=ON
|
else()
|
||||||
-DENABLE_SHARED=OFF
|
set(JPEG_EXTRA_ARGS --with-jpeg8)
|
||||||
-DCMAKE_INSTALL_LIBDIR=${LIBDIR}/jpg/lib)
|
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}
|
||||||
|
BUILD_IN_SOURCE 1
|
||||||
|
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
|
||||||
|
@@ -24,7 +24,7 @@ ExternalProject_Add(external_lcms
|
|||||||
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
|
||||||
|
@@ -1,40 +0,0 @@
|
|||||||
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
|
||||||
|
|
||||||
set(LIBGLU_CFLAGS "-static-libgcc")
|
|
||||||
set(LIBGLU_CXXFLAGS "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -l:libstdc++.a")
|
|
||||||
set(LIBGLU_LDFLAGS "-pthread -static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -l:libstdc++.a")
|
|
||||||
|
|
||||||
set(LIBGLU_EXTRA_FLAGS
|
|
||||||
CFLAGS=${LIBGLU_CFLAGS}
|
|
||||||
CXXFLAGS=${LIBGLU_CXXFLAGS}
|
|
||||||
LDFLAGS=${LIBGLU_LDFLAGS}
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_libglu
|
|
||||||
URL ${LIBGLU_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${LIBGLU_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/libglu
|
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
|
|
||||||
cd ${BUILD_DIR}/libglu/src/external_libglu/ &&
|
|
||||||
${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/libglu ${LIBGLU_EXTRA_FLAGS}
|
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/libglu/src/external_libglu/ && make -j${MAKE_THREADS}
|
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/libglu/src/external_libglu/ && make install
|
|
||||||
INSTALL_DIR ${LIBDIR}/libglu
|
|
||||||
)
|
|
@@ -16,21 +16,13 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(APPLE AND "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
|
|
||||||
set(LLVM_TARGETS AArch64)
|
|
||||||
else()
|
|
||||||
set(LLVM_TARGETS X86)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(LLVM_EXTRA_ARGS
|
set(LLVM_EXTRA_ARGS
|
||||||
-DLLVM_USE_CRT_RELEASE=MD
|
-DLLVM_USE_CRT_RELEASE=MT
|
||||||
-DLLVM_USE_CRT_DEBUG=MDd
|
-DLLVM_USE_CRT_DEBUG=MTd
|
||||||
-DLLVM_INCLUDE_TESTS=OFF
|
-DLLVM_INCLUDE_TESTS=OFF
|
||||||
-DLLVM_TARGETS_TO_BUILD=${LLVM_TARGETS}
|
-DLLVM_TARGETS_TO_BUILD=X86
|
||||||
-DLLVM_INCLUDE_EXAMPLES=OFF
|
-DLLVM_INCLUDE_EXAMPLES=OFF
|
||||||
-DLLVM_ENABLE_TERMINFO=OFF
|
-DLLVM_ENABLE_TERMINFO=OFF
|
||||||
-DLLVM_BUILD_LLVM_C_DYLIB=OFF
|
|
||||||
-DLLVM_ENABLE_UNWIND_TABLES=OFF
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -46,7 +38,6 @@ ExternalProject_Add(ll
|
|||||||
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
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/ll/src/ll < ${PATCH_DIR}/llvm.diff
|
|
||||||
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
|
||||||
)
|
)
|
||||||
|
@@ -1,54 +0,0 @@
|
|||||||
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
|
||||||
|
|
||||||
set(MESA_CFLAGS "-static-libgcc")
|
|
||||||
set(MESA_CXXFLAGS "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -l:libstdc++.a")
|
|
||||||
set(MESA_LDFLAGS "-L${LIBDIR}/zlib/lib -pthread -static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -l:libstdc++.a -l:libz_pic.a")
|
|
||||||
|
|
||||||
set(MESA_EXTRA_FLAGS
|
|
||||||
CFLAGS=${MESA_CFLAGS}
|
|
||||||
CXXFLAGS=${MESA_CXXFLAGS}
|
|
||||||
LDFLAGS=${MESA_LDFLAGS}
|
|
||||||
--enable-glx=gallium-xlib
|
|
||||||
--with-gallium-drivers=swrast
|
|
||||||
--disable-dri
|
|
||||||
--disable-gbm
|
|
||||||
--disable-egl
|
|
||||||
--disable-gles1
|
|
||||||
--disable-gles2
|
|
||||||
--disable-llvm-shared-libs
|
|
||||||
--with-llvm-prefix=${LIBDIR}/llvm
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_mesa
|
|
||||||
URL ${MESA_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${MESA_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/mesa
|
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
|
|
||||||
cd ${BUILD_DIR}/mesa/src/external_mesa/ &&
|
|
||||||
${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/mesa ${MESA_EXTRA_FLAGS}
|
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/mesa/src/external_mesa/ && make -j${MAKE_THREADS}
|
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/mesa/src/external_mesa/ && make install
|
|
||||||
INSTALL_DIR ${LIBDIR}/mesa
|
|
||||||
)
|
|
||||||
|
|
||||||
add_dependencies(
|
|
||||||
external_mesa
|
|
||||||
ll
|
|
||||||
)
|
|
@@ -38,7 +38,6 @@ ExternalProject_Add(external_numpy
|
|||||||
PREFIX ${BUILD_DIR}/numpy
|
PREFIX ${BUILD_DIR}/numpy
|
||||||
PATCH_COMMAND ${NUMPY_PATCH}
|
PATCH_COMMAND ${NUMPY_PATCH}
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
PATCH_COMMAND COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/numpy/src/external_numpy < ${PATCH_DIR}/numpy.diff
|
|
||||||
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 ""
|
INSTALL_COMMAND ""
|
||||||
|
@@ -21,7 +21,6 @@ ExternalProject_Add(external_ogg
|
|||||||
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
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/ogg/src/external_ogg < ${PATCH_DIR}/ogg.diff
|
|
||||||
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
|
||||||
|
@@ -52,6 +52,7 @@ if(BUILD_MODE STREQUAL Release)
|
|||||||
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
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
@@ -30,13 +30,6 @@ set(OPENCOLORIO_EXTRA_ARGS
|
|||||||
-DOCIO_STATIC_JNIGLUE=OFF
|
-DOCIO_STATIC_JNIGLUE=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(APPLE AND NOT("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
|
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
|
||||||
${OPENCOLORIO_EXTRA_ARGS}
|
|
||||||
-DOCIO_USE_SSE=OFF
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OCIO_PATCH opencolorio_win.diff)
|
set(OCIO_PATCH opencolorio_win.diff)
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
@@ -57,7 +50,7 @@ if(WIN32)
|
|||||||
-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()
|
||||||
@@ -102,7 +95,7 @@ if(WIN32)
|
|||||||
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-cppmd.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
|
||||||
)
|
)
|
||||||
@@ -110,7 +103,7 @@ if(WIN32)
|
|||||||
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-cppmdd.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
|
||||||
)
|
)
|
||||||
|
@@ -20,45 +20,59 @@ 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_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
|
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase
|
||||||
|
-DOPENEXR_BUILD_ILMBASE=On
|
||||||
|
-DOPENEXR_BUILD_OPENEXR=On
|
||||||
|
-DOPENEXR_BUILD_PYTHON_LIBS=Off
|
||||||
|
-DOPENEXR_BUILD_STATIC=On
|
||||||
|
-DOPENEXR_BUILD_SHARED=Off
|
||||||
|
-DOPENEXR_BUILD_TESTS=Off
|
||||||
|
-DOPENEXR_BUILD_VIEWERS=Off
|
||||||
|
-DOPENEXR_BUILD_UTILS=Off
|
||||||
|
-DOPENEXR_NAMESPACE_VERSIONING=Off
|
||||||
)
|
)
|
||||||
else()
|
ExternalProject_Add(external_openexr
|
||||||
set(OPENEXR_EXTRA_ARGS
|
URL ${OPENEXR_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${OPENEXR_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/openexr
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/openexr
|
||||||
)
|
)
|
||||||
endif()
|
|
||||||
|
|
||||||
set(OPENEXR_EXTRA_ARGS
|
|
||||||
${OPENEXR_EXTRA_ARGS}
|
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
|
||||||
-DBUILD_TESTING=OFF
|
|
||||||
-DOPENEXR_BUILD_BOTH_STATIC_SHARED=OFF
|
|
||||||
-DILMBASE_BUILD_BOTH_STATIC_SHARED=OFF
|
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
|
||||||
-DOPENEXR_BUILD_UTILS=OFF
|
|
||||||
-DPYILMBASE_ENABLE=OFF
|
|
||||||
-DOPENEXR_VIEWERS_ENABLE=OFF
|
|
||||||
-DILMBASE_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
|
||||||
-DOPENEXR_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_openexr
|
|
||||||
URL ${OPENEXR_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${OPENEXR_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/openexr
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/openexr
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
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.
|
||||||
|
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()
|
||||||
|
set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig)
|
||||||
|
set(OPENEXR_EXTRA_ARGS
|
||||||
|
--enable-static
|
||||||
|
--disable-shared
|
||||||
|
--enable-cxxstd=11
|
||||||
|
--with-ilmbase-prefix=${LIBDIR}/ilmbase
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_openexr
|
||||||
|
URL ${OPENEXR_URI}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH MD5=${OPENEXR_HASH}
|
||||||
|
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}
|
||||||
|
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_DIR ${LIBDIR}/openexr
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
|
external_ilmbase
|
||||||
)
|
)
|
||||||
|
@@ -18,41 +18,26 @@
|
|||||||
|
|
||||||
|
|
||||||
set(OIDN_EXTRA_ARGS
|
set(OIDN_EXTRA_ARGS
|
||||||
-DOIDN_APPS=OFF
|
-DWITH_EXAMPLE=OFF
|
||||||
|
-DWITH_TEST=OFF
|
||||||
-DTBB_ROOT=${LIBDIR}/tbb
|
-DTBB_ROOT=${LIBDIR}/tbb
|
||||||
-DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY}
|
-DTBB_STATIC_LIB=ON
|
||||||
-DOIDN_STATIC_LIB=ON
|
-DOIDN_STATIC_LIB=ON
|
||||||
-DOIDN_STATIC_RUNTIME=OFF
|
|
||||||
-DISPC_EXECUTABLE=${LIBDIR}/ispc/bin/ispc
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(OIDN_EXTRA_ARGS
|
|
||||||
${OIDN_EXTRA_ARGS}
|
|
||||||
-DTBB_DEBUG_LIBRARY=${LIBDIR}/tbb/lib/tbb.lib
|
|
||||||
-DTBB_DEBUG_LIBRARY_MALLOC=${LIBDIR}/tbb/lib/tbbmalloc.lib
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
set(OIDN_EXTRA_ARGS
|
|
||||||
${OIDN_EXTRA_ARGS}
|
|
||||||
-Dtbb_LIBRARY_RELEASE=${LIBDIR}/tbb/lib/tbb_static.a
|
|
||||||
-Dtbbmalloc_LIBRARY_RELEASE=${LIBDIR}/tbb/lib/tbbmalloc_static.a
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ExternalProject_Add(external_openimagedenoise
|
ExternalProject_Add(external_openimagedenoise
|
||||||
URL ${OIDN_URI}
|
URL ${OIDN_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH MD5=${OIDN_HASH}
|
URL_HASH MD5=${OIDN_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openimagedenoise
|
PREFIX ${BUILD_DIR}/openimagedenoise
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimagedenoise ${DEFAULT_CMAKE_FLAGS} ${OIDN_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimagedenoise ${DEFAULT_CMAKE_FLAGS} ${OIDN_EXTRA_ARGS}
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/openimagedenoise/src/external_openimagedenoise < ${PATCH_DIR}/openimagedenoise.diff
|
||||||
INSTALL_DIR ${LIBDIR}/openimagedenoise
|
INSTALL_DIR ${LIBDIR}/openimagedenoise
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_openimagedenoise
|
external_openimagedenoise
|
||||||
external_tbb
|
external_tbb
|
||||||
external_ispc
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -61,7 +46,7 @@ if(WIN32)
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openimagedenoise/include ${HARVEST_TARGET}/openimagedenoise/include
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openimagedenoise/include ${HARVEST_TARGET}/openimagedenoise/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/openimagedenoise.lib ${HARVEST_TARGET}/openimagedenoise/lib/openimagedenoise.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/openimagedenoise.lib ${HARVEST_TARGET}/openimagedenoise/lib/openimagedenoise.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/common.lib ${HARVEST_TARGET}/openimagedenoise/lib/common.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/common.lib ${HARVEST_TARGET}/openimagedenoise/lib/common.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/dnnl.lib ${HARVEST_TARGET}/openimagedenoise/lib/dnnl.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/mkldnn.lib ${HARVEST_TARGET}/openimagedenoise/lib/mkldnn.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
@@ -69,7 +54,7 @@ if(WIN32)
|
|||||||
ExternalProject_Add_Step(external_openimagedenoise after_install
|
ExternalProject_Add_Step(external_openimagedenoise after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/openimagedenoise.lib ${HARVEST_TARGET}/openimagedenoise/lib/openimagedenoise_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/openimagedenoise.lib ${HARVEST_TARGET}/openimagedenoise/lib/openimagedenoise_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/common.lib ${HARVEST_TARGET}/openimagedenoise/lib/common_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/common.lib ${HARVEST_TARGET}/openimagedenoise/lib/common_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/dnnl.lib ${HARVEST_TARGET}/openimagedenoise/lib/dnnl_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimagedenoise/lib/mkldnn.lib ${HARVEST_TARGET}/openimagedenoise/lib/mkldnn_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -32,7 +32,7 @@ endif()
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(PNG_LIBNAME libpng16_static${LIBEXT})
|
set(PNG_LIBNAME libpng16_static${LIBEXT})
|
||||||
set(OIIO_SIMD_FLAGS -DUSE_SIMD=sse2)
|
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})
|
||||||
@@ -49,34 +49,31 @@ endif()
|
|||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOpenJpeg_ROOT=${LIBDIR}/openjpeg_msvc
|
-DOPENJPEG_HOME=${LIBDIR}/openjpeg_msvc
|
||||||
|
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg_msvc/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
||||||
|
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
||||||
|
-DOPENJPEG_LIBRARY_DEBUG=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOpenJpeg_ROOT=${LIBDIR}/openjpeg
|
-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION}
|
||||||
|
-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg/lib/${OPENJPEG_LIBRARY}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENIMAGEIO_EXTRA_ARGS
|
set(OPENIMAGEIO_EXTRA_ARGS
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILDSTATIC=ON
|
||||||
${OPENIMAGEIO_LINKSTATIC}
|
${OPENIMAGEIO_LINKSTATIC}
|
||||||
|
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/openexr/
|
||||||
|
-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=OFF
|
-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
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
|
||||||
-OIIO_BUILD_CPP11=ON
|
-OIIO_BUILD_CPP11=ON
|
||||||
-DUSE_LIBSQUISH=OFF
|
|
||||||
-DUSE_QT5=OFF
|
|
||||||
-DUSE_NUKE=OFF
|
|
||||||
-DUSE_OPENVDB=OFF
|
|
||||||
-DUSE_BZIP2=OFF
|
|
||||||
-DUSE_FREETYPE=OFF
|
|
||||||
-DUSE_DCMTK=OFF
|
|
||||||
-DUSE_LIBHEIF=OFF
|
|
||||||
-DUSE_OPENGL=OFF
|
-DUSE_OPENGL=OFF
|
||||||
-DUSE_TBB=OFF
|
-DUSE_TBB=OFF
|
||||||
-DUSE_FIELD3D=OFF
|
-DUSE_FIELD3D=OFF
|
||||||
@@ -84,12 +81,15 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-DUSE_PYTHON=OFF
|
-DUSE_PYTHON=OFF
|
||||||
-DUSE_GIF=OFF
|
-DUSE_GIF=OFF
|
||||||
-DUSE_OPENCV=OFF
|
-DUSE_OPENCV=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_OPENCOLORIO=OFF
|
-DUSE_PYTHON=OFF
|
||||||
|
-DUSE_PYTHON3=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
|
||||||
@@ -103,13 +103,17 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-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/
|
||||||
-DOpenEXR_USE_STATIC_LIBS=On
|
-DOpenEXR_USE_STATIC_LIBS=On
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
-DOPENEXR_HOME=${LIBDIR}/openexr/
|
||||||
|
-DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/
|
||||||
|
-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/
|
||||||
|
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
||||||
|
-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_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${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_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_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}
|
||||||
-DSTOP_ON_WARNING=OFF
|
-DSTOP_ON_WARNING=OFF
|
||||||
${WEBP_FLAGS}
|
${WEBP_FLAGS}
|
||||||
@@ -121,38 +125,28 @@ ExternalProject_Add(external_openimageio
|
|||||||
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_CMD} -p 1 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/ < ${PATCH_DIR}/openimageio.diff
|
PATCH_COMMAND
|
||||||
|
${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
|
||||||
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_png external_zlib
|
||||||
external_zlib
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_jpeg
|
external_jpeg
|
||||||
external_boost
|
external_boost
|
||||||
external_tiff
|
external_tiff
|
||||||
|
external_opencolorio
|
||||||
external_openjpeg${OPENJPEG_POSTFIX}
|
external_openjpeg${OPENJPEG_POSTFIX}
|
||||||
${WEBP_DEP}
|
${WEBP_DEP}
|
||||||
)
|
)
|
||||||
|
if(NOT WIN32)
|
||||||
if(WIN32)
|
add_dependencies(
|
||||||
if(BUILD_MODE STREQUAL Release)
|
external_openimageio
|
||||||
ExternalProject_Add_Step(external_openimageio after_install
|
external_opencolorio_extra
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/include ${HARVEST_TARGET}/OpenImageIO/include
|
)
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/lib ${HARVEST_TARGET}/OpenImageIO/lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/OpenImageIO/bin/idiff.exe ${HARVEST_TARGET}/OpenImageIO/bin/idiff.exe
|
|
||||||
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
|
||||||
ExternalProject_Add_Step(external_openimageio after_install
|
|
||||||
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_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
@@ -38,7 +38,7 @@ ExternalProject_Add(external_openjpeg
|
|||||||
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
|
||||||
|
@@ -22,7 +22,6 @@ ExternalProject_Add(external_openmp
|
|||||||
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
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openmp/src/external_openmp < ${PATCH_DIR}/openmp.diff
|
|
||||||
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
|
||||||
|
@@ -36,11 +36,12 @@ 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.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
|
||||||
)
|
)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
@@ -67,7 +68,7 @@ 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
|
||||||
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
|
||||||
|
@@ -24,26 +24,29 @@ 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=OFF
|
-DBoost_USE_STATIC_RUNTIME=ON
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
-DBoost_NO_BOOST_CMAKE=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_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
|
||||||
-DBlosc_ROOT=${LIBDIR}/blosc/
|
-DGLEW_LOCATION=${LIBDIR}/glew/
|
||||||
|
-DBLOSC_LOCATION=${LIBDIR}/blosc/
|
||||||
|
-DTBB_LOCATION=${LIBDIR}/tbb/
|
||||||
-DTBB_ROOT=${LIBDIR}/tbb/
|
-DTBB_ROOT=${LIBDIR}/tbb/
|
||||||
-DOpenEXR_ROOT=${LIBDIR}/openexr
|
-DOPENEXR_LOCATION=${LIBDIR}/openexr
|
||||||
-DIlmBase_ROOT=${LIBDIR}/openexr
|
-DILMBASE_LOCATION=${LIBDIR}/ilmbase
|
||||||
-DOPENEXR_LIBRARYDIR=${LIBDIR}/openexr/lib
|
-DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
# All libs live in openexr, even the ilmbase ones
|
-DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DILMBASE_LIBRARYDIR=${LIBDIR}/openexr/lib
|
-DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENVDB_CORE_SHARED=Off
|
-DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENVDB_BUILD_BINARIES=Off
|
-DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib
|
||||||
|
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
||||||
|
-DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -51,17 +54,15 @@ if(WIN32)
|
|||||||
# 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}
|
||||||
-DCMAKE_CXX_STANDARD_LIBRARIES="${LIBDIR}/pthreads/lib/pthreadVC3.lib"
|
-DOPENEXR_NAMESPACE_VERSIONING=OFF
|
||||||
-DUSE_EXR=On
|
-DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC3.lib
|
||||||
)
|
|
||||||
else()
|
|
||||||
# OpenVDB can't find the _static libraries automatically.
|
|
||||||
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
|
||||||
-DTbb_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
|
||||||
-DTbb_tbb_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
|
||||||
-DTbb_tbbmalloc_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_static${LIBEXT}
|
|
||||||
-DTbb_tbbmalloc_proxy_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_proxy_static${LIBEXT}
|
|
||||||
)
|
)
|
||||||
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
||||||
|
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
||||||
|
-DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no"
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="/safeseh:no"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(openvdb
|
ExternalProject_Add(openvdb
|
||||||
@@ -78,6 +79,7 @@ add_dependencies(
|
|||||||
openvdb
|
openvdb
|
||||||
external_tbb
|
external_tbb
|
||||||
external_boost
|
external_boost
|
||||||
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
external_blosc
|
external_blosc
|
||||||
|
@@ -17,9 +17,10 @@
|
|||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/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)
|
||||||
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)
|
||||||
@@ -45,7 +46,11 @@ message("PATCH_DIR = ${PATCH_DIR}")
|
|||||||
message("BUILD_DIR = ${BUILD_DIR}")
|
message("BUILD_DIR = ${BUILD_DIR}")
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
|
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
||||||
|
else()
|
||||||
|
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/patch.exe)
|
||||||
|
endif()
|
||||||
set(LIBEXT ".lib")
|
set(LIBEXT ".lib")
|
||||||
set(LIBPREFIX "")
|
set(LIBPREFIX "")
|
||||||
|
|
||||||
@@ -57,36 +62,43 @@ if(WIN32)
|
|||||||
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 "/MDd ${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 "/MDd ${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 "/MD ${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 "/MD ${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 "/MD ${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 "/MDd ${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 "/MD /${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 "/MD ${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 "/MD ${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)
|
||||||
|
|
||||||
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
set(MINGW_SHELL ming64sh.cmd)
|
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
|
||||||
set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
|
set(MINGW_SHELL ming64sh.cmd)
|
||||||
set(MINGW_HOST x86_64-w64-mingw32)
|
set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
|
||||||
|
set(MINGW_HOST x86_64-w64-mingw32)
|
||||||
|
else()
|
||||||
|
set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw32)
|
||||||
|
set(MINGW_SHELL ming32sh.cmd)
|
||||||
|
set(PERL_SHELL ${DOWNLOAD_DIR}/perl32/portableshell.bat)
|
||||||
|
set(MINGW_HOST i686-w64-mingw32)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(CONFIGURE_ENV
|
set(CONFIGURE_ENV
|
||||||
cd ${MINGW_PATH} &&
|
cd ${MINGW_PATH} &&
|
||||||
call ${PERL_SHELL} &&
|
|
||||||
call ${MINGW_SHELL} &&
|
call ${MINGW_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
|
||||||
@@ -113,32 +125,16 @@ else()
|
|||||||
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
|
||||||
)
|
)
|
||||||
execute_process(
|
set(OSX_ARCHITECTURES x86_64)
|
||||||
COMMAND xcodebuild -version -sdk macosx SDKVersion
|
set(OSX_DEPLOYMENT_TARGET 10.11)
|
||||||
OUTPUT_VARIABLE MACOSX_SDK_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
|
|
||||||
if(NOT CMAKE_OSX_ARCHITECTURES)
|
|
||||||
execute_process(COMMAND uname -m OUTPUT_VARIABLE ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
message(STATUS "Detected native architecture ${ARCHITECTURE}.")
|
|
||||||
set(CMAKE_OSX_ARCHITECTURES "${ARCHITECTURE}")
|
|
||||||
endif()
|
|
||||||
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64")
|
|
||||||
set(OSX_DEPLOYMENT_TARGET 10.13)
|
|
||||||
else()
|
|
||||||
set(OSX_DEPLOYMENT_TARGET 11.00)
|
|
||||||
endif()
|
|
||||||
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} -arch ${CMAKE_OSX_ARCHITECTURES}")
|
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++ -arch ${CMAKE_OSX_ARCHITECTURES}")
|
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} -arch ${CMAKE_OSX_ARCHITECTURES}")
|
set(PLATFORM_LDFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
|
||||||
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64")
|
set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin15.0.0) # OS X 10.11
|
||||||
set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin17.0.0) # OS X 10.13
|
|
||||||
else()
|
|
||||||
set(PLATFORM_BUILD_TARGET --build=aarch64-apple-darwin20.0.0) # macOS 11.00
|
|
||||||
endif()
|
|
||||||
set(PLATFORM_CMAKE_FLAGS
|
set(PLATFORM_CMAKE_FLAGS
|
||||||
-DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_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}
|
||||||
)
|
)
|
||||||
@@ -171,7 +167,6 @@ else()
|
|||||||
|
|
||||||
set(CONFIGURE_ENV
|
set(CONFIGURE_ENV
|
||||||
export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
|
export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
|
||||||
export MACOSX_SDK_VERSION=${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}
|
||||||
@@ -195,7 +190,7 @@ set(DEFAULT_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")
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
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 -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)
|
||||||
@@ -33,39 +33,37 @@ else()
|
|||||||
SET(OSL_PLATFORM_FLAGS)
|
SET(OSL_PLATFORM_FLAGS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/openexr/lib/Imath${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Half{OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/IlmThread${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Iex${OPENEXR_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=OFF
|
-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
|
||||||
-DBoost_NO_BOOST_CMAKE=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}/openexr/
|
-DILMBASE_HOME=${LIBDIR}/ilmbase/
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
|
||||||
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_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
|
||||||
-DOSL_BUILD_MATERIALX=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_INCLUDE_DIR=${LIBDIR}/openimageio/include
|
|
||||||
-DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
|
-DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
|
||||||
|
-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
|
||||||
@@ -74,8 +72,6 @@ set(OSL_EXTRA_ARGS
|
|||||||
-DSTOP_ON_WARNING=OFF
|
-DSTOP_ON_WARNING=OFF
|
||||||
-DUSE_LLVM_BITCODE=OFF
|
-DUSE_LLVM_BITCODE=OFF
|
||||||
-DUSE_PARTIO=OFF
|
-DUSE_PARTIO=OFF
|
||||||
-DUSE_QT=OFF
|
|
||||||
-DINSTALL_DOCS=OFF
|
|
||||||
${OSL_SIMD_FLAGS}
|
${OSL_SIMD_FLAGS}
|
||||||
-DPARTIO_LIBRARIES=
|
-DPARTIO_LIBRARIES=
|
||||||
)
|
)
|
||||||
@@ -91,6 +87,7 @@ elseif(APPLE)
|
|||||||
set(OSL_EXTRA_ARGS
|
set(OSL_EXTRA_ARGS
|
||||||
${OSL_EXTRA_ARGS}
|
${OSL_EXTRA_ARGS}
|
||||||
-DHIDE_SYMBOLS=OFF
|
-DHIDE_SYMBOLS=OFF
|
||||||
|
-DPUGIXML_HOME=${LIBDIR}/pugixml
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -110,13 +107,14 @@ add_dependencies(
|
|||||||
external_boost
|
external_boost
|
||||||
ll
|
ll
|
||||||
external_clang
|
external_clang
|
||||||
|
external_ilmbase
|
||||||
external_openexr
|
external_openexr
|
||||||
external_zlib
|
external_zlib
|
||||||
external_flexbison
|
external_flexbison
|
||||||
external_openimageio
|
external_openimageio
|
||||||
)
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX AND NOT APPLE)
|
||||||
# Rely on PugiXML compiled with OpenImageIO
|
# Rely on PugiXML compiled with OpenImageIO
|
||||||
else()
|
else()
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
|
@@ -29,7 +29,6 @@ if(MSVC)
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python.exe ${PYTARGET}/bin/python.exe
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python.exe ${PYTARGET}/bin/python.exe
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}.dll ${PYTARGET}/bin/python${PYTHON_SHORT_VERSION_NO_DOTS}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}.dll ${PYTARGET}/bin/python${PYTHON_SHORT_VERSION_NO_DOTS}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python3${PYTHON_POSTFIX}.dll ${PYTARGET}/bin/python3${PYTHON_POSTFIX}.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}.pdb ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.pdb
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}.pdb ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.pdb
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/include/ ${PYTARGET}/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/include/ ${PYTARGET}/include/
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/lib/ ${PYTARGET}/lib/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/lib/ ${PYTARGET}/lib/
|
||||||
@@ -48,7 +47,6 @@ if(MSVC)
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_POSTFIX}.exe ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_POSTFIX}.exe ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${PYTARGET}/bin/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${PYTARGET}/bin/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python3${PYTHON_POSTFIX}.dll ${PYTARGET}/bin/python3${PYTHON_POSTFIX}.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb
|
COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/include/ ${PYTARGET}/include/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/include/ ${PYTARGET}/include/
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/lib/ ${PYTARGET}/lib/
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PYSRC}/lib/ ${PYTARGET}/lib/
|
||||||
|
@@ -22,14 +22,10 @@ set(PNG_EXTRA_ARGS
|
|||||||
-DPNG_STATIC=ON
|
-DPNG_STATIC=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
if(APPLE AND ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64"))
|
|
||||||
set(PNG_EXTRA_ARGS ${PNG_EXTRA_ARGS} -DPNG_HARDWARE_OPTIMIZATIONS=ON -DPNG_ARM_NEON=on -DCMAKE_SYSTEM_PROCESSOR="aarch64")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ExternalProject_Add(external_png
|
ExternalProject_Add(external_png
|
||||||
URL ${PNG_URI}
|
URL ${PNG_URI}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH SHA256=${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
|
||||||
|
@@ -24,7 +24,7 @@ if(WIN32)
|
|||||||
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})
|
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}
|
||||||
@@ -32,7 +32,6 @@ if(WIN32)
|
|||||||
URL_HASH MD5=${PTHREADS_HASH}
|
URL_HASH MD5=${PTHREADS_HASH}
|
||||||
PREFIX ${BUILD_DIR}/pthreads
|
PREFIX ${BUILD_DIR}/pthreads
|
||||||
CONFIGURE_COMMAND echo .
|
CONFIGURE_COMMAND echo .
|
||||||
PATCH_COMMAND COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/pthreads/src/external_pthreads < ${PATCH_DIR}/pthreads.diff
|
|
||||||
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} &&
|
||||||
|
@@ -43,17 +43,12 @@ if(WIN32)
|
|||||||
PREFIX ${BUILD_DIR}/python
|
PREFIX ${BUILD_DIR}/python
|
||||||
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 ${PYTHON_BINARY_INTERNAL} ${PYTHON_SRC}/PC/layout/main.py -b ${PYTHON_SRC}/PCbuild/amd64 -s ${PYTHON_SRC} -t ${PYTHON_SRC}/tmp/ --include-underpth --include-stable --include-pip --include-dev --include-launchers --include-venv --include-symbols ${PYTHON_EXTRA_INSTLAL_FLAGS} --copy ${LIBDIR}/python
|
INSTALL_COMMAND ${PYTHON_BINARY_INTERNAL} ${PYTHON_SRC}/PC/layout/main.py -b ${PYTHON_SRC}/PCbuild/amd64 -s ${PYTHON_SRC} -t ${PYTHON_SRC}/tmp/ --include-underpth --include-stable --include-pip --include-dev --include-launchers --include-symbols ${PYTHON_EXTRA_INSTLAL_FLAGS} --copy ${LIBDIR}/python
|
||||||
)
|
)
|
||||||
|
|
||||||
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
|
||||||
#
|
|
||||||
# Disable libintl (gettext library) as it might come from Homebrew, which makes
|
|
||||||
# it so test program compiles, but the Python does not. This is because for Python
|
|
||||||
# we use isysroot, which seems to forbid using libintl.h.
|
|
||||||
# The gettext functionality seems to come from CoreFoundation, so should be all fine.
|
|
||||||
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 &&
|
||||||
@@ -65,21 +60,13 @@ else()
|
|||||||
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)
|
||||||
export ac_cv_header_libintl_h=no &&
|
|
||||||
export ac_cv_lib_intl_textdomain=no
|
|
||||||
)
|
|
||||||
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
|
|
||||||
set(PYTHON_FUNC_CONFIGS ${PYTHON_FUNC_CONFIGS} && export PYTHON_DECIMAL_WITH_MACHINE=ansi64)
|
|
||||||
endif()
|
|
||||||
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)
|
||||||
set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_macos.diff)
|
|
||||||
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)
|
||||||
set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_linux.diff)
|
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")
|
||||||
@@ -89,6 +76,7 @@ else()
|
|||||||
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)
|
||||||
|
|
||||||
ExternalProject_Add(external_python
|
ExternalProject_Add(external_python
|
||||||
URL ${PYTHON_URI}
|
URL ${PYTHON_URI}
|
||||||
|
227
build_files/build_environment/cmake/setup_mingw32.cmake
Normal file
227
build_files/build_environment/cmake/setup_mingw32.cmake
Normal file
@@ -0,0 +1,227 @@
|
|||||||
|
# ***** BEGIN GPL LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
#
|
||||||
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
|
####################################################################################################################
|
||||||
|
# Mingw32 Builds
|
||||||
|
####################################################################################################################
|
||||||
|
# This installs mingw32+msys to compile ffmpeg/iconv/libsndfile/lapack/fftw3
|
||||||
|
####################################################################################################################
|
||||||
|
|
||||||
|
message("LIBDIR = ${LIBDIR}")
|
||||||
|
macro(cmake_to_msys_path MsysPath ResultingPath)
|
||||||
|
string(REPLACE ":" "" TmpPath "${MsysPath}")
|
||||||
|
string(SUBSTRING ${TmpPath} 0 1 Drive)
|
||||||
|
string(SUBSTRING ${TmpPath} 1 255 PathPart)
|
||||||
|
string(TOLOWER ${Drive} LowerDrive)
|
||||||
|
string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
|
||||||
|
endmacro()
|
||||||
|
cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
|
||||||
|
message("mingw_LIBDIR = ${mingw_LIBDIR}")
|
||||||
|
|
||||||
|
message("Checking for mingw32")
|
||||||
|
# download mingw32
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# make mingw root directory
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# 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"))
|
||||||
|
message("Extracting mingw32")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("Checking for pkg-config")
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# 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"))
|
||||||
|
message("Extracting pkg-config")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
|
)
|
||||||
|
|
||||||
|
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"
|
||||||
|
)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("Checking for nasm")
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# extract nasm
|
||||||
|
if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"))
|
||||||
|
message("Extracting nasm")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/
|
||||||
|
)
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe"
|
||||||
|
)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe)
|
||||||
|
message("Checking for mingwGet")
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# 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"))
|
||||||
|
message("Extracting mingw-get")
|
||||||
|
execute_process(
|
||||||
|
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/
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
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")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-patch
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
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")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-mktemp
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/bin/
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
message("Checking for CoreUtils")
|
||||||
|
# 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")
|
||||||
|
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")
|
||||||
|
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"))
|
||||||
|
message("Installing pr from CoreUtils 5.97")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
|
)
|
||||||
|
|
||||||
|
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"
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd")
|
||||||
|
message("Installing ming32sh.cmd")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming32sh.cmd ${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("Checking for perl")
|
||||||
|
# download perl for libvpx
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# make perl root directory
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/perl32")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl32
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# extract perl
|
||||||
|
if((NOT EXISTS "${DOWNLOAD_DIR}/perl32/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip"))
|
||||||
|
message("Extracting perl")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip
|
||||||
|
WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl32
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# get yasm for vpx
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
|
||||||
|
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")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("checking i686-w64-mingw32-strings")
|
||||||
|
# copy strings.exe to i686-w64-mingw32-strings for x264
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe")
|
||||||
|
message("fixing i686-w64-mingw32-strings.exe")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("checking i686-w64-mingw32-ar.exe")
|
||||||
|
# copy ar.exe to i686-w64-mingw32-ar.exe for x264
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe")
|
||||||
|
message("fixing i686-w64-mingw32-ar.exe")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("checking i686-w64-mingw32-strip.exe")
|
||||||
|
# copy strip.exe to i686-w64-mingw32-strip.exe for x264
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe")
|
||||||
|
message("fixing i686-w64-mingw32-strip.exe")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message("checking i686-w64-mingw32-ranlib.exe")
|
||||||
|
# copy ranlib.exe to i686-w64-mingw32-ranlib.exe for x264
|
||||||
|
if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe")
|
||||||
|
message("fixing i686-w64-mingw32-ranlib.exe")
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe"
|
||||||
|
)
|
||||||
|
endif()
|
@@ -19,7 +19,7 @@
|
|||||||
####################################################################################################################
|
####################################################################################################################
|
||||||
# Mingw64 Builds
|
# Mingw64 Builds
|
||||||
####################################################################################################################
|
####################################################################################################################
|
||||||
# This installs mingw64+msys to compile ffmpeg/iconv/libsndfile/fftw3
|
# This installs mingw64+msys to compile ffmpeg/iconv/libsndfile/lapack/fftw3
|
||||||
####################################################################################################################
|
####################################################################################################################
|
||||||
|
|
||||||
message("LIBDIR = ${LIBDIR}")
|
message("LIBDIR = ${LIBDIR}")
|
||||||
@@ -128,14 +128,6 @@ if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "$
|
|||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/m4.exe"))
|
|
||||||
message("Installing m4")
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-m4
|
|
||||||
WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/bin/
|
|
||||||
)
|
|
||||||
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")
|
||||||
|
@@ -21,7 +21,7 @@ set(SNDFILE_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/ogg/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 )
|
||||||
@@ -60,14 +60,3 @@ if(UNIX)
|
|||||||
external_flac
|
external_flac
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release AND WIN32)
|
|
||||||
ExternalProject_Add_Step(external_sndfile after_install
|
|
||||||
COMMAND lib /def:${BUILD_DIR}/sndfile/src/external_sndfile/src/libsndfile-1.def /machine:x64 /out:${BUILD_DIR}/sndfile/src/external_sndfile/src/libsndfile-1.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/bin/libsndfile-1.dll ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/sndfile/src/external_sndfile/src/libsndfile-1.lib ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/include/sndfile.h ${HARVEST_TARGET}/sndfile/include/sndfile.h
|
|
||||||
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
@@ -19,10 +19,8 @@
|
|||||||
set(SQLITE_CONFIGURE_ENV echo .)
|
set(SQLITE_CONFIGURE_ENV echo .)
|
||||||
set(SQLITE_CONFIGURATION_ARGS)
|
set(SQLITE_CONFIGURATION_ARGS)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX AND NOT APPLE)
|
||||||
if(NOT APPLE)
|
set(SQLITE_LDFLAGS -Wl,--as-needed)
|
||||||
set(SQLITE_LDFLAGS -Wl,--as-needed)
|
|
||||||
endif()
|
|
||||||
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 \
|
||||||
@@ -51,7 +49,7 @@ ExternalProject_Add(external_sqlite
|
|||||||
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 ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/sqlite/src/external_sqlite < ${PATCH_DIR}/sqlite.diff
|
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
|
||||||
|
@@ -20,7 +20,7 @@ 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-${CMAKE_OSX_ARCHITECTURES}")
|
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)
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
my %targets = (
|
%targets = (
|
||||||
|
|
||||||
"blender-linux-x86" => {
|
"blender-linux-x86" => {
|
||||||
inherit_from => [ "linux-x86" ],
|
inherit_from => [ "linux-x86" ],
|
||||||
@@ -12,9 +12,4 @@ my %targets = (
|
|||||||
inherit_from => [ "darwin64-x86_64-cc" ],
|
inherit_from => [ "darwin64-x86_64-cc" ],
|
||||||
cflags => add("-fPIC"),
|
cflags => add("-fPIC"),
|
||||||
},
|
},
|
||||||
"blender-darwin-arm64" => {
|
|
||||||
inherit_from => [ "darwin-common" ],
|
|
||||||
cxxflags => add("-fPIC -arch arm64"),
|
|
||||||
cflags => add("-fPIC -arch arm64"),
|
|
||||||
},
|
|
||||||
);
|
);
|
||||||
|
@@ -15,25 +15,13 @@
|
|||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
if(WIN32)
|
|
||||||
set(TBB_EXTRA_ARGS
|
set(TBB_EXTRA_ARGS
|
||||||
-DTBB_BUILD_SHARED=On
|
-DTBB_BUILD_SHARED=Off
|
||||||
-DTBB_BUILD_TBBMALLOC=On
|
-DTBB_BUILD_TBBMALLOC=On
|
||||||
-DTBB_BUILD_TBBMALLOC_PROXY=On
|
-DTBB_BUILD_TBBMALLOC_PROXY=Off
|
||||||
-DTBB_BUILD_STATIC=Off
|
-DTBB_BUILD_STATIC=On
|
||||||
)
|
)
|
||||||
set(TBB_LIBRARY tbb)
|
|
||||||
set(TBB_STATIC_LIBRARY Off)
|
|
||||||
else()
|
|
||||||
set(TBB_EXTRA_ARGS
|
|
||||||
-DTBB_BUILD_SHARED=Off
|
|
||||||
-DTBB_BUILD_TBBMALLOC=On
|
|
||||||
-DTBB_BUILD_TBBMALLOC_PROXY=Off
|
|
||||||
-DTBB_BUILD_STATIC=On
|
|
||||||
)
|
|
||||||
set(TBB_LIBRARY tbb_static)
|
|
||||||
set(TBB_STATIC_LIBRARY On)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# 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
|
||||||
@@ -50,34 +38,14 @@ ExternalProject_Add(external_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
|
||||||
# findtbb.cmake in some deps *NEEDS* to find tbb_debug.lib even if they are not going to use it
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
|
||||||
# to make that test pass, we place a copy with the right name in the lib folder.
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc_debug.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb.dll ${HARVEST_TARGET}/tbb/lib/tbb_debug.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.dll ${HARVEST_TARGET}/tbb/lib/tbbmalloc_debug.dll
|
|
||||||
# Normal collection of build artifacts
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb.dll ${HARVEST_TARGET}/tbb/lib/tbb.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.dll ${HARVEST_TARGET}/tbb/lib/tbbmalloc.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.dll ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy.dll
|
|
||||||
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
|
||||||
# findtbb.cmake in some deps *NEEDS* to find tbb.lib even if they are not going to use it
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
|
||||||
# to make that test pass, we place a copy with the right name in the lib folder.
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_debug.lib ${LIBDIR}/tbb/lib/tbb.lib
|
|
||||||
# Normal collection of build artifacts
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_debug.lib ${HARVEST_TARGET}/tbb/lib/debug/tbb_debug.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_debug.dll ${HARVEST_TARGET}/tbb/lib/debug/tbb_debug.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy_debug.lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.dll ${HARVEST_TARGET}/tbb/lib/debug/tbbmalloc.dll
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.dll ${HARVEST_TARGET}/tbb/lib/debug/tbbmalloc_proxy.dll
|
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(UNIX)
|
if (UNIX)
|
||||||
set(THEORA_CONFIGURE_ENV ${CONFIGURE_ENV} && export HAVE_PDFLATEX=no)
|
set(THEORA_CONFIGURE_ENV ${CONFIGURE_ENV} && export HAVE_PDFLATEX=no)
|
||||||
else()
|
else()
|
||||||
set(THEORA_CONFIGURE_ENV ${CONFIGURE_ENV})
|
set(THEORA_CONFIGURE_ENV ${CONFIGURE_ENV})
|
||||||
@@ -27,7 +27,6 @@ ExternalProject_Add(external_theora
|
|||||||
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
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/theora/src/external_theora < ${PATCH_DIR}/theora.diff
|
|
||||||
CONFIGURE_COMMAND ${THEORA_CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
|
CONFIGURE_COMMAND ${THEORA_CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
|
||||||
--disable-shared
|
--disable-shared
|
||||||
--enable-static
|
--enable-static
|
||||||
|
@@ -16,12 +16,6 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
if(WITH_WEBP)
|
|
||||||
set(WITH_TIFF_WEBP ON)
|
|
||||||
else()
|
|
||||||
set(WITH_TIFF_WEBP OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
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
|
||||||
@@ -29,8 +23,6 @@ set(TIFF_EXTRA_ARGS
|
|||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
-Dlzma=OFF
|
-Dlzma=OFF
|
||||||
-Djbig=OFF
|
-Djbig=OFF
|
||||||
-Dzstd=OFF
|
|
||||||
-Dwebp=${WITH_TIFF_WEBP}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_tiff
|
ExternalProject_Add(external_tiff
|
||||||
|
@@ -24,7 +24,7 @@ ExternalProject_Add(external_tinyxml
|
|||||||
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
|
||||||
|
@@ -1,106 +0,0 @@
|
|||||||
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
|
||||||
|
|
||||||
set(USD_EXTRA_ARGS
|
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
|
||||||
-DBoost_USE_STATIC_RUNTIME=OFF
|
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
|
||||||
-DTBB_INCLUDE_DIRS=${LIBDIR}/tbb/include
|
|
||||||
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
|
||||||
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
|
||||||
# USD wants the tbb debug lib set even when you are doing a release build
|
|
||||||
# Otherwise it will error out during the cmake configure phase.
|
|
||||||
-DTBB_LIBRARIES_DEBUG=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
|
||||||
|
|
||||||
# This is a preventative measure that avoids possible conflicts when add-ons
|
|
||||||
# try to load another USD library into the same process space.
|
|
||||||
-DPXR_SET_INTERNAL_NAMESPACE=usdBlender
|
|
||||||
|
|
||||||
-DPXR_ENABLE_PYTHON_SUPPORT=OFF
|
|
||||||
-DPXR_BUILD_IMAGING=OFF
|
|
||||||
-DPXR_BUILD_TESTS=OFF
|
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
|
||||||
-DPYTHON_EXECUTABLE=${PYTHON_BINARY}
|
|
||||||
-DPXR_BUILD_MONOLITHIC=ON
|
|
||||||
|
|
||||||
# The PXR_BUILD_USD_TOOLS argument is patched-in by usd.diff. An upstream pull request
|
|
||||||
# can be found at https://github.com/PixarAnimationStudios/USD/pull/1048.
|
|
||||||
-DPXR_BUILD_USD_TOOLS=OFF
|
|
||||||
|
|
||||||
-DCMAKE_DEBUG_POSTFIX=_d
|
|
||||||
# USD is hellbound on making a shared lib, unless you point this variable to a valid cmake file
|
|
||||||
# doesn't have to make sense, but as long as it points somewhere valid it will skip the shared lib.
|
|
||||||
-DPXR_MONOLITHIC_IMPORT=${BUILD_DIR}/usd/src/external_usd/cmake/defaults/Version.cmake
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_usd
|
|
||||||
URL ${USD_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${USD_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/usd
|
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/usd/src/external_usd < ${PATCH_DIR}/usd.diff
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/usd -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${USD_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/usd
|
|
||||||
)
|
|
||||||
|
|
||||||
add_dependencies(
|
|
||||||
external_usd
|
|
||||||
external_tbb
|
|
||||||
external_boost
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
# USD currently demands python be available at build time
|
|
||||||
# and then proceeds not to use it, but still checks that the
|
|
||||||
# version of the interpreter it is not going to use is atleast 2.7
|
|
||||||
# so we need this dep currently since there is no system python
|
|
||||||
# on windows.
|
|
||||||
add_dependencies(
|
|
||||||
external_usd
|
|
||||||
external_python
|
|
||||||
)
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
|
||||||
ExternalProject_Add_Step(external_usd after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/ ${HARVEST_TARGET}/usd
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Release/usd_m.lib ${HARVEST_TARGET}/usd/lib/libusd_m.lib
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
|
||||||
ExternalProject_Add_Step(external_usd after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/lib ${HARVEST_TARGET}/usd/lib
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Debug/usd_m_d.lib ${HARVEST_TARGET}/usd/lib/libusd_m_d.lib
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
# USD has two build options. The default build creates lots of small libraries,
|
|
||||||
# whereas the 'monolithic' build produces only a single library. The latter
|
|
||||||
# makes linking simpler, so that's what we use in Blender. However, running
|
|
||||||
# 'make install' in the USD sources doesn't install the static library in that
|
|
||||||
# case (only the shared library). As a result, we need to grab the `libusd_m.a`
|
|
||||||
# file from the build directory instead of from the install directory.
|
|
||||||
ExternalProject_Add_Step(external_usd after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/libusd_m.a ${HARVEST_TARGET}/usd/lib/libusd_m.a
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
@@ -20,55 +20,59 @@ set(ZLIB_VERSION 1.2.11)
|
|||||||
set(ZLIB_URI https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz)
|
set(ZLIB_URI https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz)
|
||||||
set(ZLIB_HASH 1c9f62f0778697a09d36121ead88e08e)
|
set(ZLIB_HASH 1c9f62f0778697a09d36121ead88e08e)
|
||||||
|
|
||||||
set(OPENAL_VERSION 1.20.1)
|
set(OPENAL_VERSION 1.18.2)
|
||||||
set(OPENAL_URI http://openal-soft.org/openal-releases/openal-soft-${OPENAL_VERSION}.tar.bz2)
|
set(OPENAL_URI http://openal-soft.org/openal-releases/openal-soft-${OPENAL_VERSION}.tar.bz2)
|
||||||
set(OPENAL_HASH 556695068ce8375b89986083d810fd35)
|
set(OPENAL_HASH d4eeb0889812e2fdeaa1843523d76190)
|
||||||
|
|
||||||
set(PNG_VERSION 1.6.37)
|
set(PNG_VERSION 1.6.35)
|
||||||
set(PNG_URI http://prdownloads.sourceforge.net/libpng/libpng-${PNG_VERSION}.tar.xz)
|
set(PNG_URI http://prdownloads.sourceforge.net/libpng/libpng-${PNG_VERSION}.tar.xz)
|
||||||
set(PNG_HASH 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca)
|
set(PNG_HASH 678b7e696a62a193ed3503b04bf449d6)
|
||||||
|
|
||||||
set(JPEG_VERSION 2.0.4)
|
set(JPEG_VERSION 1.5.3)
|
||||||
set(JPEG_URI https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_VERSION}.tar.gz)
|
set(JPEG_URI https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_VERSION}.tar.gz)
|
||||||
set(JPEG_HASH 44c43e4a9fb352f47090804529317c88)
|
set(JPEG_HASH 5b7549d440b86c98a517355c102d155e)
|
||||||
|
|
||||||
set(BOOST_VERSION 1.70.0)
|
set(BOOST_VERSION 1.68.0)
|
||||||
set(BOOST_VERSION_NODOTS 1_70_0)
|
set(BOOST_VERSION_NODOTS 1_68_0)
|
||||||
set(BOOST_VERSION_NODOTS_SHORT 1_70)
|
|
||||||
set(BOOST_URI https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
set(BOOST_URI https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
||||||
set(BOOST_HASH fea771fe8176828fabf9c09242ee8c26)
|
set(BOOST_HASH 5d8b4503582fffa9eefdb9045359c239)
|
||||||
|
|
||||||
# Using old version as recommended by OpenVDB build documentation.
|
set(BLOSC_VERSION 1.14.4)
|
||||||
set(BLOSC_VERSION 1.5.0)
|
|
||||||
set(BLOSC_URI https://github.com/Blosc/c-blosc/archive/v${BLOSC_VERSION}.tar.gz)
|
set(BLOSC_URI https://github.com/Blosc/c-blosc/archive/v${BLOSC_VERSION}.tar.gz)
|
||||||
set(BLOSC_HASH 6e4a49c8c06f05aa543f3312cfce3d55)
|
set(BLOSC_HASH e80dfc71e4cba03b8d01ed0876547ffe)
|
||||||
|
|
||||||
set(PTHREADS_VERSION 3.0.0)
|
set(PTHREADS_VERSION 3.0.0)
|
||||||
set(PTHREADS_URI http://sourceforge.mirrorservice.org/p/pt/pthreads4w/pthreads4w-code-v${PTHREADS_VERSION}.zip)
|
set(PTHREADS_URI http://sourceforge.mirrorservice.org/p/pt/pthreads4w/pthreads4w-code-v${PTHREADS_VERSION}.zip)
|
||||||
set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653)
|
set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653)
|
||||||
|
|
||||||
set(OPENEXR_VERSION 2.4.0)
|
set(ILMBASE_VERSION 2.3.0)
|
||||||
set(OPENEXR_URI https://github.com/AcademySoftwareFoundation/openexr/archive/v${OPENEXR_VERSION}.tar.gz)
|
|
||||||
set(OPENEXR_HASH 9e4d69cf2a12c6fb19b98af7c5e0eaee)
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Openexr started appending _d on its own so now
|
|
||||||
# we need to tell the build the postfix is _s while
|
|
||||||
# telling all other deps the postfix is _s_d
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
|
set(ILMBASE_VERSION_POSTFIX _s)
|
||||||
set(OPENEXR_VERSION_POSTFIX _s)
|
set(OPENEXR_VERSION_POSTFIX _s)
|
||||||
set(OPENEXR_VERSION_BUILD_POSTFIX _s)
|
|
||||||
else()
|
else()
|
||||||
|
set(ILMBASE_VERSION_POSTFIX _s_d)
|
||||||
set(OPENEXR_VERSION_POSTFIX _s_d)
|
set(OPENEXR_VERSION_POSTFIX _s_d)
|
||||||
set(OPENEXR_VERSION_BUILD_POSTFIX _s)
|
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(OPENEXR_VERSION_BUILD_POSTFIX)
|
set(ILMBASE_VERSION_POSTFIX)
|
||||||
|
endif()
|
||||||
|
set(ILMBASE_URI https://github.com/openexr/openexr/releases/download/v${ILMBASE_VERSION}/ilmbase-${ILMBASE_VERSION}.tar.gz)
|
||||||
|
set(ILMBASE_HASH 354bf86de3b930ab87ac63619d60c860)
|
||||||
|
|
||||||
|
set(OPENEXR_VERSION 2.3.0)
|
||||||
|
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_HASH ed159435d508240712fbaaa21d94bafb)
|
||||||
|
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_HASH a157e8a46596bc185f2472a5a4682174)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(FREETYPE_VERSION 2.10.2)
|
set(FREETYPE_VERSION 2.9.1)
|
||||||
set(FREETYPE_URI http://prdownloads.sourceforge.net/freetype/freetype-${FREETYPE_VERSION}.tar.gz)
|
set(FREETYPE_URI http://prdownloads.sourceforge.net/freetype/freetype-${FREETYPE_VERSION}.tar.gz)
|
||||||
set(FREETYPE_HASH b1cb620e4c875cd4d1bfa04945400945)
|
set(FREETYPE_HASH 3adb0e35d3c100c456357345ccfa8056)
|
||||||
|
|
||||||
set(GLEW_VERSION 1.13.0)
|
set(GLEW_VERSION 1.13.0)
|
||||||
set(GLEW_URI http://prdownloads.sourceforge.net/glew/glew/${GLEW_VERSION}/glew-${GLEW_VERSION}.tgz)
|
set(GLEW_URI http://prdownloads.sourceforge.net/glew/glew/${GLEW_VERSION}/glew-${GLEW_VERSION}.tgz)
|
||||||
@@ -78,95 +82,99 @@ set(FREEGLUT_VERSION 3.0.0)
|
|||||||
set(FREEGLUT_URI http://pilotfiber.dl.sourceforge.net/project/freeglut/freeglut/${FREEGLUT_VERSION}/freeglut-${FREEGLUT_VERSION}.tar.gz)
|
set(FREEGLUT_URI http://pilotfiber.dl.sourceforge.net/project/freeglut/freeglut/${FREEGLUT_VERSION}/freeglut-${FREEGLUT_VERSION}.tar.gz)
|
||||||
set(FREEGLUT_HASH 90c3ca4dd9d51cf32276bc5344ec9754)
|
set(FREEGLUT_HASH 90c3ca4dd9d51cf32276bc5344ec9754)
|
||||||
|
|
||||||
set(ALEMBIC_VERSION 1.7.12)
|
set(HDF5_VERSION 1.8.17)
|
||||||
set(ALEMBIC_URI https://github.com/alembic/alembic/archive/${ALEMBIC_VERSION}.tar.gz)
|
set(HDF5_URI https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-${HDF5_VERSION}/src/hdf5-${HDF5_VERSION}.tar.gz)
|
||||||
set(ALEMBIC_MD5 e2b3777f23c5c09481a008cc6f0f8a40)
|
set(HDF5_HASH 7d572f8f3b798a628b8245af0391a0ca)
|
||||||
|
|
||||||
# hash is for 3.1.2
|
set(ALEMBIC_VERSION 1.7.8)
|
||||||
|
set(ALEMBIC_URI https://github.com/alembic/alembic/archive/${ALEMBIC_VERSION}.tar.gz)
|
||||||
|
set(ALEMBIC_MD5 d095c2feb5e183b824904db7b63c1d30)
|
||||||
|
|
||||||
|
## hash is for 3.1.2
|
||||||
set(GLFW_GIT_UID 30306e54705c3adae9fe082c816a3be71963485c)
|
set(GLFW_GIT_UID 30306e54705c3adae9fe082c816a3be71963485c)
|
||||||
set(GLFW_URI https://github.com/glfw/glfw/archive/${GLFW_GIT_UID}.zip)
|
set(GLFW_URI https://github.com/glfw/glfw/archive/${GLFW_GIT_UID}.zip)
|
||||||
set(GLFW_HASH 20cacb1613da7eeb092f3ac4f6b2b3d0)
|
set(GLFW_HASH 20cacb1613da7eeb092f3ac4f6b2b3d0)
|
||||||
|
|
||||||
# latest uid in git as of 2016-04-01
|
#latest uid in git as of 2016-04-01
|
||||||
set(CLEW_GIT_UID 277db43f6cafe8b27c6f1055f69dc67da4aeb299)
|
set(CLEW_GIT_UID 277db43f6cafe8b27c6f1055f69dc67da4aeb299)
|
||||||
set(CLEW_URI https://github.com/OpenCLWrangler/clew/archive/${CLEW_GIT_UID}.zip)
|
set(CLEW_URI https://github.com/OpenCLWrangler/clew/archive/${CLEW_GIT_UID}.zip)
|
||||||
set(CLEW_HASH 2c699d10ed78362e71f56fae2a4c5f98)
|
set(CLEW_HASH 2c699d10ed78362e71f56fae2a4c5f98)
|
||||||
|
|
||||||
# latest uid in git as of 2016-04-01
|
#latest uid in git as of 2016-04-01
|
||||||
set(CUEW_GIT_UID 1744972026de9cf27c8a7dc39cf39cd83d5f922f)
|
set(CUEW_GIT_UID 1744972026de9cf27c8a7dc39cf39cd83d5f922f)
|
||||||
set(CUEW_URI https://github.com/CudaWrangler/cuew/archive/${CUEW_GIT_UID}.zip)
|
set(CUEW_URI https://github.com/CudaWrangler/cuew/archive/${CUEW_GIT_UID}.zip)
|
||||||
set(CUEW_HASH 86760d62978ebfd96cd93f5aa1abaf4a)
|
set(CUEW_HASH 86760d62978ebfd96cd93f5aa1abaf4a)
|
||||||
|
|
||||||
set(OPENSUBDIV_VERSION v3_4_3)
|
set(OPENSUBDIV_VERSION v3_4_0_RC2)
|
||||||
|
set(OPENSUBDIV_Hash f6a10ba9efaa82fde86fe65aad346319)
|
||||||
set(OPENSUBDIV_URI https://github.com/PixarAnimationStudios/OpenSubdiv/archive/${OPENSUBDIV_VERSION}.tar.gz)
|
set(OPENSUBDIV_URI https://github.com/PixarAnimationStudios/OpenSubdiv/archive/${OPENSUBDIV_VERSION}.tar.gz)
|
||||||
set(OPENSUBDIV_HASH 7bbfa275d021fb829e521df749160edb)
|
|
||||||
|
|
||||||
set(SDL_VERSION 2.0.12)
|
set(SDL_VERSION 2.0.8)
|
||||||
set(SDL_URI https://www.libsdl.org/release/SDL2-${SDL_VERSION}.tar.gz)
|
set(SDL_URI https://www.libsdl.org/release/SDL2-${SDL_VERSION}.tar.gz)
|
||||||
set(SDL_HASH 783b6f2df8ff02b19bb5ce492b99c8ff)
|
set(SDL_HASH 3800d705cef742c6a634f202c37f263f)
|
||||||
|
|
||||||
set(OPENCOLLADA_VERSION v1.6.68)
|
set(OPENCOLLADA_VERSION v1.6.68)
|
||||||
set(OPENCOLLADA_URI https://github.com/KhronosGroup/OpenCOLLADA/archive/${OPENCOLLADA_VERSION}.tar.gz)
|
set(OPENCOLLADA_URI https://github.com/KhronosGroup/OpenCOLLADA/archive/${OPENCOLLADA_VERSION}.tar.gz)
|
||||||
set(OPENCOLLADA_HASH ee7dae874019fea7be11613d07567493)
|
set(OPENCOLLADA_HASH ee7dae874019fea7be11613d07567493)
|
||||||
|
|
||||||
set(OPENCOLORIO_VERSION 1.1.1)
|
set(OPENCOLORIO_VERSION 1.1.0)
|
||||||
set(OPENCOLORIO_URI https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/v${OPENCOLORIO_VERSION}.tar.gz)
|
set(OPENCOLORIO_URI https://github.com/imageworks/OpenColorIO/archive/v${OPENCOLORIO_VERSION}.tar.gz)
|
||||||
set(OPENCOLORIO_HASH 23d8b9ac81599305539a5a8674b94a3d)
|
set(OPENCOLORIO_HASH 802d8f5b1d1fe316ec5f76511aa611b8)
|
||||||
|
|
||||||
set(LLVM_VERSION 9.0.1)
|
set(LLVM_VERSION 6.0.1)
|
||||||
set(LLVM_URI https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VERSION}/llvm-${LLVM_VERSION}.src.tar.xz)
|
set(LLVM_URI http://releases.llvm.org/${LLVM_VERSION}/llvm-${LLVM_VERSION}.src.tar.xz)
|
||||||
set(LLVM_HASH 31eb9ce73dd2a0f8dcab8319fb03f8fc)
|
set(LLVM_HASH c88c98709300ce2c285391f387fecce0)
|
||||||
|
|
||||||
set(CLANG_URI https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VERSION}/clang-${LLVM_VERSION}.src.tar.xz)
|
set(CLANG_URI http://releases.llvm.org/${LLVM_VERSION}/cfe-${LLVM_VERSION}.src.tar.xz)
|
||||||
set(CLANG_HASH 13468e4a44940efef1b75e8641752f90)
|
set(CLANG_HASH 4e419bd4e3b55aa06d872320f754bd85)
|
||||||
|
|
||||||
set(OPENMP_URI https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VERSION}/openmp-${LLVM_VERSION}.src.tar.xz)
|
set(OPENMP_URI http://releases.llvm.org/${LLVM_VERSION}/openmp-${LLVM_VERSION}.src.tar.xz)
|
||||||
set(OPENMP_HASH 6eade16057edbdecb3c4eef9daa2bfcf)
|
set(OPENMP_HASH 4826402ae3633c36c51ba4d0e5527d30)
|
||||||
|
|
||||||
set(OPENIMAGEIO_VERSION 2.1.15.0)
|
set(OPENIMAGEIO_VERSION 1.8.13)
|
||||||
set(OPENIMAGEIO_URI https://github.com/OpenImageIO/oiio/archive/Release-${OPENIMAGEIO_VERSION}.tar.gz)
|
set(OPENIMAGEIO_URI https://github.com/OpenImageIO/oiio/archive/Release-${OPENIMAGEIO_VERSION}.tar.gz)
|
||||||
set(OPENIMAGEIO_HASH f03aa5e3ac4795af04771ee4146e9832)
|
set(OPENIMAGEIO_HASH f5526c3c9878029ee900d84856683f93)
|
||||||
|
|
||||||
set(TIFF_VERSION 4.1.0)
|
set(TIFF_VERSION 4.0.9)
|
||||||
set(TIFF_URI http://download.osgeo.org/libtiff/tiff-${TIFF_VERSION}.tar.gz)
|
set(TIFF_URI http://download.osgeo.org/libtiff/tiff-${TIFF_VERSION}.tar.gz)
|
||||||
set(TIFF_HASH 2165e7aba557463acc0664e71a3ed424)
|
set(TIFF_HASH 54bad211279cc93eb4fca31ba9bfdc79)
|
||||||
|
|
||||||
set(OSL_VERSION 1.10.10)
|
set(OSL_VERSION 1.9.9)
|
||||||
set(OSL_URI https://github.com/imageworks/OpenShadingLanguage/archive/Release-${OSL_VERSION}.tar.gz)
|
set(OSL_URI https://github.com/imageworks/OpenShadingLanguage/archive/Release-${OSL_VERSION}.tar.gz)
|
||||||
set(OSL_HASH 00dec08a93c8084e53848b9ad047889f)
|
set(OSL_HASH 44ad511e424965a10fce051a053b0605)
|
||||||
|
|
||||||
set(PYTHON_VERSION 3.7.7)
|
set(PYTHON_VERSION 3.7.4)
|
||||||
set(PYTHON_SHORT_VERSION 3.7)
|
set(PYTHON_SHORT_VERSION 3.7)
|
||||||
set(PYTHON_SHORT_VERSION_NO_DOTS 37)
|
set(PYTHON_SHORT_VERSION_NO_DOTS 37)
|
||||||
set(PYTHON_URI https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tar.xz)
|
set(PYTHON_URI https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tar.xz)
|
||||||
set(PYTHON_HASH 172c650156f7bea68ce31b2fd01fa766)
|
set(PYTHON_HASH d33e4aae66097051c2eca45ee3604803)
|
||||||
|
|
||||||
set(TBB_VERSION 2019_U9)
|
set(TBB_VERSION 2018_U5)
|
||||||
set(TBB_URI https://github.com/oneapi-src/oneTBB/archive/${TBB_VERSION}.tar.gz)
|
set(TBB_URI https://github.com/01org/tbb/archive/${TBB_VERSION}.tar.gz)
|
||||||
set(TBB_HASH 26263622e9187212ec240dcf01b66207)
|
set(TBB_HASH ff3ae09f8c23892fbc3008c39f78288f)
|
||||||
|
|
||||||
set(OPENVDB_VERSION 7.0.0)
|
set(OPENVDB_VERSION 5.1.0)
|
||||||
set(OPENVDB_URI https://github.com/dreamworksanimation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz)
|
set(OPENVDB_URI https://github.com/dreamworksanimation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz)
|
||||||
set(OPENVDB_HASH fd6c4f168282f7e0e494d290cd531fa8)
|
set(OPENVDB_HASH 5310101f874dcfd2165f9cee68c22624)
|
||||||
|
|
||||||
set(IDNA_VERSION 2.9)
|
set(IDNA_VERSION 2.8)
|
||||||
set(CHARDET_VERSION 3.0.4)
|
set(CHARDET_VERSION 3.0.4)
|
||||||
set(URLLIB3_VERSION 1.25.9)
|
set(URLLIB3_VERSION 1.25.3)
|
||||||
set(CERTIFI_VERSION 2020.4.5.2)
|
set(CERTIFI_VERSION 2019.6.16)
|
||||||
set(REQUESTS_VERSION 2.23.0)
|
set(REQUESTS_VERSION 2.22.0)
|
||||||
|
|
||||||
set(NUMPY_VERSION 1.17.5)
|
set(NUMPY_VERSION v1.17.0)
|
||||||
set(NUMPY_SHORT_VERSION 1.17)
|
set(NUMPY_SHORT_VERSION 1.17)
|
||||||
set(NUMPY_URI https://github.com/numpy/numpy/releases/download/v${NUMPY_VERSION}/numpy-${NUMPY_VERSION}.zip)
|
set(NUMPY_URI https://files.pythonhosted.org/packages/da/32/1b8f2bb5fb50e4db68543eb85ce37b9fa6660cd05b58bddfafafa7ed62da/numpy-1.17.0.zip)
|
||||||
set(NUMPY_HASH 763a5646fa6eef7a22f4895bca0524f2)
|
set(NUMPY_HASH aed49b31bcb44ec73b8155be78566135)
|
||||||
|
|
||||||
set(LAME_VERSION 3.100)
|
set(LAME_VERSION 3.100)
|
||||||
set(LAME_URI http://downloads.sourceforge.net/project/lame/lame/3.100/lame-${LAME_VERSION}.tar.gz)
|
set(LAME_URI http://downloads.sourceforge.net/project/lame/lame/3.100/lame-${LAME_VERSION}.tar.gz)
|
||||||
set(LAME_HASH 83e260acbe4389b54fe08e0bdbf7cddb)
|
set(LAME_HASH 83e260acbe4389b54fe08e0bdbf7cddb)
|
||||||
|
|
||||||
set(OGG_VERSION 1.3.4)
|
set(OGG_VERSION 1.3.3)
|
||||||
set(OGG_URI http://downloads.xiph.org/releases/ogg/libogg-${OGG_VERSION}.tar.gz)
|
set(OGG_URI http://downloads.xiph.org/releases/ogg/libogg-${OGG_VERSION}.tar.gz)
|
||||||
set(OGG_HASH fe5670640bd49e828d64d2879c31cb4dde9758681bb664f9bdbf159a01b0c76e)
|
set(OGG_HASH c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985)
|
||||||
|
|
||||||
set(VORBIS_VERSION 1.3.6)
|
set(VORBIS_VERSION 1.3.6)
|
||||||
set(VORBIS_URI http://downloads.xiph.org/releases/vorbis/libvorbis-${VORBIS_VERSION}.tar.gz)
|
set(VORBIS_URI http://downloads.xiph.org/releases/vorbis/libvorbis-${VORBIS_VERSION}.tar.gz)
|
||||||
@@ -176,49 +184,55 @@ set(THEORA_VERSION 1.1.1)
|
|||||||
set(THEORA_URI http://downloads.xiph.org/releases/theora/libtheora-${THEORA_VERSION}.tar.bz2)
|
set(THEORA_URI http://downloads.xiph.org/releases/theora/libtheora-${THEORA_VERSION}.tar.bz2)
|
||||||
set(THEORA_HASH b6ae1ee2fa3d42ac489287d3ec34c5885730b1296f0801ae577a35193d3affbc)
|
set(THEORA_HASH b6ae1ee2fa3d42ac489287d3ec34c5885730b1296f0801ae577a35193d3affbc)
|
||||||
|
|
||||||
set(FLAC_VERSION 1.3.3)
|
set(FLAC_VERSION 1.3.2)
|
||||||
set(FLAC_URI http://downloads.xiph.org/releases/flac/flac-${FLAC_VERSION}.tar.xz)
|
set(FLAC_URI http://downloads.xiph.org/releases/flac/flac-${FLAC_VERSION}.tar.xz)
|
||||||
set(FLAC_HASH 213e82bd716c9de6db2f98bcadbc4c24c7e2efe8c75939a1a84e28539c4e1748)
|
set(FLAC_HASH 91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f)
|
||||||
|
|
||||||
set(VPX_VERSION 1.8.2)
|
set(VPX_VERSION 1.7.0)
|
||||||
set(VPX_URI https://github.com/webmproject/libvpx/archive/v${VPX_VERSION}/libvpx-v${VPX_VERSION}.tar.gz)
|
set(VPX_URI https://github.com/webmproject/libvpx/archive/v${VPX_VERSION}/libvpx-v${VPX_VERSION}.tar.gz)
|
||||||
set(VPX_HASH 8735d9fcd1a781ae6917f28f239a8aa358ce4864ba113ea18af4bb2dc8b474ac)
|
set(VPX_HASH 1fec931eb5c94279ad219a5b6e0202358e94a93a90cfb1603578c326abfc1238)
|
||||||
|
|
||||||
set(OPUS_VERSION 1.3.1)
|
set(X264_URI http://download.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20180811-2245-stable.tar.bz2)
|
||||||
set(OPUS_URI https://archive.mozilla.org/pub/opus/opus-${OPUS_VERSION}.tar.gz)
|
set(X264_HASH ae8a868a0e236a348b35d79f3ee80294b169d1195408b689f9851383661ed7aa)
|
||||||
set(OPUS_HASH 65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d)
|
|
||||||
|
|
||||||
set(X264_URI https://code.videolan.org/videolan/x264/-/archive/33f9e1474613f59392be5ab6a7e7abf60fa63622/x264-33f9e1474613f59392be5ab6a7e7abf60fa63622.tar.gz)
|
set(XVIDCORE_VERSION 1.3.5)
|
||||||
set(X264_HASH 5456450ee1ae02cd2328be3157367a232a0ab73315e8c8f80dab80469524f525)
|
set(XVIDCORE_URI http://downloads.xvid.org/downloads/xvidcore-${XVIDCORE_VERSION}.tar.gz)
|
||||||
|
set(XVIDCORE_HASH 165ba6a2a447a8375f7b06db5a3c91810181f2898166e7c8137401d7fc894cf0)
|
||||||
|
|
||||||
set(XVIDCORE_VERSION 1.3.7)
|
#this has to be in sync with the version in blenders /extern folder
|
||||||
set(XVIDCORE_URI https://downloads.xvid.com/downloads/xvidcore-${XVIDCORE_VERSION}.tar.gz)
|
set(OPENJPEG_VERSION 2.3.0)
|
||||||
set(XVIDCORE_HASH abbdcbd39555691dd1c9b4d08f0a031376a3b211652c0d8b3b8aa9be1303ce2d)
|
|
||||||
|
|
||||||
set(OPENJPEG_VERSION 2.3.1)
|
|
||||||
set(OPENJPEG_SHORT_VERSION 2.3)
|
set(OPENJPEG_SHORT_VERSION 2.3)
|
||||||
set(OPENJPEG_URI https://github.com/uclouvain/openjpeg/archive/v${OPENJPEG_VERSION}.tar.gz)
|
# Use slightly newer commit after release which includes a cmake fix
|
||||||
set(OPENJPEG_HASH 63f5a4713ecafc86de51bfad89cc07bb788e9bba24ebbf0c4ca637621aadb6a9)
|
set(OPENJPEG_URI https://github.com/uclouvain/openjpeg/archive/66297f07a43.zip)
|
||||||
|
set(OPENJPEG_HASH 8242b18d908c7c42174e4231a741cfa7ce7c26b6ed5c9644feb9df7b3054310b)
|
||||||
|
|
||||||
set(FFMPEG_VERSION 4.2.3)
|
set(FAAD_VERSION 2-2.8.8)
|
||||||
|
set(FAAD_URI http://downloads.sourceforge.net/faac/faad${FAAD_VERSION}.tar.gz)
|
||||||
|
set(FAAD_HASH 28f6116efdbe9378269f8a6221767d1f)
|
||||||
|
|
||||||
|
set(FFMPEG_VERSION 4.0.2)
|
||||||
set(FFMPEG_URI http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
set(FFMPEG_URI http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
||||||
set(FFMPEG_HASH 695fad11f3baf27784e24cb0e977b65a)
|
set(FFMPEG_HASH 5576e8a22f80b6a336db39808f427cfb)
|
||||||
|
|
||||||
set(FFTW_VERSION 3.3.8)
|
set(FFTW_VERSION 3.3.8)
|
||||||
set(FFTW_URI http://www.fftw.org/fftw-${FFTW_VERSION}.tar.gz)
|
set(FFTW_URI http://www.fftw.org/fftw-${FFTW_VERSION}.tar.gz)
|
||||||
set(FFTW_HASH 8aac833c943d8e90d51b697b27d4384d)
|
set(FFTW_HASH 8aac833c943d8e90d51b697b27d4384d)
|
||||||
|
|
||||||
set(ICONV_VERSION 1.16)
|
set(ICONV_VERSION 1.15)
|
||||||
set(ICONV_URI http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV_VERSION}.tar.gz)
|
set(ICONV_URI http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV_VERSION}.tar.gz)
|
||||||
set(ICONV_HASH 7d2a800b952942bb2880efb00cfd524c)
|
set(ICONV_HASH ace8b5f2db42f7b3b3057585e80d9808)
|
||||||
|
|
||||||
|
set(LAPACK_VERSION 3.6.0)
|
||||||
|
set(LAPACK_URI http://www.netlib.org/lapack/lapack-${LAPACK_VERSION}.tgz)
|
||||||
|
set(LAPACK_HASH f2f6c67134e851fe189bb3ca1fbb5101)
|
||||||
|
|
||||||
set(SNDFILE_VERSION 1.0.28)
|
set(SNDFILE_VERSION 1.0.28)
|
||||||
set(SNDFILE_URI http://www.mega-nerd.com/libsndfile/files/libsndfile-${SNDFILE_VERSION}.tar.gz)
|
set(SNDFILE_URI http://www.mega-nerd.com/libsndfile/files/libsndfile-${SNDFILE_VERSION}.tar.gz)
|
||||||
set(SNDFILE_HASH 646b5f98ce89ac60cdb060fcd398247c)
|
set(SNDFILE_HASH 646b5f98ce89ac60cdb060fcd398247c)
|
||||||
|
|
||||||
# set(HIDAPI_VERSION 0.8.0-rc1)
|
#set(HIDAPI_VERSION 0.8.0-rc1)
|
||||||
# set(HIDAPI_URI https://github.com/signal11/hidapi/archive/hidapi-${HIDAPI_VERSION}.tar.gz)
|
#set(HIDAPI_URI https://github.com/signal11/hidapi/archive/hidapi-${HIDAPI_VERSION}.tar.gz)
|
||||||
# set(HIDAPI_HASH 069f9dd746edc37b6b6d0e3656f47199)
|
#set(HIDAPI_HASH 069f9dd746edc37b6b6d0e3656f47199)
|
||||||
|
|
||||||
set(HIDAPI_UID 89a6c75dc6f45ecabd4ddfbd2bf5ba6ad8ba38b5)
|
set(HIDAPI_UID 89a6c75dc6f45ecabd4ddfbd2bf5ba6ad8ba38b5)
|
||||||
set(HIDAPI_URI https://github.com/TheOnlyJoey/hidapi/archive/${HIDAPI_UID}.zip)
|
set(HIDAPI_URI https://github.com/TheOnlyJoey/hidapi/archive/${HIDAPI_UID}.zip)
|
||||||
@@ -232,30 +246,30 @@ set(SPNAV_VERSION 0.2.3)
|
|||||||
set(SPNAV_URI http://downloads.sourceforge.net/project/spacenav/spacenav%20library%20%28SDK%29/libspnav%20${SPNAV_VERSION}/libspnav-${SPNAV_VERSION}.tar.gz)
|
set(SPNAV_URI http://downloads.sourceforge.net/project/spacenav/spacenav%20library%20%28SDK%29/libspnav%20${SPNAV_VERSION}/libspnav-${SPNAV_VERSION}.tar.gz)
|
||||||
set(SPNAV_HASH 44d840540d53326d4a119c0f1aa7bf0a)
|
set(SPNAV_HASH 44d840540d53326d4a119c0f1aa7bf0a)
|
||||||
|
|
||||||
set(JEMALLOC_VERSION 5.2.1)
|
set(JEMALLOC_VERSION 5.0.1)
|
||||||
set(JEMALLOC_URI https://github.com/jemalloc/jemalloc/releases/download/${JEMALLOC_VERSION}/jemalloc-${JEMALLOC_VERSION}.tar.bz2)
|
set(JEMALLOC_URI https://github.com/jemalloc/jemalloc/releases/download/${JEMALLOC_VERSION}/jemalloc-${JEMALLOC_VERSION}.tar.bz2)
|
||||||
set(JEMALLOC_HASH 3d41fbf006e6ebffd489bdb304d009ae)
|
set(JEMALLOC_HASH 507f7b6b882d868730d644510491d18f)
|
||||||
|
|
||||||
set(XML2_VERSION 2.9.10)
|
set(XML2_VERSION 2.9.4)
|
||||||
set(XML2_URI http://xmlsoft.org/sources/libxml2-${XML2_VERSION}.tar.gz)
|
set(XML2_URI http://xmlsoft.org/sources/libxml2-${XML2_VERSION}.tar.gz)
|
||||||
set(XML2_HASH 10942a1dc23137a8aa07f0639cbfece5)
|
set(XML2_HASH ae249165c173b1ff386ee8ad676815f5)
|
||||||
|
|
||||||
set(TINYXML_VERSION 2_6_2)
|
set(TINYXML_VERSION 2_6_2)
|
||||||
set(TINYXML_VERSION_DOTS 2.6.2)
|
set(TINYXML_VERSION_DOTS 2.6.2)
|
||||||
set(TINYXML_URI https://nchc.dl.sourceforge.net/project/tinyxml/tinyxml/${TINYXML_VERSION_DOTS}/tinyxml_${TINYXML_VERSION}.tar.gz)
|
set(TINYXML_URI https://nchc.dl.sourceforge.net/project/tinyxml/tinyxml/${TINYXML_VERSION_DOTS}/tinyxml_${TINYXML_VERSION}.tar.gz)
|
||||||
set(TINYXML_HASH c1b864c96804a10526540c664ade67f0)
|
set(TINYXML_HASH c1b864c96804a10526540c664ade67f0)
|
||||||
|
|
||||||
set(YAMLCPP_VERSION 0.6.3)
|
set(YAMLCPP_VERSION 0.6.2)
|
||||||
set(YAMLCPP_URI https://codeload.github.com/jbeder/yaml-cpp/tar.gz/yaml-cpp-${YAMLCPP_VERSION})
|
set(YAMLCPP_URI https://codeload.github.com/jbeder/yaml-cpp/tar.gz/yaml-cpp-${YAMLCPP_VERSION})
|
||||||
set(YAMLCPP_HASH b45bf1089a382e81f6b661062c10d0c2)
|
set(YAMLCPP_HASH 5b943e9af0060d0811148b037449ef82)
|
||||||
|
|
||||||
set(LCMS_VERSION 2.9)
|
set(LCMS_VERSION 2.9)
|
||||||
set(LCMS_URI https://nchc.dl.sourceforge.net/project/lcms/lcms/${LCMS_VERSION}/lcms2-${LCMS_VERSION}.tar.gz)
|
set(LCMS_URI https://nchc.dl.sourceforge.net/project/lcms/lcms/${LCMS_VERSION}/lcms2-${LCMS_VERSION}.tar.gz)
|
||||||
set(LCMS_HASH 8de1b7724f578d2995c8fdfa35c3ad0e)
|
set(LCMS_HASH 8de1b7724f578d2995c8fdfa35c3ad0e)
|
||||||
|
|
||||||
set(PUGIXML_VERSION 1.10)
|
set(PUGIXML_VERSION 1.9)
|
||||||
set(PUGIXML_URI https://github.com/zeux/pugixml/archive/v${PUGIXML_VERSION}.tar.gz)
|
set(PUGIXML_URI https://github.com/zeux/pugixml/archive/v1.9.tar.gz)
|
||||||
set(PUGIXML_HASH 0c208b0664c7fb822bf1b49ad035e8fd)
|
set(PUGIXML_HASH 9346ca1dce2c48f1748c12fdac41a714)
|
||||||
|
|
||||||
set(FLEXBISON_VERSION 2.5.5)
|
set(FLEXBISON_VERSION 2.5.5)
|
||||||
set(FLEXBISON_URI http://prdownloads.sourceforge.net/winflexbison//win_flex_bison-2.5.5.zip)
|
set(FLEXBISON_URI http://prdownloads.sourceforge.net/winflexbison//win_flex_bison-2.5.5.zip)
|
||||||
@@ -265,53 +279,30 @@ set(FLEXBISON_HASH d87a3938194520d904013abef3df10ce)
|
|||||||
|
|
||||||
# NOTE: bzip.org domain does no longer belong to BZip 2 project, so we download
|
# NOTE: bzip.org domain does no longer belong to BZip 2 project, so we download
|
||||||
# sources from Debian packaging.
|
# sources from Debian packaging.
|
||||||
set(BZIP2_VERSION 1.0.8)
|
set(BZIP2_VERSION 1.0.6)
|
||||||
set(BZIP2_URI http://http.debian.net/debian/pool/main/b/bzip2/bzip2_${BZIP2_VERSION}.orig.tar.gz)
|
set(BZIP2_URI http://http.debian.net/debian/pool/main/b/bzip2/bzip2_${BZIP2_VERSION}.orig.tar.bz2)
|
||||||
set(BZIP2_HASH ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269)
|
set(BZIP2_HASH d70a9ccd8bdf47e302d96c69fecd54925f45d9c7b966bb4ef5f56b770960afa7)
|
||||||
|
|
||||||
set(FFI_VERSION 3.3)
|
set(FFI_VERSION 3.2.1)
|
||||||
set(FFI_URI https://sourceware.org/pub/libffi/libffi-${FFI_VERSION}.tar.gz)
|
set(FFI_URI https://sourceware.org/pub/libffi/libffi-${FFI_VERSION}.tar.gz)
|
||||||
set(FFI_HASH 72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056)
|
set(FFI_HASH d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37)
|
||||||
|
|
||||||
set(LZMA_VERSION 5.2.5)
|
set(LZMA_VERSION 5.2.4)
|
||||||
set(LZMA_URI https://tukaani.org/xz/xz-${LZMA_VERSION}.tar.bz2)
|
set(LZMA_URI https://tukaani.org/xz/xz-${LZMA_VERSION}.tar.bz2)
|
||||||
set(LZMA_HASH 5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df)
|
set(LZMA_HASH 3313fd2a95f43d88e44264e6b015e7d03053e681860b0d5d3f9baca79c57b7bf)
|
||||||
|
|
||||||
set(SSL_VERSION 1.1.1g)
|
set(SSL_VERSION 1.1.0i)
|
||||||
set(SSL_URI https://www.openssl.org/source/openssl-${SSL_VERSION}.tar.gz)
|
set(SSL_URI https://www.openssl.org/source/openssl-${SSL_VERSION}.tar.gz)
|
||||||
set(SSL_HASH ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46)
|
set(SSL_HASH ebbfc844a8c8cc0ea5dc10b86c9ce97f401837f3fa08c17b2cdadc118253cf99)
|
||||||
|
|
||||||
set(SQLITE_VERSION 3.31.1)
|
set(SQLITE_VERSION 3.24.0)
|
||||||
set(SQLITE_URI https://www.sqlite.org/2018/sqlite-src-3240000.zip)
|
set(SQLITE_URI https://www.sqlite.org/2018/sqlite-src-3240000.zip)
|
||||||
set(SQLITE_HASH fb558c49ee21a837713c4f1e7e413309aabdd9c7)
|
set(SQLITE_HASH fb558c49ee21a837713c4f1e7e413309aabdd9c7)
|
||||||
|
|
||||||
set(EMBREE_VERSION 3.10.0)
|
set(EMBREE_VERSION 3.2.4)
|
||||||
set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
|
set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
|
||||||
set(EMBREE_HASH 4bbe29e7eaa46417efc75fc5f1e8eb87)
|
set(EMBREE_HASH 3d4a1147002ff43939d45140aa9d6fb8)
|
||||||
|
|
||||||
set(USD_VERSION 20.05)
|
set(OIDN_VERSION 1.0.0)
|
||||||
set(USD_URI https://github.com/PixarAnimationStudios/USD/archive/v${USD_VERSION}.tar.gz)
|
set(OIDN_URI https://github.com/OpenImageDenoise/oidn/releases/download/v${OIDN_VERSION}/oidn-${OIDN_VERSION}.src.zip)
|
||||||
set(USD_HASH 6d679e739e7f65725d9c029e37dda9fc)
|
set(OIDN_HASH 19fe67b0164e8f020ac8a4f520defe60)
|
||||||
|
|
||||||
set(OIDN_VERSION 1.2.1)
|
|
||||||
set(OIDN_URI https://github.com/OpenImageDenoise/oidn/releases/download/v${OIDN_VERSION}/oidn-${OIDN_VERSION}.src.tar.gz)
|
|
||||||
set(OIDN_HASH cbebc1a25eb6de62af3a59e943063608)
|
|
||||||
|
|
||||||
set(LIBGLU_VERSION 9.0.1)
|
|
||||||
set(LIBGLU_URI ftp://ftp.freedesktop.org/pub/mesa/glu/glu-${LIBGLU_VERSION}.tar.xz)
|
|
||||||
set(LIBGLU_HASH 151aef599b8259efe9acd599c96ea2a3)
|
|
||||||
|
|
||||||
set(MESA_VERSION 18.3.1)
|
|
||||||
set(MESA_URI ftp://ftp.freedesktop.org/pub/mesa//mesa-${MESA_VERSION}.tar.xz)
|
|
||||||
set(MESA_HASH d60828056d77bfdbae0970f9b15fb1be)
|
|
||||||
|
|
||||||
set(NASM_VERSION 2.15.02)
|
|
||||||
set(NASM_URI https://www.nasm.us/pub/nasm/releasebuilds/${NASM_VERSION}/nasm-${NASM_VERSION}.tar.xz)
|
|
||||||
set(NASM_HASH f4fd1329b1713e1ccd34b2fc121c4bcd278c9f91cc4cb205ae8fcd2e4728dd14)
|
|
||||||
|
|
||||||
set(XR_OPENXR_SDK_VERSION 1.0.8)
|
|
||||||
set(XR_OPENXR_SDK_URI https://github.com/KhronosGroup/OpenXR-SDK/archive/release-${XR_OPENXR_SDK_VERSION}.tar.gz)
|
|
||||||
set(XR_OPENXR_SDK_HASH c6de63d2e0f9029aa58dfa97cad8ce07)
|
|
||||||
set(ISPC_VERSION v1.13.0)
|
|
||||||
set(ISPC_URI https://github.com/ispc/ispc/archive/${ISPC_VERSION}.tar.gz)
|
|
||||||
set(ISPC_HASH 4bf5e8d0020c4b9980faa702c1a6f25f)
|
|
||||||
|
@@ -24,11 +24,7 @@ if(WIN32)
|
|||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
|
set(VPX_EXTRA_FLAGS --target=x86_64-darwin13-gcc)
|
||||||
set(VPX_EXTRA_FLAGS --target=generic-gnu)
|
|
||||||
else()
|
|
||||||
set(VPX_EXTRA_FLAGS --target=x86_64-darwin17-gcc)
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
set(VPX_EXTRA_FLAGS --target=generic-gnu)
|
set(VPX_EXTRA_FLAGS --target=generic-gnu)
|
||||||
endif()
|
endif()
|
||||||
@@ -53,8 +49,6 @@ ExternalProject_Add(external_vpx
|
|||||||
--disable-avx2
|
--disable-avx2
|
||||||
--disable-unit-tests
|
--disable-unit-tests
|
||||||
--disable-examples
|
--disable-examples
|
||||||
--enable-vp8
|
|
||||||
--enable-vp9
|
|
||||||
${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
|
||||||
|
@@ -39,12 +39,3 @@ ExternalProject_Add(external_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
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
|
||||||
ExternalProject_Add_Step(external_webp after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
@@ -18,29 +18,19 @@
|
|||||||
|
|
||||||
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})
|
||||||
endif()
|
set(X264_PATCH_CMD ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/x264/src/external_x264 < ${PATCH_DIR}/x264.diff)
|
||||||
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
|
|
||||||
set(X264_EXTRA_ARGS ${X264_EXTRA_ARGS} "--disable-asm")
|
|
||||||
set(X264_CONFIGURE_ENV echo .)
|
|
||||||
else()
|
|
||||||
set(X264_CONFIGURE_ENV
|
|
||||||
export AS=${LIBDIR}/nasm/bin/nasm
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
set(X264_CONFIGURE_ENV 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
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && ${X264_CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ &&
|
PATCH_COMMAND ${X264_PATCH_CMD}
|
||||||
${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
|
||||||
@@ -53,10 +43,3 @@ ExternalProject_Add(external_x264
|
|||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
|
set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
add_dependencies(
|
|
||||||
external_x264
|
|
||||||
external_nasm
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
@@ -1,60 +0,0 @@
|
|||||||
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
|
||||||
|
|
||||||
|
|
||||||
# Keep flags in sync with install_deps.sh ones in compile_XR_OpenXR_SDK()
|
|
||||||
set(XR_OPENXR_SDK_EXTRA_ARGS
|
|
||||||
-DBUILD_FORCE_GENERATION=OFF
|
|
||||||
-DBUILD_LOADER=ON
|
|
||||||
-DDYNAMIC_LOADER=OFF
|
|
||||||
)
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
list(APPEND XR_OPENXR_SDK_EXTRA_ARGS
|
|
||||||
-DBUILD_WITH_WAYLAND_HEADERS=OFF
|
|
||||||
-DBUILD_WITH_XCB_HEADERS=OFF
|
|
||||||
-DBUILD_WITH_XLIB_HEADERS=ON
|
|
||||||
-DBUILD_WITH_SYSTEM_JSONCPP=OFF
|
|
||||||
-DCMAKE_CXX_FLAGS=-DDISABLE_STD_FILESYSTEM=1
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ExternalProject_Add(external_xr_openxr_sdk
|
|
||||||
URL ${XR_OPENXR_SDK_URI}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH MD5=${XR_OPENXR_SDK_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/xr_openxr_sdk
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/xr_openxr_sdk ${DEFAULT_CMAKE_FLAGS} ${XR_OPENXR_SDK_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/xr_openxr_sdk
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
|
||||||
ExternalProject_Add_Step(external_xr_openxr_sdk after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/xr_openxr_sdk/include/openxr ${HARVEST_TARGET}/xr_openxr_sdk/include/openxr
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/xr_openxr_sdk/lib ${HARVEST_TARGET}/xr_openxr_sdk/lib
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
|
||||||
ExternalProject_Add_Step(external_xr_openxr_sdk after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/xr_openxr_sdk/lib/openxr_loader.lib ${HARVEST_TARGET}/xr_openxr_sdk/lib/openxr_loader_d.lib
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
@@ -21,7 +21,7 @@ set(YAMLCPP_EXTRA_ARGS
|
|||||||
-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
|
||||||
-DYAML_MSVC_SHARED_RT=ON
|
-DMSVC_SHARED_RT=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_yamlcpp
|
ExternalProject_Add(external_yamlcpp
|
||||||
|
@@ -1,100 +0,0 @@
|
|||||||
strict graph {
|
|
||||||
graph[autosize = false, size = "25.7,8.3!", resolution = 300, overlap = false, splines = false, outputorder=edgesfirst ];
|
|
||||||
node [style=filled fillcolor=white];
|
|
||||||
external_alembic -- external_boost;
|
|
||||||
external_alembic -- external_zlib;
|
|
||||||
external_alembic -- external_openexr;
|
|
||||||
external_blosc -- external_zlib;
|
|
||||||
external_blosc -- external_pthreads;
|
|
||||||
external_boost -- Make_Python_Environment;
|
|
||||||
external_clang -- ll;
|
|
||||||
external_ffmpeg -- external_zlib;
|
|
||||||
external_ffmpeg -- external_faad;
|
|
||||||
external_ffmpeg -- external_openjpeg;
|
|
||||||
external_ffmpeg -- external_xvidcore;
|
|
||||||
external_ffmpeg -- external_x264;
|
|
||||||
external_ffmpeg -- external_vpx;
|
|
||||||
external_ffmpeg -- external_theora;
|
|
||||||
external_ffmpeg -- external_vorbis;
|
|
||||||
external_ffmpeg -- external_ogg;
|
|
||||||
external_ffmpeg -- external_lame;
|
|
||||||
external_ffmpeg -- external_zlib_mingw;
|
|
||||||
external_numpy -- Make_Python_Environment;
|
|
||||||
external_opencollada -- external_xml2;
|
|
||||||
external_opencolorio -- external_boost;
|
|
||||||
external_opencolorio -- external_tinyxml;
|
|
||||||
external_opencolorio -- external_yamlcpp;
|
|
||||||
external_openexr -- external_zlib;
|
|
||||||
external_openimageio -- external_png;
|
|
||||||
external_openimageio -- external_zlib;
|
|
||||||
external_openimageio -- external_openexr;
|
|
||||||
external_openimageio -- external_openexr;
|
|
||||||
external_openimageio -- external_jpeg;
|
|
||||||
external_openimageio -- external_boost;
|
|
||||||
external_openimageio -- external_tiff;
|
|
||||||
external_openimageio -- external_opencolorio;
|
|
||||||
external_openimageio -- external_openjpeg;
|
|
||||||
external_openimageio -- external_webp;
|
|
||||||
external_openimageio -- external_opencolorio_extra;
|
|
||||||
external_openmp -- external_clang;
|
|
||||||
external_opensubdiv -- external_glew;
|
|
||||||
external_opensubdiv -- external_glfw;
|
|
||||||
external_opensubdiv -- external_clew;
|
|
||||||
external_opensubdiv -- external_cuew;
|
|
||||||
external_opensubdiv -- external_tbb;
|
|
||||||
openvdb -- external_tbb;
|
|
||||||
openvdb -- external_boost;
|
|
||||||
openvdb -- external_openexr;
|
|
||||||
openvdb -- external_openexr;
|
|
||||||
openvdb -- external_zlib;
|
|
||||||
openvdb -- external_blosc;
|
|
||||||
external_osl -- external_boost;
|
|
||||||
external_osl -- ll;
|
|
||||||
external_osl -- external_clang;
|
|
||||||
external_osl -- external_openexr;
|
|
||||||
external_osl -- external_openexr;
|
|
||||||
external_osl -- external_zlib;
|
|
||||||
external_osl -- external_flexbison;
|
|
||||||
external_osl -- external_openimageio;
|
|
||||||
external_osl -- external_pugixml;
|
|
||||||
external_png -- external_zlib;
|
|
||||||
external_python_site_packages -- Make_Python_Environment;
|
|
||||||
external_sndfile -- external_ogg;
|
|
||||||
external_sndfile -- external_vorbis;
|
|
||||||
external_sndfile -- external_flac;
|
|
||||||
external_theora -- external_vorbis;
|
|
||||||
external_theora -- external_ogg;
|
|
||||||
external_tiff -- external_zlib;
|
|
||||||
external_vorbis -- external_ogg;
|
|
||||||
blender-- external_ffmpeg;
|
|
||||||
blender-- external_alembic;
|
|
||||||
blender-- external_openjpeg;
|
|
||||||
blender-- external_opencolorio;
|
|
||||||
blender-- external_openexr;
|
|
||||||
blender-- external_opensubdiv;
|
|
||||||
blender-- openvdb;
|
|
||||||
blender-- external_osl;
|
|
||||||
blender-- external_boost;
|
|
||||||
blender-- external_jpeg;
|
|
||||||
blender-- external_png;
|
|
||||||
blender-- external_python;
|
|
||||||
blender-- external_sndfile;
|
|
||||||
blender-- external_iconv;
|
|
||||||
blender-- external_fftw3;
|
|
||||||
external_python-- external_python_site_packages;
|
|
||||||
external_python_site_packages-- requests;
|
|
||||||
external_python_site_packages-- idna;
|
|
||||||
external_python_site_packages-- chardet;
|
|
||||||
external_python_site_packages-- urllib3;
|
|
||||||
external_python_site_packages-- certifi;
|
|
||||||
external_python-- external_numpy;
|
|
||||||
external_usd-- external_boost;
|
|
||||||
external_usd-- external_tbb;
|
|
||||||
blender-- external_opencollada;
|
|
||||||
blender-- external_sdl;
|
|
||||||
blender-- external_freetype;
|
|
||||||
blender-- external_pthreads;
|
|
||||||
blender-- external_zlib;
|
|
||||||
blender-- external_openal;
|
|
||||||
blender-- external_usd;
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load Diff
@@ -1,2 +0,0 @@
|
|||||||
# Files contains mixed line endings, patch needs to preserve them to apply.
|
|
||||||
opencollada.diff binary
|
|
@@ -10,122 +10,22 @@ diff -Naur src/blosc/CMakeLists.txt external_blosc/blosc/CMakeLists.txt
|
|||||||
endif(NOT Threads_FOUND)
|
endif(NOT Threads_FOUND)
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
find_package(Threads REQUIRED)
|
find_package(Threads REQUIRED)
|
||||||
diff -Naur src/CMakeLists.txt external_blosc/CMakeLists.txt
|
|
||||||
--- src/CMakeLists.txt 2016-02-03 10:26:28 -0700
|
|
||||||
+++ external_blosc/CMakeLists.txt 2017-03-03 09:03:31 -0700
|
|
||||||
@@ -17,8 +17,8 @@
|
|
||||||
# do not include support for the Snappy library
|
|
||||||
# DEACTIVATE_ZLIB: default OFF
|
|
||||||
# do not include support for the Zlib library
|
|
||||||
-# PREFER_EXTERNAL_COMPLIBS: default ON
|
|
||||||
-# when found, use the installed compression libs instead of included sources
|
|
||||||
+# PREFER_EXTERNAL_ZLIB: default ON
|
|
||||||
+# when found, use the installed zlib instead of included sources
|
|
||||||
# TEST_INCLUDE_BENCH_SINGLE_1: default ON
|
|
||||||
# add a test that runs the benchmark program passing "single" with 1 thread
|
|
||||||
# as first parameter
|
|
||||||
@@ -80,29 +80,23 @@
|
|
||||||
"Do not include support for the SNAPPY library." OFF)
|
|
||||||
option(DEACTIVATE_ZLIB
|
|
||||||
"Do not include support for the ZLIB library." OFF)
|
|
||||||
-option(PREFER_EXTERNAL_COMPLIBS
|
|
||||||
- "When found, use the installed compression libs instead of included sources." ON)
|
|
||||||
+option(PREFER_EXTERNAL_ZLIB
|
|
||||||
+ "When found, use the installed zlib instead of included sources." ON)
|
|
||||||
|
|
||||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
|
||||||
|
|
||||||
-if(NOT PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
+if(NOT PREFER_EXTERNAL_ZLIB)
|
|
||||||
message(STATUS "Finding external libraries disabled. Using internal sources.")
|
|
||||||
-endif(NOT PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
+endif(NOT PREFER_EXTERNAL_ZLIB)
|
|
||||||
|
|
||||||
|
|
||||||
if(NOT DEACTIVATE_LZ4)
|
|
||||||
- if(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
- find_package(LZ4)
|
|
||||||
- endif(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
# HAVE_LZ4 will be set to true because even if the library is
|
|
||||||
# not found, we will use the included sources for it
|
|
||||||
set(HAVE_LZ4 TRUE)
|
|
||||||
endif(NOT DEACTIVATE_LZ4)
|
|
||||||
|
|
||||||
if(NOT DEACTIVATE_SNAPPY)
|
|
||||||
- if(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
- find_package(Snappy)
|
|
||||||
- endif(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
# HAVE_SNAPPY will be set to true because even if the library is not found,
|
|
||||||
# we will use the included sources for it
|
|
||||||
set(HAVE_SNAPPY TRUE)
|
|
||||||
@@ -110,13 +104,13 @@
|
|
||||||
|
|
||||||
if(NOT DEACTIVATE_ZLIB)
|
|
||||||
# import the ZLIB_ROOT environment variable to help finding the zlib library
|
|
||||||
- if(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
+ if(PREFER_EXTERNAL_ZLIB)
|
|
||||||
set(ZLIB_ROOT $ENV{ZLIB_ROOT})
|
|
||||||
find_package( ZLIB )
|
|
||||||
if (NOT ZLIB_FOUND )
|
|
||||||
message(STATUS "No zlib found. Using internal sources.")
|
|
||||||
endif (NOT ZLIB_FOUND )
|
|
||||||
- endif(PREFER_EXTERNAL_COMPLIBS)
|
|
||||||
+ endif(PREFER_EXTERNAL_ZLIB)
|
|
||||||
# HAVE_ZLIB will be set to true because even if the library is not found,
|
|
||||||
# we will use the included sources for it
|
|
||||||
set(HAVE_ZLIB TRUE)
|
|
||||||
diff -Naur external_blosc.orig/blosc/blosc.c external_blosc/blosc/blosc.c
|
diff -Naur external_blosc.orig/blosc/blosc.c external_blosc/blosc/blosc.c
|
||||||
--- external_blosc.orig/blosc/blosc.c 2018-07-30 04:56:38 -0600
|
--- external_blosc.orig/blosc/blosc.c 2018-07-30 04:56:38 -0600
|
||||||
+++ external_blosc/blosc/blosc.c 2018-08-11 15:27:26 -0600
|
+++ external_blosc/blosc/blosc.c 2018-08-11 15:27:26 -0600
|
||||||
@@ -41,12 +41,7 @@
|
@@ -56,14 +56,7 @@
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#endif /* _WIN32 */
|
#endif /* _WIN32 */
|
||||||
|
|
||||||
|
-/* Include the win32/pthread.h library for all the Windows builds. See #224. */
|
||||||
-#if defined(_WIN32)
|
-#if defined(_WIN32)
|
||||||
- #include "win32/pthread.h"
|
- #include "win32/pthread.h"
|
||||||
- #include "win32/pthread.c"
|
- #include "win32/pthread.c"
|
||||||
-#else
|
-#else
|
||||||
- #include <pthread.h>
|
- #include <pthread.h>
|
||||||
-#endif
|
-#endif
|
||||||
|
-
|
||||||
+#include <pthread.h>
|
+#include <pthread.h>
|
||||||
|
|
||||||
|
|
||||||
/* Some useful units */
|
/* Some useful units */
|
||||||
diff --git a/blosc/shuffle.c b/blosc/shuffle.c
|
#define KB 1024
|
||||||
index 84b5095..23053b4 100644
|
|
||||||
--- a/blosc/shuffle.c
|
|
||||||
+++ b/blosc/shuffle.c
|
|
||||||
@@ -490,12 +490,12 @@ void unshuffle(size_t bytesoftype, size_t blocksize,
|
|
||||||
#else /* no __SSE2__ available */
|
|
||||||
|
|
||||||
void shuffle(size_t bytesoftype, size_t blocksize,
|
|
||||||
- uint8_t* _src, uint8_t* _dest) {
|
|
||||||
+ const uint8_t* _src, uint8_t* _dest) {
|
|
||||||
_shuffle(bytesoftype, blocksize, _src, _dest);
|
|
||||||
}
|
|
||||||
|
|
||||||
void unshuffle(size_t bytesoftype, size_t blocksize,
|
|
||||||
- uint8_t* _src, uint8_t* _dest) {
|
|
||||||
+ const uint8_t* _src, uint8_t* _dest) {
|
|
||||||
_unshuffle(bytesoftype, blocksize, _src, _dest);
|
|
||||||
}
|
|
||||||
--- a/cmake/FindSSE.cmake
|
|
||||||
+++ b/cmake/FindSSE.cmake
|
|
||||||
@@ -49,6 +49,17 @@
|
|
||||||
set(AVX_FOUND false CACHE BOOL "AVX available on host")
|
|
||||||
ENDIF (AVX_TRUE)
|
|
||||||
ELSEIF(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
|
||||||
+ execute_process(COMMAND uname -m OUTPUT_VARIABLE ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
+ message(STATUS "Detected architecture ${ARCHITECTURE}")
|
|
||||||
+ IF("${ARCHITECTURE}" STREQUAL "arm64")
|
|
||||||
+ set(SSE2_FOUND false CACHE BOOL "SSE2 available on host")
|
|
||||||
+ set(SSE3_FOUND false CACHE BOOL "SSE3 available on host")
|
|
||||||
+ set(SSSE3_FOUND false CACHE BOOL "SSSE3 available on host")
|
|
||||||
+ set(SSE4_1_FOUND false CACHE BOOL "SSE4.1 available on host")
|
|
||||||
+ set(AVX_FOUND false CACHE BOOL "AVX available on host")
|
|
||||||
+ return()
|
|
||||||
+ ENDIF()
|
|
||||||
+
|
|
||||||
EXEC_PROGRAM("/usr/sbin/sysctl -n machdep.cpu.features" OUTPUT_VARIABLE
|
|
||||||
CPUINFO)
|
|
||||||
|
|
||||||
|
@@ -29,6 +29,9 @@ ENDIF()
|
|||||||
|
|
||||||
SET(_blosc_SEARCH_DIRS
|
SET(_blosc_SEARCH_DIRS
|
||||||
${BLOSC_ROOT_DIR}
|
${BLOSC_ROOT_DIR}
|
||||||
|
/usr/local
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
/opt/lib/blosc
|
/opt/lib/blosc
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -29,6 +29,9 @@ ENDIF()
|
|||||||
|
|
||||||
SET(_cppunit_SEARCH_DIRS
|
SET(_cppunit_SEARCH_DIRS
|
||||||
${CPPUNIT_ROOT_DIR}
|
${CPPUNIT_ROOT_DIR}
|
||||||
|
/usr/local
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
/opt/lib/cppunit
|
/opt/lib/cppunit
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -26,8 +26,8 @@ include(FindPackageMessage)
|
|||||||
include(SelectLibraryConfigurations)
|
include(SelectLibraryConfigurations)
|
||||||
|
|
||||||
|
|
||||||
if(ILMBASE_USE_STATIC_LIBS)
|
if( ILMBASE_USE_STATIC_LIBS )
|
||||||
set(_ilmbase_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set( _ilmbase_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
else()
|
else()
|
||||||
@@ -124,6 +124,7 @@ set(IlmBase_generic_include_paths
|
|||||||
/usr/include
|
/usr/include
|
||||||
/usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
/usr/local/include
|
/usr/local/include
|
||||||
|
/sw/include
|
||||||
/opt/local/include
|
/opt/local/include
|
||||||
)
|
)
|
||||||
set(IlmBase_generic_library_paths
|
set(IlmBase_generic_library_paths
|
||||||
@@ -132,6 +133,7 @@ set(IlmBase_generic_library_paths
|
|||||||
/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
/usr/local/lib
|
/usr/local/lib
|
||||||
/usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
|
/sw/lib
|
||||||
/opt/local/lib
|
/opt/local/lib
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -190,11 +192,11 @@ if(ILMBASE_CUSTOM)
|
|||||||
set(IlmBase_Libraries ${ILMBASE_CUSTOM_LIBRARIES})
|
set(IlmBase_Libraries ${ILMBASE_CUSTOM_LIBRARIES})
|
||||||
separate_arguments(IlmBase_Libraries)
|
separate_arguments(IlmBase_Libraries)
|
||||||
else()
|
else()
|
||||||
# elseif(${ILMBASE_VERSION} VERSION_LESS "2.1")
|
#elseif(${ILMBASE_VERSION} VERSION_LESS "2.1")
|
||||||
set(IlmBase_Libraries Half Iex Imath IlmThread)
|
set(IlmBase_Libraries Half Iex Imath IlmThread)
|
||||||
# else()
|
#else()
|
||||||
# string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _ilmbase_libs_ver ${ILMBASE_VERSION})
|
# string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _ilmbase_libs_ver ${ILMBASE_VERSION})
|
||||||
# set(IlmBase_Libraries Half Iex-${_ilmbase_libs_ver} Imath-${_ilmbase_libs_ver} IlmThread-${_ilmbase_libs_ver})
|
# set(IlmBase_Libraries Half Iex-${_ilmbase_libs_ver} Imath-${_ilmbase_libs_ver} IlmThread-${_ilmbase_libs_ver})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -247,7 +249,7 @@ if(ILMBASE_FOUND)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Restore the original find library ordering
|
# Restore the original find library ordering
|
||||||
if(ILMBASE_USE_STATIC_LIBS )
|
if( ILMBASE_USE_STATIC_LIBS )
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_ilmbase_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_ilmbase_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@@ -29,6 +29,9 @@ ENDIF()
|
|||||||
|
|
||||||
SET(_logc4plus_SEARCH_DIRS
|
SET(_logc4plus_SEARCH_DIRS
|
||||||
${LOGC4PLUS_ROOT_DIR}
|
${LOGC4PLUS_ROOT_DIR}
|
||||||
|
/usr/local
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
/opt/lib/logc4plus
|
/opt/lib/logc4plus
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -119,6 +119,7 @@ set(OpenEXR_generic_include_paths
|
|||||||
/usr/include
|
/usr/include
|
||||||
/usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
/usr/local/include
|
/usr/local/include
|
||||||
|
/sw/include
|
||||||
/opt/local/include
|
/opt/local/include
|
||||||
)
|
)
|
||||||
set(OpenEXR_generic_library_paths
|
set(OpenEXR_generic_library_paths
|
||||||
@@ -127,6 +128,7 @@ set(OpenEXR_generic_library_paths
|
|||||||
/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
/usr/local/lib
|
/usr/local/lib
|
||||||
/usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
/usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
|
||||||
|
/sw/lib
|
||||||
/opt/local/lib
|
/opt/local/lib
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -186,11 +188,11 @@ if(OPENEXR_CUSTOM)
|
|||||||
endif()
|
endif()
|
||||||
set(OpenEXR_Library ${OPENEXR_CUSTOM_LIBRARY})
|
set(OpenEXR_Library ${OPENEXR_CUSTOM_LIBRARY})
|
||||||
else()
|
else()
|
||||||
# elseif(${OPENEXR_VERSION} VERSION_LESS "2.1")
|
#elseif(${OPENEXR_VERSION} VERSION_LESS "2.1")
|
||||||
set(OpenEXR_Library IlmImf)
|
set(OpenEXR_Library IlmImf)
|
||||||
# else()
|
#else()
|
||||||
# string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENEXR_VERSION})
|
# string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENEXR_VERSION})
|
||||||
# set(OpenEXR_Library IlmImf-${_openexr_libs_ver})
|
# set(OpenEXR_Library IlmImf-${_openexr_libs_ver})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Locate the OpenEXR library
|
# Locate the OpenEXR library
|
||||||
@@ -230,7 +232,7 @@ if(OPENEXR_FOUND)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Restore the original find library ordering
|
# Restore the original find library ordering
|
||||||
if(OPENEXR_USE_STATIC_LIBS )
|
if( OPENEXR_USE_STATIC_LIBS )
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_openexr_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_openexr_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@@ -29,6 +29,9 @@ ENDIF()
|
|||||||
|
|
||||||
SET(_tbb_SEARCH_DIRS
|
SET(_tbb_SEARCH_DIRS
|
||||||
${TBB_ROOT_DIR}
|
${TBB_ROOT_DIR}
|
||||||
|
/usr/local
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
/opt/lib/tbb
|
/opt/lib/tbb
|
||||||
)
|
)
|
||||||
|
|
||||||
|
20
build_files/build_environment/patches/cmakelists_hidapi.txt
Normal file
20
build_files/build_environment/patches/cmakelists_hidapi.txt
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
cmake_minimum_required(VERSION 2.8)
|
||||||
|
project(hidapi)
|
||||||
|
|
||||||
|
set(SRC_FILES
|
||||||
|
windows/hid.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(HEADER_FILES
|
||||||
|
hidapi/hidapi.h
|
||||||
|
)
|
||||||
|
include_directories(hidapi)
|
||||||
|
add_definitions(-DHID_API_STATIC)
|
||||||
|
add_library(hidapi STATIC ${SRC_FILES} ${HEADER_FILES})
|
||||||
|
|
||||||
|
install(TARGETS hidapi DESTINATION lib)
|
||||||
|
|
||||||
|
INSTALL(FILES hidapi/hidapi.h
|
||||||
|
DESTINATION "include"
|
||||||
|
)
|
||||||
|
|
@@ -109,9 +109,6 @@ if (WIN32)
|
|||||||
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/src/tbbmalloc/${ARCH_PREFIX}-tbbmalloc-export.def
|
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/src/tbbmalloc/${ARCH_PREFIX}-tbbmalloc-export.def
|
||||||
COMMENT "Preprocessing tbbmalloc.def"
|
COMMENT "Preprocessing tbbmalloc.def"
|
||||||
)
|
)
|
||||||
list(APPEND tbb_src ${CMAKE_CURRENT_SOURCE_DIR}/src/tbb/tbb_resource.rc)
|
|
||||||
list(APPEND tbbmalloc_src ${CMAKE_CURRENT_SOURCE_DIR}/src/tbbmalloc/tbbmalloc.rc)
|
|
||||||
list(APPEND tbbmalloc_proxy_src ${CMAKE_CURRENT_SOURCE_DIR}/src/tbbmalloc/tbbmalloc.rc)
|
|
||||||
else()
|
else()
|
||||||
add_custom_command(OUTPUT tbb.def
|
add_custom_command(OUTPUT tbb.def
|
||||||
COMMAND ${CMAKE_CXX_COMPILER} -xc++ -E ${CMAKE_CURRENT_SOURCE_DIR}/src/tbb/${ARCH_PREFIX}-tbb-export.def -I ${CMAKE_CURRENT_SOURCE_DIR}/include -o tbb.def
|
COMMAND ${CMAKE_CXX_COMPILER} -xc++ -E ${CMAKE_CURRENT_SOURCE_DIR}/src/tbb/${ARCH_PREFIX}-tbb-export.def -I ${CMAKE_CURRENT_SOURCE_DIR}/include -o tbb.def
|
||||||
@@ -148,12 +145,8 @@ if (TBB_BUILD_SHARED)
|
|||||||
set_property(TARGET tbb APPEND PROPERTY LINK_FLAGS "-Wl,-version-script,${CMAKE_CURRENT_BINARY_DIR}/tbb.def")
|
set_property(TARGET tbb APPEND PROPERTY LINK_FLAGS "-Wl,-version-script,${CMAKE_CURRENT_BINARY_DIR}/tbb.def")
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
set_property(TARGET tbb APPEND PROPERTY LINK_FLAGS "/DEF:${CMAKE_CURRENT_BINARY_DIR}/tbb.def")
|
set_property(TARGET tbb APPEND PROPERTY LINK_FLAGS "/DEF:${CMAKE_CURRENT_BINARY_DIR}/tbb.def")
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
install(TARGETS tbb DESTINATION lib)
|
install(TARGETS tbb DESTINATION lib)
|
||||||
if(WIN32)
|
|
||||||
set_target_properties(tbb PROPERTIES OUTPUT_NAME "tbb$<$<CONFIG:Debug>:_debug>")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
@@ -203,7 +196,7 @@ if(TBB_BUILD_TBBMALLOC_PROXY)
|
|||||||
add_library(tbbmalloc_proxy SHARED ${tbbmalloc_proxy_src})
|
add_library(tbbmalloc_proxy SHARED ${tbbmalloc_proxy_src})
|
||||||
set_property(TARGET tbbmalloc_proxy APPEND PROPERTY COMPILE_DEFINITIONS "__TBBMALLOC_BUILD=1")
|
set_property(TARGET tbbmalloc_proxy APPEND PROPERTY COMPILE_DEFINITIONS "__TBBMALLOC_BUILD=1")
|
||||||
set_property(TARGET tbbmalloc_proxy APPEND_STRING PROPERTY COMPILE_FLAGS ${DISABLE_RTTI})
|
set_property(TARGET tbbmalloc_proxy APPEND_STRING PROPERTY COMPILE_FLAGS ${DISABLE_RTTI})
|
||||||
target_link_libraries(tbbmalloc_proxy tbbmalloc)
|
link_libraries(tbbmalloc_proxy tbbmalloc)
|
||||||
install(TARGETS tbbmalloc_proxy DESTINATION lib)
|
install(TARGETS tbbmalloc_proxy DESTINATION lib)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
@@ -1,14 +0,0 @@
|
|||||||
diff -Naur orig/common/sys/platform.h external_embree/common/sys/platform.h
|
|
||||||
--- orig/common/sys/platform.h 2020-05-13 23:08:53 -0600
|
|
||||||
+++ external_embree/common/sys/platform.h 2020-06-13 17:40:26 -0600
|
|
||||||
@@ -84,8 +84,8 @@
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#ifdef __WIN32__
|
|
||||||
-#define dll_export __declspec(dllexport)
|
|
||||||
-#define dll_import __declspec(dllimport)
|
|
||||||
+#define dll_export
|
|
||||||
+#define dll_import
|
|
||||||
#else
|
|
||||||
#define dll_export __attribute__ ((visibility ("default")))
|
|
||||||
#define dll_import
|
|
@@ -9,62 +9,3 @@
|
|||||||
enabled libopenmpt && require_pkg_config libopenmpt "libopenmpt >= 0.2.6557" libopenmpt/libopenmpt.h openmpt_module_create -lstdc++ && append libopenmpt_extralibs "-lstdc++"
|
enabled libopenmpt && require_pkg_config libopenmpt "libopenmpt >= 0.2.6557" libopenmpt/libopenmpt.h openmpt_module_create -lstdc++ && append libopenmpt_extralibs "-lstdc++"
|
||||||
enabled libopus && {
|
enabled libopus && {
|
||||||
enabled libopus_decoder && {
|
enabled libopus_decoder && {
|
||||||
--- a/libavcodec/cfhddata.c
|
|
||||||
+++ b/libavcodec/cfhddata.c
|
|
||||||
@@ -276,10 +276,10 @@
|
|
||||||
av_cold int ff_cfhd_init_vlcs(CFHDContext *s)
|
|
||||||
{
|
|
||||||
int i, j, ret = 0;
|
|
||||||
- uint32_t new_cfhd_vlc_bits[NB_VLC_TABLE_18 * 2];
|
|
||||||
- uint8_t new_cfhd_vlc_len[NB_VLC_TABLE_18 * 2];
|
|
||||||
- uint16_t new_cfhd_vlc_run[NB_VLC_TABLE_18 * 2];
|
|
||||||
- int16_t new_cfhd_vlc_level[NB_VLC_TABLE_18 * 2];
|
|
||||||
+ uint32_t *new_cfhd_vlc_bits = av_calloc(sizeof(uint32_t), NB_VLC_TABLE_18 * 2);
|
|
||||||
+ uint8_t *new_cfhd_vlc_len = av_calloc(sizeof(uint8_t), NB_VLC_TABLE_18 * 2);
|
|
||||||
+ uint16_t *new_cfhd_vlc_run = av_calloc(sizeof(uint16_t), NB_VLC_TABLE_18 * 2);
|
|
||||||
+ int16_t *new_cfhd_vlc_level = av_calloc(sizeof(int16_t), NB_VLC_TABLE_18 * 2);
|
|
||||||
|
|
||||||
/** Similar to dv.c, generate signed VLC tables **/
|
|
||||||
|
|
||||||
@@ -305,8 +305,13 @@
|
|
||||||
|
|
||||||
ret = init_vlc(&s->vlc_9, VLC_BITS, j, new_cfhd_vlc_len,
|
|
||||||
1, 1, new_cfhd_vlc_bits, 4, 4, 0);
|
|
||||||
- if (ret < 0)
|
|
||||||
+ if (ret < 0) {
|
|
||||||
+ av_free(new_cfhd_vlc_bits);
|
|
||||||
+ av_free(new_cfhd_vlc_len);
|
|
||||||
+ av_free(new_cfhd_vlc_run);
|
|
||||||
+ av_free(new_cfhd_vlc_level);
|
|
||||||
return ret;
|
|
||||||
+ }
|
|
||||||
for (i = 0; i < s->vlc_9.table_size; i++) {
|
|
||||||
int code = s->vlc_9.table[i][0];
|
|
||||||
int len = s->vlc_9.table[i][1];
|
|
||||||
@@ -346,8 +351,14 @@
|
|
||||||
|
|
||||||
ret = init_vlc(&s->vlc_18, VLC_BITS, j, new_cfhd_vlc_len,
|
|
||||||
1, 1, new_cfhd_vlc_bits, 4, 4, 0);
|
|
||||||
- if (ret < 0)
|
|
||||||
+ if (ret < 0) {
|
|
||||||
+ av_free(new_cfhd_vlc_bits);
|
|
||||||
+ av_free(new_cfhd_vlc_len);
|
|
||||||
+ av_free(new_cfhd_vlc_run);
|
|
||||||
+ av_free(new_cfhd_vlc_level);
|
|
||||||
return ret;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
av_assert0(s->vlc_18.table_size == 4572);
|
|
||||||
|
|
||||||
for (i = 0; i < s->vlc_18.table_size; i++) {
|
|
||||||
@@ -367,5 +378,10 @@
|
|
||||||
s->table_18_rl_vlc[i].run = run;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ av_free(new_cfhd_vlc_bits);
|
|
||||||
+ av_free(new_cfhd_vlc_len);
|
|
||||||
+ av_free(new_cfhd_vlc_run);
|
|
||||||
+ av_free(new_cfhd_vlc_level);
|
|
||||||
+
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
18
build_files/build_environment/patches/freetype.diff
Normal file
18
build_files/build_environment/patches/freetype.diff
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
diff -NaurBb b/CMakeLists.txt a/CMakeLists.txt
|
||||||
|
--- b/CMakeLists.txt 2018-05-01 12:45:46 -0600
|
||||||
|
+++ a/CMakeLists.txt 2018-08-08 13:03:22 -0600
|
||||||
|
@@ -229,9 +229,12 @@
|
||||||
|
endif ()
|
||||||
|
string(REPLACE "/undef " "#undef "
|
||||||
|
FTCONFIG_H "${FTCONFIG_H}")
|
||||||
|
- file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
|
||||||
|
- "${FTCONFIG_H}")
|
||||||
|
+else()
|
||||||
|
+ file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftconfig.h"
|
||||||
|
+ FTCONFIG_H)
|
||||||
|
endif ()
|
||||||
|
+file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
|
||||||
|
+ "${FTCONFIG_H}")
|
||||||
|
|
||||||
|
|
||||||
|
# Create the options file
|
15
build_files/build_environment/patches/hidapi.diff
Normal file
15
build_files/build_environment/patches/hidapi.diff
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
--- hidapi/hidapi.h 2011-10-25 20:58:16 -0600
|
||||||
|
+++ hidapi/hidapi.h 2016-11-01 12:05:58 -0600
|
||||||
|
@@ -30,7 +30,11 @@
|
||||||
|
#include <wchar.h>
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
- #define HID_API_EXPORT __declspec(dllexport)
|
||||||
|
+ #ifdef HID_API_STATIC
|
||||||
|
+ #define HID_API_EXPORT
|
||||||
|
+ #else
|
||||||
|
+ #define HID_API_EXPORT __declspec(dllexport)
|
||||||
|
+ #endif
|
||||||
|
#define HID_API_CALL
|
||||||
|
#else
|
||||||
|
#define HID_API_EXPORT /**< API export macro */
|
@@ -1,85 +0,0 @@
|
|||||||
diff -Naur external_ispc/CMakeLists.txt external_ispc_fixed/CMakeLists.txt
|
|
||||||
--- external_ispc/CMakeLists.txt 2020-04-23 17:29:06 -0600
|
|
||||||
+++ external_ispc_fixed/CMakeLists.txt 2020-05-05 09:01:09 -0600
|
|
||||||
@@ -389,7 +389,7 @@
|
|
||||||
|
|
||||||
# Link against Clang libraries
|
|
||||||
foreach(clangLib ${CLANG_LIBRARY_LIST})
|
|
||||||
- find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS})
|
|
||||||
+ find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIR})
|
|
||||||
list(APPEND CLANG_LIBRARY_FULL_PATH_LIST ${${clangLib}Path})
|
|
||||||
endforeach()
|
|
||||||
target_link_libraries(${PROJECT_NAME} ${CLANG_LIBRARY_FULL_PATH_LIST})
|
|
||||||
diff -Naur orig/CMakeLists.txt external_ispc/CMakeLists.txt
|
|
||||||
--- orig/CMakeLists.txt 2020-05-05 09:19:11 -0600
|
|
||||||
+++ external_ispc/CMakeLists.txt 2020-05-05 09:26:44 -0600
|
|
||||||
@@ -333,7 +333,7 @@
|
|
||||||
|
|
||||||
# Include directories
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
|
||||||
- ${LLVM_INCLUDE_DIRS}
|
|
||||||
+ ${LLVM_INCLUDE_DIRS} ${CLANG_INCLUDE_DIRS}
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR})
|
|
||||||
# Compile options
|
|
||||||
diff -Naur orig/cmake/GenerateBuiltins.cmake.txt external_ispc/cmake/GenerateBuiltins.cmake.txt
|
|
||||||
+++ orig/cmake/GenerateBuiltins.cmake 2020-05-25 13:32:40.830803821 +0200
|
|
||||||
+++ external_ispc/cmake/GenerateBuiltins.cmake 2020-05-25 13:32:40.830803821 +0200
|
|
||||||
@@ -97,6 +97,8 @@
|
|
||||||
|
|
||||||
if ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "x86")
|
|
||||||
set(target_arch "i386")
|
|
||||||
+ # Blender: disable 32bit due to build issues on Linux and being unnecessary.
|
|
||||||
+ set(SKIP ON)
|
|
||||||
elseif ("${bit}" STREQUAL "64" AND ${arch} STREQUAL "x86")
|
|
||||||
set(target_arch "x86_64")
|
|
||||||
elseif ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "arm")
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index 46a8db8..f53beef 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -36,8 +36,12 @@
|
|
||||||
cmake_minimum_required(VERSION 3.13)
|
|
||||||
|
|
||||||
if (UNIX)
|
|
||||||
- set(CMAKE_C_COMPILER "clang")
|
|
||||||
- set(CMAKE_CXX_COMPILER "clang++")
|
|
||||||
+ if (NOT CMAKE_C_COMPILER)
|
|
||||||
+ set(CMAKE_C_COMPILER "clang")
|
|
||||||
+ endif()
|
|
||||||
+ if (NOT CMAKE_CXX_COMPILER)
|
|
||||||
+ set(CMAKE_CXX_COMPILER "clang++")
|
|
||||||
+ endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PROJECT_NAME ispc)
|
|
||||||
@@ -412,6 +416,29 @@ else()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
+# Link against libstdc++.a which must be provided to the linker after
|
|
||||||
+# LLVM and CLang libraries.
|
|
||||||
+# This is needed because some of LLVM/CLang dependencies are using
|
|
||||||
+# std::make_shared, which is defined in one of those:
|
|
||||||
+# - libclang-cpp.so
|
|
||||||
+# - libstdc++.a
|
|
||||||
+# Using the former one is tricky because then generated binary depends
|
|
||||||
+# on a library which is outside of the LD_LIBRARY_PATH.
|
|
||||||
+#
|
|
||||||
+# Hence, using C++ implementation from G++ which seems to work just fine.
|
|
||||||
+# In fact, from investigation seems that libclang-cpp.so itself is pulling
|
|
||||||
+# std::_Sp_make_shared_tag from G++'s libstdc++.a.
|
|
||||||
+if(UNIX AND NOT APPLE)
|
|
||||||
+ execute_process(
|
|
||||||
+ COMMAND g++ --print-file-name libstdc++.a
|
|
||||||
+ OUTPUT_VARIABLE GCC_LIBSTDCXX_A
|
|
||||||
+ OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
||||||
+ )
|
|
||||||
+ if(GCC_LIBSTDCXX_A AND EXISTS ${GCC_LIBSTDCXX_A})
|
|
||||||
+ target_link_libraries(${PROJECT_NAME} ${GCC_LIBSTDCXX_A})
|
|
||||||
+ endif()
|
|
||||||
+endif()
|
|
||||||
+
|
|
||||||
# Build target for utility checking host ISA
|
|
||||||
if (ISPC_INCLUDE_UTILS)
|
|
||||||
add_executable(check_isa "")
|
|
@@ -1,13 +0,0 @@
|
|||||||
--- a/lib/Support/Unix/Path.inc 2020-02-17 09:24:26.000000000 +0100
|
|
||||||
+++ b/lib/Support/Unix/Path.inc 2020-02-17 09:26:25.000000000 +0100
|
|
||||||
@@ -1200,7 +1200,9 @@
|
|
||||||
/// implementation.
|
|
||||||
std::error_code copy_file(const Twine &From, const Twine &To) {
|
|
||||||
uint32_t Flag = COPYFILE_DATA;
|
|
||||||
-#if __has_builtin(__builtin_available) && defined(COPYFILE_CLONE)
|
|
||||||
+ // BLENDER: This optimization makes LLVM not build on older Xcode versions,
|
|
||||||
+ // just disable until everyone has new enough Xcode versions.
|
|
||||||
+#if 0
|
|
||||||
if (__builtin_available(macos 10.12, *)) {
|
|
||||||
bool IsSymlink;
|
|
||||||
if (std::error_code Error = is_symlink_file(From, IsSymlink))
|
|
@@ -1,129 +0,0 @@
|
|||||||
diff --git a/output/macho.h b/output/macho.h
|
|
||||||
index 538c531e..fd5e8849 100644
|
|
||||||
--- a/output/macho.h
|
|
||||||
+++ b/output/macho.h
|
|
||||||
@@ -60,6 +60,8 @@
|
|
||||||
#define LC_SEGMENT 0x1
|
|
||||||
#define LC_SEGMENT_64 0x19
|
|
||||||
#define LC_SYMTAB 0x2
|
|
||||||
+#define LC_VERSION_MIN_MACOSX 0x24
|
|
||||||
+#define LC_BUILD_VERSION 0x32
|
|
||||||
|
|
||||||
/* Symbol type bits */
|
|
||||||
#define N_STAB 0xe0
|
|
||||||
diff --git a/output/outmacho.c b/output/outmacho.c
|
|
||||||
index 08147883..de6ec902 100644
|
|
||||||
--- a/output/outmacho.c
|
|
||||||
+++ b/output/outmacho.c
|
|
||||||
@@ -38,6 +38,8 @@
|
|
||||||
|
|
||||||
#include "compiler.h"
|
|
||||||
|
|
||||||
+#include <stdlib.h>
|
|
||||||
+
|
|
||||||
#include "nctype.h"
|
|
||||||
|
|
||||||
#include "nasm.h"
|
|
||||||
@@ -64,6 +66,8 @@
|
|
||||||
#define MACHO_SYMCMD_SIZE 24
|
|
||||||
#define MACHO_NLIST_SIZE 12
|
|
||||||
#define MACHO_RELINFO_SIZE 8
|
|
||||||
+#define MACHO_BUILD_VERSION_SIZE 24
|
|
||||||
+#define MACHO_VERSION_MIN_MACOSX_SIZE 16
|
|
||||||
|
|
||||||
#define MACHO_HEADER64_SIZE 32
|
|
||||||
#define MACHO_SEGCMD64_SIZE 72
|
|
||||||
@@ -1224,6 +1228,46 @@ static void macho_layout_symbols (uint32_t *numsyms,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+static bool get_full_version_from_env (const char *variable_name,
|
|
||||||
+ int *r_major,
|
|
||||||
+ int *r_minor,
|
|
||||||
+ int *r_patch) {
|
|
||||||
+ *r_major = 0;
|
|
||||||
+ *r_minor = 0;
|
|
||||||
+ *r_patch = 0;
|
|
||||||
+
|
|
||||||
+ const char *value = getenv(variable_name);
|
|
||||||
+ if (value == NULL || value[0] == '\0') {
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ const char *current_value = value;
|
|
||||||
+ const char *end_value = value + strlen(value);
|
|
||||||
+
|
|
||||||
+ char *endptr;
|
|
||||||
+
|
|
||||||
+ *r_major = strtol(current_value, &endptr, 10);
|
|
||||||
+ if (endptr >= end_value) {
|
|
||||||
+ return true;
|
|
||||||
+ }
|
|
||||||
+ current_value = endptr + 1;
|
|
||||||
+
|
|
||||||
+ *r_minor = strtol(current_value, &endptr, 10);
|
|
||||||
+ if (endptr >= end_value) {
|
|
||||||
+ return true;
|
|
||||||
+ }
|
|
||||||
+ current_value = endptr + 1;
|
|
||||||
+
|
|
||||||
+ *r_patch = strtol(current_value, &endptr, 10);
|
|
||||||
+
|
|
||||||
+ return true;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static bool need_version_min_macosx_command (void) {
|
|
||||||
+ return getenv("MACOSX_DEPLOYMENT_TARGET") &&
|
|
||||||
+ getenv("MACOSX_SDK_VERSION");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/* Calculate some values we'll need for writing later. */
|
|
||||||
|
|
||||||
static void macho_calculate_sizes (void)
|
|
||||||
@@ -1270,6 +1314,12 @@ static void macho_calculate_sizes (void)
|
|
||||||
head_sizeofcmds += fmt.segcmd_size + seg_nsects * fmt.sectcmd_size;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* LC_VERSION_MIN_MACOSX */
|
|
||||||
+ if (need_version_min_macosx_command()) {
|
|
||||||
+ ++head_ncmds;
|
|
||||||
+ head_sizeofcmds += MACHO_VERSION_MIN_MACOSX_SIZE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (nsyms > 0) {
|
|
||||||
++head_ncmds;
|
|
||||||
head_sizeofcmds += MACHO_SYMCMD_SIZE;
|
|
||||||
@@ -1653,6 +1703,33 @@ static void macho_write (void)
|
|
||||||
else
|
|
||||||
nasm_warn(WARN_OTHER, "no sections?");
|
|
||||||
|
|
||||||
+#define ENCODE_BUILD_VERSION(major, minor, patch) \
|
|
||||||
+ (((major) << 16) | ((minor) << 8) | (patch))
|
|
||||||
+
|
|
||||||
+ if (0) {
|
|
||||||
+ fwriteint32_t(LC_BUILD_VERSION, ofile); /* cmd == LC_BUILD_VERSION */
|
|
||||||
+ fwriteint32_t(MACHO_BUILD_VERSION_SIZE, ofile); /* size of load command */
|
|
||||||
+ fwriteint32_t(1, ofile); /* platform */
|
|
||||||
+ fwriteint32_t(ENCODE_BUILD_VERSION(10, 13, 0), ofile); /* minos, X.Y.Z is encoded in nibbles xxxx.yy.zz */
|
|
||||||
+ fwriteint32_t(ENCODE_BUILD_VERSION(10, 15, 4), ofile); /* sdk, X.Y.Z is encoded in nibbles xxxx.yy.zz */
|
|
||||||
+ fwriteint32_t(0, ofile); /* number of tool entries following this */
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (need_version_min_macosx_command()) {
|
|
||||||
+ int sdk_major, sdk_minor, sdk_patch;
|
|
||||||
+ get_full_version_from_env("MACOSX_SDK_VERSION", &sdk_major, &sdk_minor, &sdk_patch);
|
|
||||||
+
|
|
||||||
+ int version_major, version_minor, version_patch;
|
|
||||||
+ get_full_version_from_env("MACOSX_DEPLOYMENT_TARGET", &version_major, &version_minor, &version_patch);
|
|
||||||
+
|
|
||||||
+ fwriteint32_t(LC_VERSION_MIN_MACOSX, ofile); /* cmd == LC_VERSION_MIN_MACOSX */
|
|
||||||
+ fwriteint32_t(MACHO_VERSION_MIN_MACOSX_SIZE, ofile); /* size of load command */
|
|
||||||
+ fwriteint32_t(ENCODE_BUILD_VERSION(version_major, version_minor, version_patch), ofile); /* minos, X.Y.Z is encoded in nibbles xxxx.yy.zz */
|
|
||||||
+ fwriteint32_t(ENCODE_BUILD_VERSION(sdk_major, sdk_minor, sdk_patch), ofile); /* sdk, X.Y.Z is encoded in nibbles xxxx.yy.zz */
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+#undef ENCODE_BUILD_VERSION
|
|
||||||
+
|
|
||||||
if (nsyms > 0) {
|
|
||||||
/* write out symbol command */
|
|
||||||
fwriteint32_t(LC_SYMTAB, ofile); /* cmd == LC_SYMTAB */
|
|
@@ -1,27 +0,0 @@
|
|||||||
diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
|
|
||||||
index ba2b1f4..b10f7df 100644
|
|
||||||
--- a/numpy/distutils/system_info.py
|
|
||||||
+++ b/numpy/distutils/system_info.py
|
|
||||||
@@ -2164,8 +2164,8 @@ class accelerate_info(system_info):
|
|
||||||
'accelerate' in libraries):
|
|
||||||
if intel:
|
|
||||||
args.extend(['-msse3'])
|
|
||||||
- else:
|
|
||||||
- args.extend(['-faltivec'])
|
|
||||||
+# else:
|
|
||||||
+# args.extend(['-faltivec'])
|
|
||||||
args.extend([
|
|
||||||
'-I/System/Library/Frameworks/vecLib.framework/Headers'])
|
|
||||||
link_args.extend(['-Wl,-framework', '-Wl,Accelerate'])
|
|
||||||
@@ -2174,8 +2174,8 @@ class accelerate_info(system_info):
|
|
||||||
'veclib' in libraries):
|
|
||||||
if intel:
|
|
||||||
args.extend(['-msse3'])
|
|
||||||
- else:
|
|
||||||
- args.extend(['-faltivec'])
|
|
||||||
+# else:
|
|
||||||
+# args.extend(['-faltivec'])
|
|
||||||
args.extend([
|
|
||||||
'-I/System/Library/Frameworks/vecLib.framework/Headers'])
|
|
||||||
link_args.extend(['-Wl,-framework', '-Wl,vecLib'])
|
|
||||||
|
|
@@ -1,12 +0,0 @@
|
|||||||
diff --git a/include/ogg/os_types.h b/include/ogg/os_types.h
|
|
||||||
index eb8a322..6f73b72 100644
|
|
||||||
--- a/include/ogg/os_types.h
|
|
||||||
+++ b/include/ogg/os_types.h
|
|
||||||
@@ -71,6 +71,7 @@
|
|
||||||
#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
|
|
||||||
|
|
||||||
# include <sys/types.h>
|
|
||||||
+# include <stdint.h>
|
|
||||||
typedef int16_t ogg_int16_t;
|
|
||||||
typedef uint16_t ogg_uint16_t;
|
|
||||||
typedef int32_t ogg_int32_t;
|
|
13
build_files/build_environment/patches/openal.diff
Normal file
13
build_files/build_environment/patches/openal.diff
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
diff -Naur external_openal_original/CMakeLists.txt external_openal/CMakeLists.txt
|
||||||
|
--- external_openal_original/CMakeLists.txt 2016-01-24 20:12:39 -0700
|
||||||
|
+++ external_openal/CMakeLists.txt 2018-06-02 12:16:52 -0600
|
||||||
|
@@ -885,7 +885,8 @@
|
||||||
|
OPTION(ALSOFT_REQUIRE_MMDEVAPI "Require MMDevApi backend" OFF)
|
||||||
|
IF(HAVE_WINDOWS_H)
|
||||||
|
# Check MMSystem backend
|
||||||
|
- CHECK_INCLUDE_FILES("windows.h;mmsystem.h" HAVE_MMSYSTEM_H -D_WIN32_WINNT=0x0502)
|
||||||
|
+ set(CMAKE_REQUIRED_FLAGS "-D_WIN32_WINNT=0x0502")
|
||||||
|
+ CHECK_INCLUDE_FILES("windows.h;mmsystem.h" HAVE_MMSYSTEM_H)
|
||||||
|
IF(HAVE_MMSYSTEM_H)
|
||||||
|
CHECK_SHARED_FUNCTION_EXISTS(waveOutOpen "windows.h;mmsystem.h" winmm "" HAVE_LIBWINMM)
|
||||||
|
IF(HAVE_LIBWINMM)
|
@@ -16,19 +16,6 @@ index 95abbe2..4f14f30 100644
|
|||||||
message("WARNING: Native PCRE not found, taking PCRE from ./Externals")
|
message("WARNING: Native PCRE not found, taking PCRE from ./Externals")
|
||||||
add_definitions(-DPCRE_STATIC)
|
add_definitions(-DPCRE_STATIC)
|
||||||
add_subdirectory(${EXTERNAL_LIBRARIES}/pcre)
|
add_subdirectory(${EXTERNAL_LIBRARIES}/pcre)
|
||||||
diff --git a/DAEValidator/CMakeLists.txt b/DAEValidator/CMakeLists.txt
|
|
||||||
index 03ad540..f7d05cf 100644
|
|
||||||
--- a/DAEValidator/CMakeLists.txt
|
|
||||||
+++ b/DAEValidator/CMakeLists.txt
|
|
||||||
@@ -98,7 +98,7 @@ if (WIN32)
|
|
||||||
# C4710: 'function' : function not inlined
|
|
||||||
# C4711: function 'function' selected for inline expansion
|
|
||||||
# C4820: 'bytes' bytes padding added after construct 'member_name'
|
|
||||||
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /Wall /WX /wd4505 /wd4514 /wd4592 /wd4710 /wd4711 /wd4820")
|
|
||||||
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /Wall /wd4505 /wd4514 /wd4592 /wd4710 /wd4711 /wd4820")
|
|
||||||
else ()
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror")
|
|
||||||
endif ()
|
|
||||||
diff --git a/DAEValidator/library/include/no_warning_begin b/DAEValidator/library/include/no_warning_begin
|
diff --git a/DAEValidator/library/include/no_warning_begin b/DAEValidator/library/include/no_warning_begin
|
||||||
index 7a69c32..defb315 100644
|
index 7a69c32..defb315 100644
|
||||||
--- a/DAEValidator/library/include/no_warning_begin
|
--- a/DAEValidator/library/include/no_warning_begin
|
||||||
@@ -43,36 +30,6 @@ index 7a69c32..defb315 100644
|
|||||||
# if defined(_MSC_VER) && defined(_DEBUG)
|
# if defined(_MSC_VER) && defined(_DEBUG)
|
||||||
# pragma warning(disable:4548)
|
# pragma warning(disable:4548)
|
||||||
# endif
|
# endif
|
||||||
diff --git a/DAEValidator/library/src/ArgumentParser.cpp b/DAEValidator/library/src/ArgumentParser.cpp
|
|
||||||
index 897e4dc..98a69ff 100644
|
|
||||||
--- a/DAEValidator/library/src/ArgumentParser.cpp
|
|
||||||
+++ b/DAEValidator/library/src/ArgumentParser.cpp
|
|
||||||
@@ -6,10 +6,10 @@
|
|
||||||
|
|
||||||
using namespace std;
|
|
||||||
|
|
||||||
-#ifdef _MSC_VER
|
|
||||||
-#define NOEXCEPT _NOEXCEPT
|
|
||||||
-#else
|
|
||||||
+#ifndef _NOEXCEPT
|
|
||||||
#define NOEXCEPT noexcept
|
|
||||||
+#else
|
|
||||||
+#define NOEXCEPT _NOEXCEPT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
namespace opencollada
|
|
||||||
diff --git a/Externals/LibXML/CMakeLists.txt b/Externals/LibXML/CMakeLists.txt
|
|
||||||
index 40081e7..e1d1bfa 100644
|
|
||||||
--- a/Externals/LibXML/CMakeLists.txt
|
|
||||||
+++ b/Externals/LibXML/CMakeLists.txt
|
|
||||||
@@ -9,6 +9,7 @@ add_definitions(
|
|
||||||
-DLIBXML_SCHEMAS_ENABLED
|
|
||||||
-DLIBXML_XPATH_ENABLED
|
|
||||||
-DLIBXML_TREE_ENABLED
|
|
||||||
+ -DLIBXML_STATIC
|
|
||||||
)
|
|
||||||
|
|
||||||
if(USE_STATIC_MSVC_RUNTIME)
|
|
||||||
diff --git a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp b/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp
|
diff --git a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp b/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp
|
||||||
index 1f9a3ee..d151e9a 100644
|
index 1f9a3ee..d151e9a 100644
|
||||||
--- a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp
|
--- a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp
|
||||||
@@ -86,47 +43,3 @@ index 1f9a3ee..d151e9a 100644
|
|||||||
return isnan( value );
|
return isnan( value );
|
||||||
#else
|
#else
|
||||||
return std::isnan(value);
|
return std::isnan(value);
|
||||||
|
|
||||||
|
|
||||||
diff --git a/DAEValidator/library/src/Dae.cpp b/DAEValidator/library/src/Dae.cpp
|
|
||||||
index 9256ee1..241ad67 100644
|
|
||||||
--- a/DAEValidator/library/src/Dae.cpp
|
|
||||||
+++ b/DAEValidator/library/src/Dae.cpp
|
|
||||||
@@ -304,7 +304,7 @@ namespace opencollada
|
|
||||||
if (auto root_node = root())
|
|
||||||
{
|
|
||||||
const auto & nodes = root_node.selectNodes("//*[@id]");
|
|
||||||
- for (const auto & node : nodes)
|
|
||||||
+ for (const auto node : nodes)
|
|
||||||
{
|
|
||||||
string id = node.attribute("id").value();
|
|
||||||
mIdCache.insert(id);
|
|
||||||
@@ -312,4 +312,4 @@ namespace opencollada
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-}
|
|
||||||
\ No newline at end of file
|
|
||||||
+}
|
|
||||||
diff --git a/DAEValidator/library/src/DaeValidator.cpp b/DAEValidator/library/src/DaeValidator.cpp
|
|
||||||
index 715d903..24423ce 100644
|
|
||||||
--- a/DAEValidator/library/src/DaeValidator.cpp
|
|
||||||
+++ b/DAEValidator/library/src/DaeValidator.cpp
|
|
||||||
@@ -162,7 +162,7 @@ namespace opencollada
|
|
||||||
|
|
||||||
// Find xsi:schemaLocation attributes in dae and try to validate against specified xsd documents
|
|
||||||
const auto & elements = dae.root().selectNodes("//*[@xsi:schemaLocation]");
|
|
||||||
- for (const auto & element : elements)
|
|
||||||
+ for (const auto element : elements)
|
|
||||||
{
|
|
||||||
if (auto schemaLocation = element.attribute("schemaLocation"))
|
|
||||||
{
|
|
||||||
@@ -274,7 +274,7 @@ namespace opencollada
|
|
||||||
int result = 0;
|
|
||||||
map<string, size_t> ids;
|
|
||||||
const auto & nodes = dae.root().selectNodes("//*[@id]");
|
|
||||||
- for (const auto & node : nodes)
|
|
||||||
+ for (const auto node : nodes)
|
|
||||||
{
|
|
||||||
string id = node.attribute("id").value();
|
|
||||||
size_t line = node.line();
|
|
||||||
|
119
build_files/build_environment/patches/openimagedenoise.diff
Normal file
119
build_files/build_environment/patches/openimagedenoise.diff
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 70ec895..e616b63 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -178,7 +178,9 @@ set_property(TARGET ${PROJECT_NAME} PROPERTY SOVERSION "0")
|
||||||
|
## Open Image Denoise examples
|
||||||
|
## ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-add_subdirectory(examples)
|
||||||
|
+if(WITH_EXAMPLE)
|
||||||
|
+ add_subdirectory(examples)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
## ----------------------------------------------------------------------------
|
||||||
|
## Open Image Denoise install and packaging
|
||||||
|
Submodule mkl-dnn contains modified content
|
||||||
|
diff --git a/mkl-dnn/cmake/TBB.cmake b/mkl-dnn/cmake/TBB.cmake
|
||||||
|
index 0711e699..c14210b6 100644
|
||||||
|
--- a/mkl-dnn/cmake/TBB.cmake
|
||||||
|
+++ b/mkl-dnn/cmake/TBB.cmake
|
||||||
|
@@ -90,8 +90,8 @@ if(WIN32)
|
||||||
|
NO_DEFAULT_PATH
|
||||||
|
)
|
||||||
|
set(TBB_LIB_DIR ${TBB_ROOT}/lib/${TBB_ARCH}/${TBB_VCVER})
|
||||||
|
- find_library(TBB_LIBRARY tbb PATHS ${TBB_LIB_DIR} ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
- find_library(TBB_LIBRARY_MALLOC tbbmalloc PATHS ${TBB_LIB_DIR} ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
+ find_library(TBB_LIBRARY tbb_static PATHS ${TBB_LIB_DIR} ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
+ find_library(TBB_LIBRARY_MALLOC tbbmalloc_static PATHS ${TBB_LIB_DIR} ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
else()
|
||||||
|
@@ -138,13 +138,13 @@ else()
|
||||||
|
set(TBB_LIBRARY_MALLOC TBB_LIBRARY_MALLOC-NOTFOUND)
|
||||||
|
if(APPLE)
|
||||||
|
find_path(TBB_INCLUDE_DIR tbb/task_scheduler_init.h PATHS ${TBB_ROOT}/include NO_DEFAULT_PATH)
|
||||||
|
- find_library(TBB_LIBRARY tbb PATHS ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
- find_library(TBB_LIBRARY_MALLOC tbbmalloc PATHS ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
+ find_library(TBB_LIBRARY tbb_static PATHS ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
+ find_library(TBB_LIBRARY_MALLOC tbbmalloc_static PATHS ${TBB_ROOT}/lib NO_DEFAULT_PATH)
|
||||||
|
else()
|
||||||
|
find_path(TBB_INCLUDE_DIR tbb/task_scheduler_init.h PATHS ${TBB_ROOT}/include NO_DEFAULT_PATH)
|
||||||
|
set(TBB_HINTS HINTS ${TBB_ROOT}/lib/intel64/gcc4.4 ${TBB_ROOT}/lib ${TBB_ROOT}/lib64 PATHS /usr/libx86_64-linux-gnu/)
|
||||||
|
- find_library(TBB_LIBRARY tbb ${TBB_HINTS})
|
||||||
|
- find_library(TBB_LIBRARY_MALLOC tbbmalloc ${TBB_HINTS})
|
||||||
|
+ find_library(TBB_LIBRARY tbb_static ${TBB_HINTS})
|
||||||
|
+ find_library(TBB_LIBRARY_MALLOC tbbmalloc_static ${TBB_HINTS})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
diff '--ignore-matching-lines=:' -ur '--exclude=*.svn*' -u -r
|
||||||
|
--- a/cmake/install.cmake 2019-08-12 18:02:20.794402575 +0200
|
||||||
|
+++ b/cmake/install.cmake 2019-08-12 18:06:07.470045703 +0200
|
||||||
|
@@ -18,6 +18,13 @@
|
||||||
|
## Install library
|
||||||
|
## ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
+if(UNIX)
|
||||||
|
+install(FILES
|
||||||
|
+ ${CMAKE_BINARY_DIR}/libOpenImageDenoise.a
|
||||||
|
+ ${CMAKE_BINARY_DIR}/libmkldnn.a
|
||||||
|
+ ${CMAKE_BINARY_DIR}/libcommon.a
|
||||||
|
+ DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
+else()
|
||||||
|
install(TARGETS ${PROJECT_NAME}
|
||||||
|
EXPORT
|
||||||
|
${PROJECT_NAME}_Export
|
||||||
|
@@ -38,6 +45,7 @@
|
||||||
|
DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT devel
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
## ----------------------------------------------------------------------------
|
||||||
|
## Install headers
|
||||||
|
@@ -78,6 +86,7 @@
|
||||||
|
## Install CMake configuration files
|
||||||
|
## ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
+if(NOT UNIX)
|
||||||
|
install(EXPORT ${PROJECT_NAME}_Export
|
||||||
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
|
||||||
|
#NAMESPACE ${PROJECT_NAME}::
|
||||||
|
@@ -92,3 +101,4 @@
|
||||||
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
|
||||||
|
COMPONENT devel
|
||||||
|
)
|
||||||
|
+endif()
|
||||||
|
diff '--ignore-matching-lines=:' -ur '--exclude=*.svn*' -u -r
|
||||||
|
--- a/CMakeLists.txt 2019-08-12 14:22:00.974078598 +0200
|
||||||
|
+++ b/CMakeLists.txt 2019-08-12 18:05:05.949057375 +0200
|
||||||
|
@@ -14,7 +14,11 @@
|
||||||
|
## limitations under the License. ##
|
||||||
|
## ======================================================================== ##
|
||||||
|
|
||||||
|
-cmake_minimum_required(VERSION 3.1)
|
||||||
|
+if(UNIX)
|
||||||
|
+ cmake_minimum_required(VERSION 3.1)
|
||||||
|
+else()
|
||||||
|
+ cmake_minimum_required(VERSION 3.13)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
set(OIDN_VERSION_MAJOR 1)
|
||||||
|
set(OIDN_VERSION_MINOR 0)
|
||||||
|
@@ -32,13 +36,8 @@
|
||||||
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
|
||||||
|
|
||||||
|
# Build as shared or static library
|
||||||
|
-if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.13.0")
|
||||||
|
- option(OIDN_STATIC_LIB "Build Open Image Denoise as a static library.")
|
||||||
|
- mark_as_advanced(CLEAR OIDN_STATIC_LIB)
|
||||||
|
-else()
|
||||||
|
- set(OIDN_STATIC_LIB OFF CACHE BOOL "Build Open Image Denoise as a static library." FORCE)
|
||||||
|
- mark_as_advanced(OIDN_STATIC_LIB)
|
||||||
|
-endif()
|
||||||
|
+option(OIDN_STATIC_LIB "Build Open Image Denoise as a static library.")
|
||||||
|
+mark_as_advanced(CLEAR OIDN_STATIC_LIB)
|
||||||
|
if(OIDN_STATIC_LIB)
|
||||||
|
set(OIDN_LIB_TYPE STATIC)
|
||||||
|
else()
|
@@ -1,36 +0,0 @@
|
|||||||
diff -Naur orig/CMakeLists.txt external_openimageio/CMakeLists.txt
|
|
||||||
--- orig/CMakeLists.txt 2020-05-10 21:43:52 -0600
|
|
||||||
+++ external_openimageio/CMakeLists.txt 2020-05-13 17:03:35 -0600
|
|
||||||
@@ -170,7 +170,7 @@
|
|
||||||
add_subdirectory (src/iinfo)
|
|
||||||
add_subdirectory (src/maketx)
|
|
||||||
add_subdirectory (src/oiiotool)
|
|
||||||
- add_subdirectory (src/testtex)
|
|
||||||
+ #add_subdirectory (src/testtex)
|
|
||||||
add_subdirectory (src/iv)
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
diff -Naur orig/src/cmake/compiler.cmake external_openimageio/src/cmake/compiler.cmake
|
|
||||||
--- orig/src/cmake/compiler.cmake 2020-05-10 21:43:52 -0600
|
|
||||||
+++ external_openimageio/src/cmake/compiler.cmake 2020-05-13 17:02:54 -0600
|
|
||||||
@@ -172,6 +172,7 @@
|
|
||||||
add_definitions (-D_CRT_NONSTDC_NO_WARNINGS)
|
|
||||||
add_definitions (-D_SCL_SECURE_NO_WARNINGS)
|
|
||||||
add_definitions (-DJAS_WIN_MSVC_BUILD)
|
|
||||||
+ add_definitions (-DOPJ_STATIC)
|
|
||||||
endif (MSVC)
|
|
||||||
|
|
||||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD"
|
|
||||||
diff -Naur orig/src/include/OpenImageIO/platform.h external_openimageio/src/include/OpenImageIO/platform.h
|
|
||||||
--- orig/src/include/OpenImageIO/platform.h 2020-05-10 21:43:52 -0600
|
|
||||||
+++ external_openimageio/src/include/OpenImageIO/platform.h 2020-05-13 17:04:36 -0600
|
|
||||||
@@ -41,6 +41,9 @@
|
|
||||||
# ifndef NOMINMAX
|
|
||||||
# define NOMINMAX
|
|
||||||
# endif
|
|
||||||
+# ifndef NOGDI
|
|
||||||
+# define NOGDI
|
|
||||||
+# endif
|
|
||||||
# include <windows.h>
|
|
||||||
#endif
|
|
||||||
|
|
26
build_files/build_environment/patches/openimageio_gdi.diff
Normal file
26
build_files/build_environment/patches/openimageio_gdi.diff
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
Index: OpenImageIO/osdep.h
|
||||||
|
===================================================================
|
||||||
|
--- OpenImageIO/osdep.h (revision 61595)
|
||||||
|
+++ OpenImageIO/osdep.h (working copy)
|
||||||
|
@@ -34,6 +34,7 @@
|
||||||
|
# define WIN32_LEAN_AND_MEAN
|
||||||
|
# define VC_EXTRALEAN
|
||||||
|
# define NOMINMAX
|
||||||
|
+# define NOGDI
|
||||||
|
# include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Index: OpenImageIO/platform.h
|
||||||
|
===================================================================
|
||||||
|
--- OpenImageIO/platform.h (revision 61595)
|
||||||
|
+++ OpenImageIO/platform.h (working copy)
|
||||||
|
@@ -77,6 +77,9 @@
|
||||||
|
# ifndef NOMINMAX
|
||||||
|
# define NOMINMAX
|
||||||
|
# endif
|
||||||
|
+# ifndef NOGDI
|
||||||
|
+# define NOGDI
|
||||||
|
+# endif
|
||||||
|
# include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
13
build_files/build_environment/patches/openimageio_idiff.diff
Normal file
13
build_files/build_environment/patches/openimageio_idiff.diff
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
--- idiff.cpp 2016-11-18 11:42:01 -0700
|
||||||
|
+++ idiff.cpp 2016-11-18 11:41:25 -0700
|
||||||
|
@@ -308,8 +308,10 @@
|
||||||
|
// printed with three digit exponent. We change this behaviour to fit
|
||||||
|
// Linux way
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
+#if _MSC_VER < 1900
|
||||||
|
_set_output_format(_TWO_DIGIT_EXPONENT);
|
||||||
|
#endif
|
||||||
|
+#endif
|
||||||
|
std::streamsize precis = std::cout.precision();
|
||||||
|
std::cout << " " << cr.nwarn << " pixels ("
|
||||||
|
<< std::setprecision(3) << (100.0*cr.nwarn / npels)
|
@@ -0,0 +1,22 @@
|
|||||||
|
diff -Naur external_openimageio.orig/src/cmake/compiler.cmake external_openimageio/src/cmake/compiler.cmake
|
||||||
|
--- external_openimageio.orig/src/cmake/compiler.cmake 2018-07-31 23:45:19 -0600
|
||||||
|
+++ external_openimageio/src/cmake/compiler.cmake 2018-08-16 12:50:12 -0600
|
||||||
|
@@ -152,6 +152,7 @@
|
||||||
|
add_definitions (-D_CRT_NONSTDC_NO_WARNINGS)
|
||||||
|
add_definitions (-D_SCL_SECURE_NO_WARNINGS)
|
||||||
|
add_definitions (-DJAS_WIN_MSVC_BUILD)
|
||||||
|
+ add_definitions (-DOPJ_STATIC)
|
||||||
|
endif (MSVC)
|
||||||
|
|
||||||
|
# Use ccache if found
|
||||||
|
--- external_openimageio.orig/CMakeLists.txt 2018-07-31 23:45:19 -0600
|
||||||
|
+++ external_openimageio/CMakeLists.txt 2018-08-17 15:22:56 -0600
|
||||||
|
@@ -169,7 +169,7 @@
|
||||||
|
add_subdirectory (src/iinfo)
|
||||||
|
add_subdirectory (src/maketx)
|
||||||
|
add_subdirectory (src/oiiotool)
|
||||||
|
- add_subdirectory (src/testtex)
|
||||||
|
+# add_subdirectory (src/testtex)
|
||||||
|
add_subdirectory (src/iv)
|
||||||
|
endif ()
|
||||||
|
|
@@ -1,23 +0,0 @@
|
|||||||
diff --git a/runtime/src/z_Linux_asm.S b/runtime/src/z_Linux_asm.S
|
|
||||||
index 0d8885e..42aa5ad 100644
|
|
||||||
--- a/runtime/src/z_Linux_asm.S
|
|
||||||
+++ b/runtime/src/z_Linux_asm.S
|
|
||||||
@@ -1540,10 +1540,12 @@ __kmp_unnamed_critical_addr:
|
|
||||||
.comm .gomp_critical_user_,32,8
|
|
||||||
.data
|
|
||||||
.align 8
|
|
||||||
- .global __kmp_unnamed_critical_addr
|
|
||||||
-__kmp_unnamed_critical_addr:
|
|
||||||
+ .global ___kmp_unnamed_critical_addr
|
|
||||||
+___kmp_unnamed_critical_addr:
|
|
||||||
.8byte .gomp_critical_user_
|
|
||||||
- .size __kmp_unnamed_critical_addr,8
|
|
||||||
+# if !(KMP_OS_DARWIN)
|
|
||||||
+ .size ___kmp_unnamed_critical_addr,8
|
|
||||||
+# endif
|
|
||||||
#endif /* KMP_ARCH_PPC64 || KMP_ARCH_AARCH64 */
|
|
||||||
|
|
||||||
#if KMP_OS_LINUX
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -1,73 +1,102 @@
|
|||||||
diff -Naur orig/cmake/FindIlmBase.cmake openvdb/cmake/FindIlmBase.cmake
|
diff -Naur openvdb.orig/openvdb/CMakeLists.txt openvdb/openvdb/CMakeLists.txt
|
||||||
--- orig/cmake/FindIlmBase.cmake 2019-12-06 13:11:33 -0700
|
--- openvdb.orig/openvdb/CMakeLists.txt 2018-04-10 12:22:17 -0600
|
||||||
+++ openvdb/cmake/FindIlmBase.cmake 2020-01-16 09:06:32 -0700
|
+++ openvdb/openvdb/CMakeLists.txt 2018-08-15 19:04:52 -0600
|
||||||
@@ -225,6 +225,12 @@
|
@@ -82,6 +82,9 @@
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
IF (WIN32 AND OPENVDB_DISABLE_BOOST_IMPLICIT_LINKING)
|
||||||
"-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.lib"
|
ADD_DEFINITIONS ( -DBOOST_ALL_NO_LIB )
|
||||||
|
ENDIF ()
|
||||||
|
+if(WIN32)
|
||||||
|
+ADD_DEFINITIONS ( -D__TBB_NO_IMPLICIT_LINKAGE )
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
FIND_PACKAGE ( Blosc REQUIRED )
|
||||||
|
FIND_PACKAGE ( TBB REQUIRED )
|
||||||
|
@@ -195,6 +198,7 @@
|
||||||
|
${Ilmbase_HALF_LIBRARY}
|
||||||
|
${ZLIB_LIBRARY}
|
||||||
|
${BLOSC_blosc_LIBRARY}
|
||||||
|
+ ${EXTRA_LIBS}
|
||||||
)
|
)
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
+ "_s.lib"
|
IF (WIN32)
|
||||||
+ )
|
@@ -225,13 +228,16 @@
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
${VDB_PRINT_SOURCE_FILES}
|
||||||
+ "_s_d.lib"
|
|
||||||
+ )
|
|
||||||
else()
|
|
||||||
if(ILMBASE_USE_STATIC_LIBS)
|
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
diff -Naur orig/cmake/FindOpenEXR.cmake openvdb/cmake/FindOpenEXR.cmake
|
|
||||||
--- orig/cmake/FindOpenEXR.cmake 2019-12-06 13:11:33 -0700
|
|
||||||
+++ openvdb/cmake/FindOpenEXR.cmake 2020-01-16 09:06:39 -0700
|
|
||||||
@@ -218,6 +218,12 @@
|
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
"-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.lib"
|
|
||||||
)
|
)
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
+ "_s.lib"
|
+if(NOT WIN32)
|
||||||
|
+ set(EXTRA_LIBS m stdc++ dl)
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
TARGET_LINK_LIBRARIES ( vdb_print
|
||||||
|
openvdb_shared
|
||||||
|
${CMAKE_THREAD_LIBS_INIT}
|
||||||
|
${BLOSC_blosc_LIBRARY}
|
||||||
|
- m
|
||||||
|
- stdc++
|
||||||
|
- )
|
||||||
|
+ ${EXTRA_LIBS}
|
||||||
|
+)
|
||||||
|
|
||||||
|
SET ( VDB_RENDER_SOURCE_FILES cmd/openvdb_render/main.cc )
|
||||||
|
SET_SOURCE_FILES_PROPERTIES ( ${VDB_RENDER_SOURCE_FILES}
|
||||||
|
@@ -249,8 +255,7 @@
|
||||||
|
${Openexr_ILMIMF_LIBRARY}
|
||||||
|
${Ilmbase_ILMTHREAD_LIBRARY}
|
||||||
|
${Ilmbase_IEX_LIBRARY}
|
||||||
|
- m
|
||||||
|
- stdc++
|
||||||
|
+ ${EXTRA_LIBS}
|
||||||
|
)
|
||||||
|
|
||||||
|
SET ( VDB_VIEW_SOURCE_FILES
|
||||||
|
@@ -270,7 +270,7 @@
|
||||||
|
PROPERTIES
|
||||||
|
COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} -DGL_GLEXT_PROTOTYPES=1"
|
||||||
|
)
|
||||||
|
-IF (NOT WIN32)
|
||||||
|
+IF (FALSE)
|
||||||
|
ADD_EXECUTABLE ( vdb_view
|
||||||
|
${VDB_VIEW_SOURCE_FILES}
|
||||||
|
)
|
||||||
|
@@ -283,9 +288,8 @@
|
||||||
|
${GLFW_LINK_LIBRARY}
|
||||||
|
${GLFW_DEPENDENT_LIBRARIES}
|
||||||
|
${GLEW_GLEW_LIBRARY}
|
||||||
|
- m
|
||||||
|
- stdc++
|
||||||
|
- )
|
||||||
|
+ ${EXTRA_LIBS}
|
||||||
+ )
|
+ )
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
ENDIF ()
|
||||||
+ "_s_d.lib"
|
|
||||||
+ )
|
|
||||||
else()
|
|
||||||
if(OPENEXR_USE_STATIC_LIBS)
|
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
diff -Naur orig/openvdb/CMakeLists.txt openvdb/openvdb/CMakeLists.txt
|
|
||||||
--- orig/openvdb/CMakeLists.txt 2019-12-06 13:11:33 -0700
|
|
||||||
+++ openvdb/openvdb/CMakeLists.txt 2020-01-16 08:56:25 -0700
|
|
||||||
@@ -193,11 +193,12 @@
|
|
||||||
if(OPENVDB_DISABLE_BOOST_IMPLICIT_LINKING)
|
|
||||||
add_definitions(-DBOOST_ALL_NO_LIB)
|
|
||||||
endif()
|
|
||||||
+ add_definitions(-D__TBB_NO_IMPLICIT_LINKAGE -DOPENVDB_OPENEXR_STATICLIB)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# @todo Should be target definitions
|
SET ( UNITTEST_SOURCE_FILES
|
||||||
if(WIN32)
|
@@ -392,8 +396,7 @@
|
||||||
- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL)
|
TARGET_LINK_LIBRARIES ( vdb_test
|
||||||
+ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB)
|
${CPPUnit_cppunit_LIBRARY}
|
||||||
endif()
|
openvdb_shared
|
||||||
|
- m
|
||||||
|
- stdc++
|
||||||
|
+ ${EXTRA_LIBS}
|
||||||
|
)
|
||||||
|
|
||||||
##### Core library configuration
|
ADD_TEST ( vdb_unit_test vdb_test )
|
||||||
diff -Naur orig/openvdb/cmd/CMakeLists.txt openvdb/openvdb/cmd/CMakeLists.txt
|
@@ -422,7 +422,7 @@
|
||||||
--- orig/openvdb/cmd/CMakeLists.txt 2019-12-06 13:11:33 -0700
|
ENDIF ()
|
||||||
+++ openvdb/openvdb/cmd/CMakeLists.txt 2020-01-16 08:56:25 -0700
|
|
||||||
@@ -53,7 +53,7 @@
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
# Installation
|
||||||
- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL)
|
-IF ( NOT WIN32 )
|
||||||
+ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB)
|
+IF ( FALSE )
|
||||||
endif()
|
INSTALL ( TARGETS
|
||||||
|
vdb_view
|
||||||
# rpath handling
|
DESTINATION
|
||||||
diff -Naur orig/openvdb/unittest/CMakeLists.txt openvdb/openvdb/unittest/CMakeLists.txt
|
diff -Naur openvdb.orig/openvdb/math/Coord.h openvdb/openvdb/math/Coord.h
|
||||||
--- orig/openvdb/unittest/CMakeLists.txt 2019-12-06 13:11:33 -0700
|
--- openvdb.orig/openvdb/math/Coord.h 2018-04-10 12:22:17 -0600
|
||||||
+++ openvdb/openvdb/unittest/CMakeLists.txt 2020-01-16 08:56:25 -0700
|
+++ openvdb/openvdb/math/Coord.h 2018-08-15 20:32:43 -0600
|
||||||
@@ -49,7 +49,7 @@
|
@@ -35,6 +35,7 @@
|
||||||
endif()
|
#include <array> // for std::array
|
||||||
|
#include <iostream>
|
||||||
if(WIN32)
|
#include <limits>
|
||||||
- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL)
|
+#define NOMINMAX
|
||||||
+ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB)
|
#include <openvdb/Platform.h>
|
||||||
endif()
|
#include "Math.h"
|
||||||
|
#include "Vec3.h"
|
||||||
##### VDB unit tests
|
|
||||||
|
@@ -1,3 +1,15 @@
|
|||||||
|
diff -Naur OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake external_osl/src/cmake/flexbison.cmake
|
||||||
|
--- OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake 2018-05-01 16:39:02 -0600
|
||||||
|
+++ external_osl/src/cmake/flexbison.cmake 2018-08-23 15:42:27 -0600
|
||||||
|
@@ -77,7 +77,7 @@
|
||||||
|
DEPENDS ${${compiler_headers}}
|
||||||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} )
|
||||||
|
ADD_CUSTOM_COMMAND ( OUTPUT ${flexoutputcxx}
|
||||||
|
- COMMAND ${FLEX_EXECUTABLE} -o ${flexoutputcxx} "${CMAKE_CURRENT_SOURCE_DIR}/${flexsrc}"
|
||||||
|
+ COMMAND ${FLEX_EXECUTABLE} ${FLEX_EXTRA_OPTIONS} -o ${flexoutputcxx} "${CMAKE_CURRENT_SOURCE_DIR}/${flexsrc}"
|
||||||
|
MAIN_DEPENDENCY ${flexsrc}
|
||||||
|
DEPENDS ${${compiler_headers}}
|
||||||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} )
|
||||||
diff -Naur OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake.rej external_osl/src/cmake/flexbison.cmake.rej
|
diff -Naur OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake.rej external_osl/src/cmake/flexbison.cmake.rej
|
||||||
--- OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake.rej 1969-12-31 17:00:00 -0700
|
--- OpenShadingLanguage-Release-1.9.9/src/cmake/flexbison.cmake.rej 1969-12-31 17:00:00 -0700
|
||||||
+++ external_osl/src/cmake/flexbison.cmake.rej 2018-08-24 17:42:11 -0600
|
+++ external_osl/src/cmake/flexbison.cmake.rej 2018-08-24 17:42:11 -0600
|
||||||
@@ -33,6 +45,18 @@ diff -Naur OpenShadingLanguage-Release-1.9.9/src/include/OSL/llvm_util.h externa
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
class MemoryManager;
|
class MemoryManager;
|
||||||
|
diff -Naur OpenShadingLanguage-Release-1.9.9/src/include/OSL/oslnoise.h external_osl/src/include/OSL/oslnoise.h
|
||||||
|
--- OpenShadingLanguage-Release-1.9.9/src/include/OSL/oslnoise.h 2018-05-01 16:39:02 -0600
|
||||||
|
+++ external_osl/src/include/OSL/oslnoise.h 2018-08-24 17:42:11 -0600
|
||||||
|
@@ -762,7 +762,7 @@
|
||||||
|
// packed into a float4. We assume T is float and VECTYPE is float4,
|
||||||
|
// but it also works if T is Dual2<float> and VECTYPE is Dual2<float4>.
|
||||||
|
template<typename T, typename VECTYPE>
|
||||||
|
-OIIO_FORCEINLINE T bilerp (VECTYPE abcd, T u, T v) {
|
||||||
|
+OIIO_FORCEINLINE T bilerp (VECTYPE& abcd, T u, T v) {
|
||||||
|
VECTYPE xx = OIIO::lerp (abcd, OIIO::simd::shuffle<1,1,3,3>(abcd), u);
|
||||||
|
return OIIO::simd::extract<0>(OIIO::lerp (xx,OIIO::simd::shuffle<2>(xx), v));
|
||||||
|
}
|
||||||
diff -Naur OpenShadingLanguage-Release-1.9.9/src/liboslexec/llvm_util.cpp external_osl/src/liboslexec/llvm_util.cpp
|
diff -Naur OpenShadingLanguage-Release-1.9.9/src/liboslexec/llvm_util.cpp external_osl/src/liboslexec/llvm_util.cpp
|
||||||
--- OpenShadingLanguage-Release-1.9.9/src/liboslexec/llvm_util.cpp 2018-05-01 16:39:02 -0600
|
--- OpenShadingLanguage-Release-1.9.9/src/liboslexec/llvm_util.cpp 2018-05-01 16:39:02 -0600
|
||||||
+++ external_osl/src/liboslexec/llvm_util.cpp 2018-08-25 14:04:27 -0600
|
+++ external_osl/src/liboslexec/llvm_util.cpp 2018-08-25 14:04:27 -0600
|
||||||
@@ -48,22 +72,3 @@ diff -Naur OpenShadingLanguage-Release-1.9.9/src/liboslexec/llvm_util.cpp extern
|
|||||||
|
|
||||||
size_t
|
size_t
|
||||||
LLVM_Util::total_jit_memory_held ()
|
LLVM_Util::total_jit_memory_held ()
|
||||||
diff -Naur OpenShadingLanguage-Release-1.9.9/CMakeLists.txt external_osl/CMakeLists.txt
|
|
||||||
--- orig/CMakeLists.txt 2020-01-27 16:22:31 -0700
|
|
||||||
+++ external_osl/CMakeLists.txt 2020-05-13 18:04:52 -0600
|
|
||||||
@@ -102,10 +102,11 @@
|
|
||||||
set (OPTIX_EXTRA_LIBS CACHE STRING "Extra lib targets needed for OptiX")
|
|
||||||
set (CUDA_TARGET_ARCH "sm_35" CACHE STRING "CUDA GPU architecture (e.g. sm_35)")
|
|
||||||
|
|
||||||
-# set (USE_OIIO_STATIC ON CACHE BOOL "If OIIO is built static")
|
|
||||||
-# if (USE_OIIO_STATIC)
|
|
||||||
-# add_definitions ("-DOIIO_STATIC_BUILD=1")
|
|
||||||
-# endif ()
|
|
||||||
+set (USE_OIIO_STATIC ON CACHE BOOL "If OIIO is built static")
|
|
||||||
+if (USE_OIIO_STATIC)
|
|
||||||
+ add_definitions ("-DOIIO_STATIC_BUILD=1")
|
|
||||||
+ add_definitions ("-DOIIO_STATIC_DEFINE=1")
|
|
||||||
+endif ()
|
|
||||||
|
|
||||||
set (OSL_NO_DEFAULT_TEXTURESYSTEM OFF CACHE BOOL "Do not use create a raw OIIO::TextureSystem")
|
|
||||||
if (OSL_NO_DEFAULT_TEXTURESYSTEM)
|
|
@@ -1,12 +1,13 @@
|
|||||||
diff -Naur orig/Makefile external_pthreads/Makefile
|
--- pthread.h.orig 2012-05-26 22:16:45 -0600
|
||||||
--- orig/Makefile 2018-08-08 04:47:40 -0600
|
+++ pthread.h 2016-04-01 09:20:36 -0600
|
||||||
+++ external_pthreads/Makefile 2020-05-09 11:20:28 -0600
|
@@ -109,6 +109,10 @@
|
||||||
@@ -185,7 +185,7 @@
|
/* Include everything */
|
||||||
@ $(MAKE) /E /nologo XCFLAGS="/MTd" EHFLAGS="$(VSEFLAGSD) /D__PTW32_STATIC_LIB /D__PTW32_BUILD_INLINED" CLEANUP=__PTW32_CLEANUP_SEH pthreadVSE$(PTW32_VER_DEBUG).inlined_static_stamp
|
#endif
|
||||||
|
|
||||||
VC-static:
|
+#if _MSC_VER >= 1900
|
||||||
- @ $(MAKE) /E /nologo XCFLAGS="/MT" EHFLAGS="$(VCFLAGS) /D__PTW32_STATIC_LIB /D__PTW32_BUILD_INLINED" CLEANUP=__PTW32_CLEANUP_C pthreadVC$(PTW32_VER).inlined_static_stamp
|
+# define HAVE_STRUCT_TIMESPEC 1
|
||||||
+ @ $(MAKE) /E /nologo XCFLAGS="/MD" EHFLAGS="$(VCFLAGS) /D__PTW32_STATIC_LIB /D__PTW32_BUILD_INLINED" CLEANUP=__PTW32_CLEANUP_C pthreadVC$(PTW32_VER).inlined_static_stamp
|
+#endif
|
||||||
|
+
|
||||||
VC-static-debug:
|
#if defined(_UWIN)
|
||||||
@ $(MAKE) /E /nologo XCFLAGS="/MTd" EHFLAGS="$(VCFLAGSD) /D__PTW32_STATIC_LIB /D__PTW32_BUILD_INLINED" CLEANUP=__PTW32_CLEANUP_C pthreadVC$(PTW32_VER_DEBUG).inlined_static_stamp
|
# define HAVE_STRUCT_TIMESPEC 1
|
||||||
|
# define HAVE_SIGNAL_H 1
|
||||||
|
@@ -1,289 +0,0 @@
|
|||||||
diff -ru a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst
|
|
||||||
--- a/Doc/library/ctypes.rst 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/Doc/library/ctypes.rst 2020-07-14 08:10:10.000000000 +0200
|
|
||||||
@@ -1551,6 +1551,13 @@
|
|
||||||
value usable as argument (integer, string, ctypes instance). This allows
|
|
||||||
defining adapters that can adapt custom objects as function parameters.
|
|
||||||
|
|
||||||
+ .. attribute:: variadic
|
|
||||||
+
|
|
||||||
+ Assign a boolean to specify that the function takes a variable number of
|
|
||||||
+ arguments. This does not matter on most platforms, but for Apple arm64
|
|
||||||
+ platforms variadic functions have a different calling convention than
|
|
||||||
+ normal functions.
|
|
||||||
+
|
|
||||||
.. attribute:: errcheck
|
|
||||||
|
|
||||||
Assign a Python function or another callable to this attribute. The
|
|
||||||
diff -ru a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
|
|
||||||
--- a/Modules/_ctypes/_ctypes.c 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/Modules/_ctypes/_ctypes.c 2020-07-14 08:14:41.000000000 +0200
|
|
||||||
@@ -3175,6 +3175,35 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
+PyCFuncPtr_set_variadic(PyCFuncPtrObject *self, PyObject *ob, void *Py_UNUSED(ignored))
|
|
||||||
+{
|
|
||||||
+ StgDictObject *dict = PyObject_stgdict((PyObject *)self);
|
|
||||||
+ assert(dict);
|
|
||||||
+ int r = PyObject_IsTrue(ob);
|
|
||||||
+ if (r == 1) {
|
|
||||||
+ dict->flags |= FUNCFLAG_VARIADIC;
|
|
||||||
+ return 0;
|
|
||||||
+ } else if (r == 0) {
|
|
||||||
+ dict->flags &= ~FUNCFLAG_VARIADIC;
|
|
||||||
+ return 0;
|
|
||||||
+ } else {
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static PyObject *
|
|
||||||
+PyCFuncPtr_get_variadic(PyCFuncPtrObject *self, void *Py_UNUSED(ignored))
|
|
||||||
+{
|
|
||||||
+ StgDictObject *dict = PyObject_stgdict((PyObject *)self);
|
|
||||||
+ assert(dict); /* Cannot be NULL for PyCFuncPtrObject instances */
|
|
||||||
+ if (dict->flags & FUNCFLAG_VARIADIC)
|
|
||||||
+ Py_RETURN_TRUE;
|
|
||||||
+ else
|
|
||||||
+ Py_RETURN_FALSE;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+static int
|
|
||||||
PyCFuncPtr_set_argtypes(PyCFuncPtrObject *self, PyObject *ob, void *Py_UNUSED(ignored))
|
|
||||||
{
|
|
||||||
PyObject *converters;
|
|
||||||
@@ -5632,6 +5661,7 @@
|
|
||||||
PyModule_AddObject(m, "FUNCFLAG_USE_ERRNO", PyLong_FromLong(FUNCFLAG_USE_ERRNO));
|
|
||||||
PyModule_AddObject(m, "FUNCFLAG_USE_LASTERROR", PyLong_FromLong(FUNCFLAG_USE_LASTERROR));
|
|
||||||
PyModule_AddObject(m, "FUNCFLAG_PYTHONAPI", PyLong_FromLong(FUNCFLAG_PYTHONAPI));
|
|
||||||
+ PyModule_AddObject(m, "FUNCFLAG_VARIADIC", PyLong_FromLong(FUNCFLAG_VARIADIC));
|
|
||||||
PyModule_AddStringConstant(m, "__version__", "1.1.0");
|
|
||||||
|
|
||||||
PyModule_AddObject(m, "_memmove_addr", PyLong_FromVoidPtr(memmove));
|
|
||||||
diff -ru a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c
|
|
||||||
--- a/Modules/_ctypes/callproc.c 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/Modules/_ctypes/callproc.c 2020-07-14 08:18:33.000000000 +0200
|
|
||||||
@@ -767,7 +767,8 @@
|
|
||||||
ffi_type **atypes,
|
|
||||||
ffi_type *restype,
|
|
||||||
void *resmem,
|
|
||||||
- int argcount)
|
|
||||||
+ int argcount,
|
|
||||||
+ int argtypecount)
|
|
||||||
{
|
|
||||||
PyThreadState *_save = NULL; /* For Py_BLOCK_THREADS and Py_UNBLOCK_THREADS */
|
|
||||||
PyObject *error_object = NULL;
|
|
||||||
@@ -793,15 +794,38 @@
|
|
||||||
if ((flags & FUNCFLAG_CDECL) == 0)
|
|
||||||
cc = FFI_STDCALL;
|
|
||||||
#endif
|
|
||||||
- if (FFI_OK != ffi_prep_cif(&cif,
|
|
||||||
- cc,
|
|
||||||
- argcount,
|
|
||||||
- restype,
|
|
||||||
- atypes)) {
|
|
||||||
- PyErr_SetString(PyExc_RuntimeError,
|
|
||||||
- "ffi_prep_cif failed");
|
|
||||||
- return -1;
|
|
||||||
- }
|
|
||||||
+#if HAVE_FFI_PREP_CIF_VAR
|
|
||||||
+ /* Everyone SHOULD set f.variadic=True on variadic function pointers, but
|
|
||||||
+ * lots of existing code will not. If there's at least one arg and more
|
|
||||||
+ * args are passed than are defined in the prototype, then it must be a
|
|
||||||
+ * variadic function. */
|
|
||||||
+ if ((flags & FUNCFLAG_VARIADIC) ||
|
|
||||||
+ (argtypecount != 0 && argcount > argtypecount))
|
|
||||||
+ {
|
|
||||||
+ if (FFI_OK != ffi_prep_cif_var(&cif,
|
|
||||||
+ cc,
|
|
||||||
+ argtypecount,
|
|
||||||
+ argcount,
|
|
||||||
+ restype,
|
|
||||||
+ atypes)) {
|
|
||||||
+ PyErr_SetString(PyExc_RuntimeError,
|
|
||||||
+ "ffi_prep_cif_var failed");
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+ } else {
|
|
||||||
+#endif
|
|
||||||
+ if (FFI_OK != ffi_prep_cif(&cif,
|
|
||||||
+ cc,
|
|
||||||
+ argcount,
|
|
||||||
+ restype,
|
|
||||||
+ atypes)) {
|
|
||||||
+ PyErr_SetString(PyExc_RuntimeError,
|
|
||||||
+ "ffi_prep_cif failed");
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+#if HAVE_FFI_PREP_CIF_VAR
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (flags & (FUNCFLAG_USE_ERRNO | FUNCFLAG_USE_LASTERROR)) {
|
|
||||||
error_object = _ctypes_get_errobj(&space);
|
|
||||||
@@ -1185,9 +1209,8 @@
|
|
||||||
|
|
||||||
if (-1 == _call_function_pointer(flags, pProc, avalues, atypes,
|
|
||||||
rtype, resbuf,
|
|
||||||
- Py_SAFE_DOWNCAST(argcount,
|
|
||||||
- Py_ssize_t,
|
|
||||||
- int)))
|
|
||||||
+ Py_SAFE_DOWNCAST(argcount, Py_ssize_t, int),
|
|
||||||
+ Py_SAFE_DOWNCAST(argtype_count, Py_ssize_t, int)))
|
|
||||||
goto cleanup;
|
|
||||||
|
|
||||||
#ifdef WORDS_BIGENDIAN
|
|
||||||
diff -ru a/Modules/_ctypes/ctypes.h b/Modules/_ctypes/ctypes.h
|
|
||||||
--- a/Modules/_ctypes/ctypes.h 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/Modules/_ctypes/ctypes.h 2020-07-14 08:30:53.000000000 +0200
|
|
||||||
@@ -285,6 +285,7 @@
|
|
||||||
#define FUNCFLAG_PYTHONAPI 0x4
|
|
||||||
#define FUNCFLAG_USE_ERRNO 0x8
|
|
||||||
#define FUNCFLAG_USE_LASTERROR 0x10
|
|
||||||
+#define FUNCFLAG_VARIADIC 0x20
|
|
||||||
|
|
||||||
#define TYPEFLAG_ISPOINTER 0x100
|
|
||||||
#define TYPEFLAG_HASPOINTER 0x200
|
|
||||||
diff -ru a/configure b/configure
|
|
||||||
--- a/configure 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/configure 2020-07-14 08:03:27.000000000 +0200
|
|
||||||
@@ -3374,7 +3374,7 @@
|
|
||||||
# has no effect, don't bother defining them
|
|
||||||
Darwin/[6789].*)
|
|
||||||
define_xopen_source=no;;
|
|
||||||
- Darwin/1[0-9].*)
|
|
||||||
+ Darwin/[12][0-9].*)
|
|
||||||
define_xopen_source=no;;
|
|
||||||
# On AIX 4 and 5.1, mbstate_t is defined only when _XOPEN_SOURCE == 500 but
|
|
||||||
# used in wcsnrtombs() and mbsnrtowcs() even if _XOPEN_SOURCE is not defined
|
|
||||||
@@ -9251,6 +9251,9 @@
|
|
||||||
ppc)
|
|
||||||
MACOSX_DEFAULT_ARCH="ppc64"
|
|
||||||
;;
|
|
||||||
+ arm64)
|
|
||||||
+ MACOSX_DEFAULT_ARCH="arm64"
|
|
||||||
+ ;;
|
|
||||||
*)
|
|
||||||
as_fn_error $? "Unexpected output of 'arch' on OSX" "$LINENO" 5
|
|
||||||
;;
|
|
||||||
diff -ru a/configure.ac b/configure.ac
|
|
||||||
--- a/configure.ac 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/configure.ac 2020-07-14 08:03:27.000000000 +0200
|
|
||||||
@@ -2456,6 +2456,9 @@
|
|
||||||
ppc)
|
|
||||||
MACOSX_DEFAULT_ARCH="ppc64"
|
|
||||||
;;
|
|
||||||
+ arm64)
|
|
||||||
+ MACOSX_DEFAULT_ARCH="arm64"
|
|
||||||
+ ;;
|
|
||||||
*)
|
|
||||||
AC_MSG_ERROR([Unexpected output of 'arch' on OSX])
|
|
||||||
;;
|
|
||||||
diff -ru a/setup.py b/setup.py
|
|
||||||
--- a/setup.py 2020-03-10 07:11:12.000000000 +0100
|
|
||||||
+++ b/setup.py 2020-07-14 08:28:12.000000000 +0200
|
|
||||||
@@ -141,6 +141,13 @@
|
|
||||||
os.unlink(tmpfile)
|
|
||||||
|
|
||||||
return MACOS_SDK_ROOT
|
|
||||||
+
|
|
||||||
+def is_macosx_at_least(vers):
|
|
||||||
+ if host_platform == 'darwin':
|
|
||||||
+ dep_target = sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET')
|
|
||||||
+ if dep_target:
|
|
||||||
+ return tuple(map(int, dep_target.split('.'))) >= vers
|
|
||||||
+ return False
|
|
||||||
|
|
||||||
def is_macosx_sdk_path(path):
|
|
||||||
"""
|
|
||||||
@@ -150,6 +157,13 @@
|
|
||||||
or path.startswith('/System/')
|
|
||||||
or path.startswith('/Library/') )
|
|
||||||
|
|
||||||
+def grep_headers_for(function, headers):
|
|
||||||
+ for header in headers:
|
|
||||||
+ with open(header, 'r') as f:
|
|
||||||
+ if function in f.read():
|
|
||||||
+ return True
|
|
||||||
+ return False
|
|
||||||
+
|
|
||||||
def find_file(filename, std_dirs, paths):
|
|
||||||
"""Searches for the directory where a given file is located,
|
|
||||||
and returns a possibly-empty list of additional directories, or None
|
|
||||||
@@ -1972,7 +1986,11 @@
|
|
||||||
return True
|
|
||||||
|
|
||||||
def detect_ctypes(self, inc_dirs, lib_dirs):
|
|
||||||
- self.use_system_libffi = False
|
|
||||||
+ if not sysconfig.get_config_var("LIBFFI_INCLUDEDIR") and is_macosx_at_least((10,15)):
|
|
||||||
+ self.use_system_libffi = True
|
|
||||||
+ else:
|
|
||||||
+ self.use_system_libffi = '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS")
|
|
||||||
+
|
|
||||||
include_dirs = []
|
|
||||||
extra_compile_args = []
|
|
||||||
extra_link_args = []
|
|
||||||
@@ -2016,32 +2034,48 @@
|
|
||||||
ext_test = Extension('_ctypes_test',
|
|
||||||
sources=['_ctypes/_ctypes_test.c'],
|
|
||||||
libraries=['m'])
|
|
||||||
+ ffi_inc = sysconfig.get_config_var("LIBFFI_INCLUDEDIR")
|
|
||||||
+ ffi_lib = None
|
|
||||||
+
|
|
||||||
self.extensions.extend([ext, ext_test])
|
|
||||||
|
|
||||||
if host_platform == 'darwin':
|
|
||||||
- if '--with-system-ffi' not in sysconfig.get_config_var("CONFIG_ARGS"):
|
|
||||||
+ if not self.use_system_libffi:
|
|
||||||
return
|
|
||||||
- # OS X 10.5 comes with libffi.dylib; the include files are
|
|
||||||
- # in /usr/include/ffi
|
|
||||||
- inc_dirs.append('/usr/include/ffi')
|
|
||||||
-
|
|
||||||
- ffi_inc = [sysconfig.get_config_var("LIBFFI_INCLUDEDIR")]
|
|
||||||
- if not ffi_inc or ffi_inc[0] == '':
|
|
||||||
- ffi_inc = find_file('ffi.h', [], inc_dirs)
|
|
||||||
- if ffi_inc is not None:
|
|
||||||
- ffi_h = ffi_inc[0] + '/ffi.h'
|
|
||||||
+ ffi_in_sdk = os.path.join(macosx_sdk_root(), "usr/include/ffi")
|
|
||||||
+ if os.path.exists(ffi_in_sdk):
|
|
||||||
+ ffi_inc = ffi_in_sdk
|
|
||||||
+ ffi_lib = 'ffi'
|
|
||||||
+ else:
|
|
||||||
+ # OS X 10.5 comes with libffi.dylib; the include files are
|
|
||||||
+ # in /usr/include/ffi
|
|
||||||
+ ffi_inc_dirs.append('/usr/include/ffi')
|
|
||||||
+
|
|
||||||
+ if not ffi_inc:
|
|
||||||
+ found = find_file('ffi.h', [], ffi_inc_dirs)
|
|
||||||
+ if found:
|
|
||||||
+ ffi_inc = found[0]
|
|
||||||
+ if ffi_inc:
|
|
||||||
+ ffi_h = ffi_inc + '/ffi.h'
|
|
||||||
if not os.path.exists(ffi_h):
|
|
||||||
ffi_inc = None
|
|
||||||
print('Header file {} does not exist'.format(ffi_h))
|
|
||||||
- ffi_lib = None
|
|
||||||
- if ffi_inc is not None:
|
|
||||||
+ if ffi_lib is None and ffi_inc:
|
|
||||||
for lib_name in ('ffi', 'ffi_pic'):
|
|
||||||
if (self.compiler.find_library_file(lib_dirs, lib_name)):
|
|
||||||
ffi_lib = lib_name
|
|
||||||
break
|
|
||||||
|
|
||||||
if ffi_inc and ffi_lib:
|
|
||||||
- ext.include_dirs.extend(ffi_inc)
|
|
||||||
+ ffi_headers = glob(os.path.join(ffi_inc, '*.h'))
|
|
||||||
+ if grep_headers_for('ffi_closure_alloc', ffi_headers):
|
|
||||||
+ try:
|
|
||||||
+ sources.remove('_ctypes/malloc_closure.c')
|
|
||||||
+ except ValueError:
|
|
||||||
+ pass
|
|
||||||
+ if grep_headers_for('ffi_prep_cif_var', ffi_headers):
|
|
||||||
+ ext.extra_compile_args.append("-DHAVE_FFI_PREP_CIF_VAR=1")
|
|
||||||
+ ext.include_dirs.append(ffi_inc)
|
|
||||||
ext.libraries.append(ffi_lib)
|
|
||||||
self.use_system_libffi = True
|
|
||||||
|
|
@@ -1,14 +0,0 @@
|
|||||||
Only in external_sqlite_orig: config.log
|
|
||||||
diff -ru external_sqlite_orig/config.sub external_sqlite/config.sub
|
|
||||||
--- external_sqlite_orig/config.sub 2020-07-10 14:06:42.000000000 +0200
|
|
||||||
+++ external_sqlite/config.sub 2020-07-10 14:10:24.000000000 +0200
|
|
||||||
@@ -314,6 +314,7 @@
|
|
||||||
# Recognize the basic CPU types with company name.
|
|
||||||
580-* \
|
|
||||||
| a29k-* \
|
|
||||||
+ | aarch64-* \
|
|
||||||
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
|
||||||
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
|
|
||||||
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
|
|
||||||
Only in external_sqlite: mksourceid
|
|
||||||
Only in external_sqlite: sqlite3session.h
|
|
@@ -1,18 +0,0 @@
|
|||||||
--- config.sub
|
|
||||||
+++ config.sub
|
|
||||||
@@ -226,6 +226,7 @@
|
|
||||||
# Some are omitted here because they have special meanings below.
|
|
||||||
1750a | 580 \
|
|
||||||
| a29k \
|
|
||||||
+ | aarch64 \
|
|
||||||
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
|
|
||||||
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
|
|
||||||
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
|
||||||
@@ -286,6 +287,7 @@
|
|
||||||
# Recognize the basic CPU types with company name.
|
|
||||||
580-* \
|
|
||||||
| a29k-* \
|
|
||||||
+ | aarch64-* \
|
|
||||||
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
|
||||||
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
|
|
||||||
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
|
|
@@ -1,132 +0,0 @@
|
|||||||
diff -x .git -ur usd.orig/cmake/defaults/Packages.cmake external_usd/cmake/defaults/Packages.cmake
|
|
||||||
--- usd.orig/cmake/defaults/Packages.cmake 2019-10-24 22:39:53.000000000 +0200
|
|
||||||
+++ external_usd/cmake/defaults/Packages.cmake 2019-11-28 13:00:33.185957483 +0100
|
|
||||||
@@ -64,7 +64,7 @@
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# --TBB
|
|
||||||
-find_package(TBB REQUIRED COMPONENTS tbb)
|
|
||||||
+find_package(TBB)
|
|
||||||
add_definitions(${TBB_DEFINITIONS})
|
|
||||||
|
|
||||||
# --math
|
|
||||||
diff -x .git -ur usd.orig/pxr/base/plug/initConfig.cpp external_usd/pxr/base/plug/initConfig.cpp
|
|
||||||
--- usd.orig/pxr/base/plug/initConfig.cpp.orig 2020-06-12 17:20:07.478199779 +0200
|
|
||||||
+++ external_usd/pxr/base/plug/initConfig.cpp 2020-06-12 17:25:28.648588552 +0200
|
|
||||||
@@ -69,10 +69,40 @@
|
|
||||||
|
|
||||||
ARCH_CONSTRUCTOR(Plug_InitConfig, 2, void)
|
|
||||||
{
|
|
||||||
+ /* The contents of this constructor have been moved to usd_initialise_plugin_path(...) */
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+}; // end of anonymous namespace
|
|
||||||
+
|
|
||||||
+/**
|
|
||||||
+ * The contents of this function used to be in the static constructor Plug_InitConfig.
|
|
||||||
+ * This static constructor made it impossible for Blender to pass a path to the USD
|
|
||||||
+ * library at runtime, as the constructor would run before Blender's main() function.
|
|
||||||
+ *
|
|
||||||
+ * This function is wrapped in a C function of the same name (defined below),
|
|
||||||
+ * so that it can be called from Blender's main() function.
|
|
||||||
+ *
|
|
||||||
+ * The datafiles_usd_path path is used to point to the USD plugin path when Blender
|
|
||||||
+ * has been installed. The fallback_usd_path path should point to the build-time
|
|
||||||
+ * location of the USD plugin files so that Blender can be run on a development machine
|
|
||||||
+ * without requiring an installation step.
|
|
||||||
+ */
|
|
||||||
+void
|
|
||||||
+usd_initialise_plugin_path(const char *datafiles_usd_path)
|
|
||||||
+{
|
|
||||||
std::vector<std::string> result;
|
|
||||||
|
|
||||||
std::vector<std::string> debugMessages;
|
|
||||||
|
|
||||||
+ // Add Blender-specific paths. They MUST end in a slash, or symlinks will not be treated as directory.
|
|
||||||
+ if (datafiles_usd_path != NULL && datafiles_usd_path[0] != '\0') {
|
|
||||||
+ std::string datafiles_usd_path_str(datafiles_usd_path);
|
|
||||||
+ if (datafiles_usd_path_str.back() != '/') {
|
|
||||||
+ datafiles_usd_path_str += "/";
|
|
||||||
+ }
|
|
||||||
+ result.push_back(datafiles_usd_path_str);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
// Determine the absolute path to the Plug shared library. Any relative
|
|
||||||
// paths specified in the plugin search path will be anchored to this
|
|
||||||
// directory, to allow for relocatability. Note that this can fail when pxr
|
|
||||||
@@ -114,9 +144,24 @@
|
|
||||||
_AppendPathList(&result, installLocation, binaryPath);
|
|
||||||
#endif // PXR_INSTALL_LOCATION
|
|
||||||
|
|
||||||
- Plug_SetPaths(result, debugMessages);
|
|
||||||
-}
|
|
||||||
+ if (!TfGetenv("PXR_PATH_DEBUG").empty()) {
|
|
||||||
+ printf("USD Plugin paths: (%zu in total):\n", result.size());
|
|
||||||
+ for(const std::string &path : result) {
|
|
||||||
+ printf(" %s\n", path.c_str());
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
|
|
||||||
+ Plug_SetPaths(result, debugMessages);
|
|
||||||
}
|
|
||||||
|
|
||||||
PXR_NAMESPACE_CLOSE_SCOPE
|
|
||||||
+
|
|
||||||
+/* Workaround to make it possible to pass a path at runtime to USD. */
|
|
||||||
+extern "C" {
|
|
||||||
+void
|
|
||||||
+usd_initialise_plugin_path(
|
|
||||||
+ const char *datafiles_usd_path)
|
|
||||||
+{
|
|
||||||
+ PXR_NS::usd_initialise_plugin_path(datafiles_usd_path);
|
|
||||||
+}
|
|
||||||
+}
|
|
||||||
diff -Naur external_usd_base/cmake/macros/Public.cmake external_usd/cmake/macros/Public.cmake
|
|
||||||
--- external_usd_base/cmake/macros/Public.cmake 2019-10-24 14:39:53 -0600
|
|
||||||
+++ external_usd/cmake/macros/Public.cmake 2020-01-11 13:33:29 -0700
|
|
||||||
@@ -996,6 +996,12 @@
|
|
||||||
foreach(lib ${PXR_OBJECT_LIBS})
|
|
||||||
string(TOUPPER ${lib} uppercaseName)
|
|
||||||
list(APPEND exports "${uppercaseName}_EXPORTS=1")
|
|
||||||
+ # When building for blender, we do NOT want to export all symbols on windows.
|
|
||||||
+ # This is a dirty hack, but USD makes it impossible to do the right thing
|
|
||||||
+ # with the default options exposed.
|
|
||||||
+ if (WIN32)
|
|
||||||
+ list(APPEND exports "PXR_STATIC=1")
|
|
||||||
+ endif()
|
|
||||||
endforeach()
|
|
||||||
foreach(lib ${PXR_OBJECT_LIBS})
|
|
||||||
set(objects "${objects};\$<TARGET_OBJECTS:${lib}>")
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/align.h b/pxr/base/arch/align.h
|
|
||||||
index f3cabf4..ebc8a69 100644
|
|
||||||
--- a/pxr/base/arch/align.h
|
|
||||||
+++ b/pxr/base/arch/align.h
|
|
||||||
@@ -77,7 +77,11 @@ ArchAlignMemory(void *base)
|
|
||||||
/// The size of a CPU cache line on the current processor architecture in bytes.
|
|
||||||
///
|
|
||||||
/// \hideinitializer
|
|
||||||
+#if defined(ARCH_OS_DARWIN) && defined(ARCH_CPU_ARM)
|
|
||||||
+#define ARCH_CACHE_LINE_SIZE 128
|
|
||||||
+#else
|
|
||||||
#define ARCH_CACHE_LINE_SIZE 64
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
///@}
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/math.h b/pxr/base/arch/math.h
|
|
||||||
index 3e66c37..64a052c 100644
|
|
||||||
--- a/pxr/base/arch/math.h
|
|
||||||
+++ b/pxr/base/arch/math.h
|
|
||||||
@@ -42,7 +42,7 @@ PXR_NAMESPACE_OPEN_SCOPE
|
|
||||||
/// \addtogroup group_arch_Math
|
|
||||||
///@{
|
|
||||||
|
|
||||||
-#if defined (ARCH_CPU_INTEL) || defined(doxygen)
|
|
||||||
+#if defined (ARCH_CPU_INTEL) || defined(ARCH_CPU_ARM) || defined(doxygen)
|
|
||||||
|
|
||||||
/// This is the smallest value e such that 1+e^2 == 1, using floats.
|
|
||||||
/// True for all IEEE754 chipsets.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user