diff options
-rw-r--r-- | build_files/build_environment/cmake/osl.cmake | 1 | ||||
-rw-r--r-- | build_files/build_environment/cmake/python.cmake | 1 | ||||
-rw-r--r-- | build_files/build_environment/patches/alembic.diff | 35 | ||||
-rw-r--r-- | build_files/build_environment/patches/cmakelists_openvdb.txt | 398 | ||||
-rw-r--r-- | build_files/build_environment/patches/distutildebugflags.diff | 11 | ||||
-rw-r--r-- | build_files/build_environment/patches/osl_simd_oiio.diff | 14 | ||||
-rw-r--r-- | build_files/build_environment/patches/pyshell.diff | 12 | ||||
-rw-r--r-- | build_files/build_environment/patches/python.diff | 82 | ||||
-rw-r--r-- | build_files/build_environment/patches/python_apple.diff | 25 | ||||
-rw-r--r-- | build_files/build_environment/patches/python_runtime_vc2013.diff | 29 | ||||
-rw-r--r-- | build_files/buildbot/config/blender_linux.cmake | 30 | ||||
-rw-r--r-- | build_files/buildbot/slave_compile.py | 9 | ||||
-rw-r--r-- | build_files/cmake/platform/platform_unix.cmake | 10 | ||||
-rw-r--r-- | intern/cycles/kernel/geom/geom_triangle_intersect.h | 4 | ||||
-rw-r--r-- | intern/cycles/render/osl.cpp | 1 | ||||
-rw-r--r-- | intern/cycles/render/osl.h | 1 |
16 files changed, 46 insertions, 617 deletions
diff --git a/build_files/build_environment/cmake/osl.cmake b/build_files/build_environment/cmake/osl.cmake index 469f0eee69d..eaf6a62d18a 100644 --- a/build_files/build_environment/cmake/osl.cmake +++ b/build_files/build_environment/cmake/osl.cmake @@ -90,7 +90,6 @@ ExternalProject_Add(external_osl URL_HASH MD5=${OSL_HASH} PREFIX ${BUILD_DIR}/osl PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl.diff - # ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl_simd_oiio.diff CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/osl -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ${DEFAULT_CMAKE_FLAGS} ${OSL_EXTRA_ARGS} INSTALL_DIR ${LIBDIR}/osl ) diff --git a/build_files/build_environment/cmake/python.cmake b/build_files/build_environment/cmake/python.cmake index cf928ecd794..22b4052189e 100644 --- a/build_files/build_environment/cmake/python.cmake +++ b/build_files/build_environment/cmake/python.cmake @@ -86,7 +86,6 @@ else() set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${BREW_PKG_CONFIG} && ${PYTHON_FUNC_CONFIGS}) 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_apple.diff) set(PYTHON_PATCH echo .) set(PYTHON_CONFIGURE_EXTRA_ENV echo .) set(PYTHON_CONFIGURE_EXTRA_ARGS) diff --git a/build_files/build_environment/patches/alembic.diff b/build_files/build_environment/patches/alembic.diff deleted file mode 100644 index f869858efb2..00000000000 --- a/build_files/build_environment/patches/alembic.diff +++ /dev/null @@ -1,35 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3e09c57..26565ae 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -116,7 +116,7 @@ IF (NOT ${ALEMBIC_LIB_USES_TR1} AND NOT ${ALEMBIC_LIB_USES_BOOST}) - INCLUDE(CheckCXXCompilerFlag) - CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) - CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) -- IF (COMPILER_SUPPORTS_CXX1X) -+ IF (COMPILER_SUPPORTS_CXX11) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - ELSEIF (COMPILER_SUPPORTS_CXX0X) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") ---- a/lib/Alembic/AbcCoreOgawa/StreamManager.cpp -+++ b/lib/Alembic/AbcCoreOgawa/StreamManager.cpp -@@ -47,7 +47,18 @@ - #define COMPARE_EXCHANGE( V, COMP, EXCH ) V.compare_exchange_weak( COMP, EXCH, std::memory_order_seq_cst, std::memory_order_seq_cst ) - // Windows - #elif defined( _MSC_VER ) --#define COMPARE_EXCHANGE( V, COMP, EXCH ) InterlockedCompareExhange64( &V, EXCH, COMP ) == COMP -+#define COMPARE_EXCHANGE( V, COMP, EXCH ) InterlockedCompareExchange64( &V, EXCH, COMP ) == COMP -+int ffsll(long long value) -+{ -+ if (!value) -+ return 0; -+ -+ for (int bit = 0; bit < 63; bit++) -+ { -+ if (value & (1 << bit)) -+ return bit + 1; -+ } -+} - // gcc 4.8 and above not using C++11 - #elif defined(__GNUC__) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 8 - #define COMPARE_EXCHANGE( V, COMP, EXCH ) __atomic_compare_exchange_n( &V, &COMP, EXCH, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) diff --git a/build_files/build_environment/patches/cmakelists_openvdb.txt b/build_files/build_environment/patches/cmakelists_openvdb.txt deleted file mode 100644 index 43161b8acff..00000000000 --- a/build_files/build_environment/patches/cmakelists_openvdb.txt +++ /dev/null @@ -1,398 +0,0 @@ -# -------------------------------------------------------------------------------- - -cmake_minimum_required(VERSION 2.8) - -# -------------------------------------------------------------------------------- - -project(OpenVDB) - -# -------------------------------------------------------------------------------- - -set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") - -# -------------------------------------------------------------------------------- - -set(CMAKE_BUILD_TYPE_INIT "Release") - -# -------------------------------------------------------------------------------- -# Options - -option(WITH_BLOSC "Enable Blosc support for compression" OFF) -option(WITH_LOGC4PLUS "Enable logging" OFF) -option(WITH_OPENVDB_2_ABI "Enable building the library to be compability with the OpenVDB 2 ABI" OFF) -option(WITH_PRINTER "Enable building the OpenVDB print executable" OFF) -option(WITH_PYTHON "Enable building the OpenVDB python API" OFF) -option(WITH_RENDERER "Enable building the OpenVDB render executable" OFF) -option(WITH_UNITTEST "Enable building the unit tests" OFF) -option(WITH_VIEWER "Enable building the OpenVDB viewer executable" OFF) - -# -------------------------------------------------------------------------------- -# Find packages -#set(BOOST_LIBRARIES boost_iostreams boost_system boost_thread) - -find_package(IlmBase) -find_package(OpenEXR) -find_package(TBB) -find_package(Boost) - -if(WITH_BLOSC) - find_package(Blosc) - - if(NOT BLOSC_FOUND) - set(WITH_BLOSC OFF) - endif() -endif() - -# todo -if(WITH_VIEWER) - set(GLFW_INCLUDE_DIRS ${GLFW_INCLUDE_PATH}) - set(GLFW_LIBRARY_DIRS ${GLFW_LIBRARY_PATH}) -endif() - -if(WITH_LOGC4PLUS) - find_package(LogC4Plus) - - if(NOT LOGC4PLUS_FOUND) - set(WITH_LOGC4PLUS OFF) - endif() -endif() - -# todo -if(WITH_PYTHON) - set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_PATH}) - set(PYTHON_LIBRARY_DIRS ${PYTHON_LIBRARY_PATH}) -endif() - -if(WITH_UNITTEST) - find_package(CppUnit) - - if(NOT CPPUNIT_FOUND) - set(WITH_UNITTEST OFF) - endif() -endif() - -# -------------------------------------------------------------------------------- - -message (STATUS "BOOST_ROOT ${BOOST_ROOT}") -message (STATUS "Boost found ${Boost_FOUND} ") -message (STATUS "Boost version ${Boost_VERSION}") -message (STATUS "Boost include dirs ${Boost_INCLUDE_DIRS}") -message (STATUS "Boost library dirs ${Boost_LIBRARY_DIRS}") -message (STATUS "Boost libraries ${Boost_LIBRARIES}") - -message (STATUS "ILMBase found ${ILMBASE_FOUND} ") -message (STATUS "ILMBase include dir ${ILMBASE_INCLUDE_DIR}") -message (STATUS "ILMBase libraries ${ILMBASE_LIBRARIES}") - -message (STATUS "TBB found ${TBB_FOUND} ") -message (STATUS "TBB include dir ${TBB_INCLUDE_DIR}") -message (STATUS "TBB libraries ${TBB_LIBRARIES}") - -if(MSVC) - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj" ) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /bigobj" ) -endif() - -set(OPENVDB_LIBRARIES ${BLOSC_LIBRARIES} ${BOOST_LIBRARIES} ${OPENEXR_LIBRARIES} ${ILMBASE_LIBRARIES} ${TBB_LIBRARIES} ${ZLIB_LIBRARY} ) - -include_directories(. ${CMAKE_CURRENT_SOURCE_DIR}/../ ${Boost_INCLUDE_DIRS} ${ILMBASE_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR} ${TBB_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR}) -link_directories(${Boost_LIBRARY_DIRS} ${OPENEXR_LIBRARY_DIRS} ${TBB_INCLUDE_DIRS}) -add_definitions(-DNOMINMAX -D__TBB_NO_IMPLICIT_LINKAGE -DOPENVDB_STATICLIB -DOPENVDB_OPENEXR_STATICLIB) - -if(WITH_BLOSC) - add_definitions(-DOPENVDB_USE_BLOSC) - include_directories(${BLOSC_INCLUDE_DIRS}) - link_directories(${BLOSC_LIBRARY_DIRS}) -endif() - -if(WITH_LOGC4PLUS) - add_definitions(-DOPENVDB_USE_LOG4CPLUS) - include_directories(${LOG4CPLUS_INCLUDE_DIRS}) - link_directories(${LOG4CPLUS_LIBRARY_DIRS}) -endif() - -if(WITH_OPENVDB_2_ABI) - add_definitions(-DOPENVDB_2_ABI_COMPATIBLE) -endif() - -# todo -if(WITH_OPENVDB_USE_GLFW_3) - add_definitions(-DOPENVDB_USE_GLFW_3) -endif() - -if(WITH_UNITTEST) - include_directories(${CPPUNIT_INCLUDE_DIRS}) - link_directories(${CPPUNIT_LIBRARY_DIRS}) -endif() - -# -------------------------------------------------------------------------------- - -set(SRC_FILES - openvdb/openvdb.cc - openvdb/io/Compression.cc - openvdb/io/File.cc - openvdb/io/Queue.cc - openvdb/io/Stream.cc - openvdb/io/TempFile.cc - openvdb/io/GridDescriptor.cc - openvdb/io/Archive.cc - openvdb/metadata/MetaMap.cc - openvdb/metadata/Metadata.cc - openvdb/math/Maps.cc - openvdb/math/Transform.cc - openvdb/math/QuantizedUnitVec.cc - openvdb/math/Proximity.cc - openvdb/Grid.cc - openvdb/util/Formats.cc - openvdb/util/Util.cc -) - -set(HEADER_FILES - openvdb/openvdb.h - openvdb/version.h - openvdb/PlatformConfig.h - openvdb/Metadata.h - openvdb/Exceptions.h - openvdb/Grid.h - openvdb/Types.h - openvdb/Platform.h - openvdb/tree/ValueAccessor.h - openvdb/tree/NodeUnion.h - openvdb/tree/Tree.h - openvdb/tree/Iterator.h - openvdb/tree/LeafNodeBool.h - openvdb/tree/TreeIterator.h - openvdb/tree/LeafNode.h - openvdb/tree/NodeManager.h - openvdb/tree/LeafManager.h - openvdb/tree/InternalNode.h - openvdb/tree/RootNode.h - openvdb/tools/PointScatter.h - openvdb/tools/VolumeAdvect.h - openvdb/tools/LevelSetTracker.h - openvdb/tools/Composite.h - openvdb/tools/Morphology.h - openvdb/tools/ValueTransformer.h - openvdb/tools/ChangeBackground.h - openvdb/tools/GridTransformer.h - openvdb/tools/Prune.h - openvdb/tools/LevelSetUtil.h - openvdb/tools/VolumeToSpheres.h - openvdb/tools/LevelSetAdvect.h - openvdb/tools/Statistics.h - openvdb/tools/LevelSetMeasure.h - openvdb/tools/VectorTransformer.h - openvdb/tools/RayIntersector.h - openvdb/tools/PointPartitioner.h - openvdb/tools/Interpolation.h - openvdb/tools/VelocityFields.h - openvdb/tools/PointIndexGrid.h - openvdb/tools/LevelSetRebuild.h - openvdb/tools/Clip.h - openvdb/tools/SignedFloodFill.h - openvdb/tools/MeshToVolume.h - openvdb/tools/Dense.h - openvdb/tools/Filter.h - openvdb/tools/RayTracer.h - openvdb/tools/Diagnostics.h - openvdb/tools/VolumeToMesh.h - openvdb/tools/PoissonSolver.h - openvdb/tools/LevelSetFracture.h - openvdb/tools/GridOperators.h - openvdb/tools/DenseSparseTools.h - openvdb/tools/ParticlesToLevelSet.h - openvdb/tools/LevelSetSphere.h - openvdb/tools/LevelSetMorph.h - openvdb/tools/LevelSetFilter.h - openvdb/tools/PointAdvect.h - openvdb/io/Queue.h - openvdb/io/TempFile.h - openvdb/io/Stream.h - openvdb/io/GridDescriptor.h - openvdb/io/Archive.h - openvdb/io/io.h - openvdb/io/Compression.h - openvdb/io/File.h - openvdb/metadata/StringMetadata.h - openvdb/metadata/MetaMap.h - openvdb/metadata/Metadata.h - openvdb/math/DDA.h - openvdb/math/Vec2.h - openvdb/math/FiniteDifference.h - openvdb/math/Stencils.h - openvdb/math/BBox.h - openvdb/math/Mat3.h - openvdb/math/Mat.h - openvdb/math/Proximity.h - openvdb/math/Ray.h - openvdb/math/ConjGradient.h - openvdb/math/Quat.h - openvdb/math/Vec3.h - openvdb/math/Vec4.h - openvdb/math/QuantizedUnitVec.h - openvdb/math/Coord.h - openvdb/math/Operators.h - openvdb/math/Stats.h - openvdb/math/Math.h - openvdb/math/Tuple.h - openvdb/math/LegacyFrustum.h - openvdb/math/Mat4.h - openvdb/math/Maps.h - openvdb/math/Transform.h - openvdb/util/PagedArray.h - openvdb/util/CpuTimer.h - openvdb/util/Formats.h - openvdb/util/NullInterrupter.h - openvdb/util/Util.h - openvdb/util/Name.h - openvdb/util/MapsUtil.h - openvdb/util/NodeMasks.h - openvdb/util/logging.h -) - -add_library(openvdb STATIC ${SRC_FILES} ${HEADER_FILES}) - -# -------------------------------------------------------------------------------- - -target_link_libraries(openvdb ${OPENVDB_LIBRARIES}) - -set(OPENVDB_VERSION_MAJOR 3) -set(OPENVDB_VERSION_MINOR 1) -set(OPENVDB_VERSION_PATCH 0) -set(OPENVDB_VERSION_STRING ${OPENVDB_VERSION_MAJOR}.${OPENVDB_VERSION_MINOR}.${OPENVDB_VERSION_PATCH}) - -set_target_properties(openvdb PROPERTIES VERSION ${OPENVDB_VERSION_STRING} SOVERSION ${OPENVDB_VERSION_MAJOR}) - -install(TARGETS openvdb DESTINATION lib) - -install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION include COMPONENT Development FILES_MATCHING PATTERN "*.h" - PATTERN ".git" EXCLUDE PATTERN "build" EXCLUDE PATTERN "cmake" EXCLUDE) - -# -------------------------------------------------------------------------------- - -if(WITH_PRINTER) - set(PRINT_SRC - openvdb/cmd/openvdb_print/main.cc - ) - - add_executable(vdb_print ${PRINT_SRC}) - target_link_libraries(vdb_print openvdb) - install(TARGETS vdb_print RUNTIME DESTINATION bin) -endif() - -if(WITH_RENDER) - set(RENDER_SRC - openvdb/cmd/openvdb_render/main.cc - ) - - add_executable(vdb_render ${RENDER_SRC}) - target_link_libraries(vdb_render openvdb) - install(TARGETS vdb_render RUNTIME DESTINATION bin) -endif() - -# todo -if(WITH_VIEWER) - set(VIEWER_SRC - openvdb/viewer/Camera.cc - openvdb/viewer/ClipBox.cc - openvdb/viewer/Font.cc - openvdb/viewer/RenderModules.cc - openvdb/viewer/Viewer.cc - - openvdb/viewer/Camera.h - openvdb/viewer/ClipBox.h - openvdb/viewer/Font.h - openvdb/viewer/RenderModules.h - openvdb/viewer/Viewer.h - openvdb/cmd/openvdb_viewer/main.cc - ) - - include_directories(${GLFW_INCLUDE_DIRS}) - link_directories(${GLFW_LIBRARY_DIRS}) - - add_executable(vdb_viewer ${VIEWER_SRC}) - target_link_libraries(vdb_viewer openvdb) - install(TARGETS vdb_viewer RUNTIME DESTINATION bin) -endif() - -# todo -if(WITH_PYTHON) -# add_library(pyopenvdb SHARED ) -endif() - -set(UNITTEST_SRC - openvdb/unittest/main.cc - openvdb/unittest/TestBBox.cc - openvdb/unittest/TestConjGradient.cc - openvdb/unittest/TestCoord.cc - openvdb/unittest/TestCpt.cc - openvdb/unittest/TestCurl.cc - openvdb/unittest/TestDense.cc - openvdb/unittest/TestDenseSparseTools.cc - openvdb/unittest/TestDiagnostics.cc - openvdb/unittest/TestDivergence.cc - openvdb/unittest/TestDoubleMetadata.cc - openvdb/unittest/TestExceptions.cc - openvdb/unittest/TestFile.cc - openvdb/unittest/TestFloatMetadata.cc - openvdb/unittest/TestGradient.cc - openvdb/unittest/TestGrid.cc - openvdb/unittest/TestGridBbox.cc - openvdb/unittest/TestGridDescriptor.cc - openvdb/unittest/TestGridIO.cc - openvdb/unittest/TestGridTransformer.cc - openvdb/unittest/TestInit.cc - openvdb/unittest/TestInt32Metadata.cc - openvdb/unittest/TestInt64Metadata.cc - openvdb/unittest/TestInternalOrigin.cc - openvdb/unittest/TestLaplacian.cc - openvdb/unittest/TestLeaf.cc - openvdb/unittest/TestLeafBool.cc - openvdb/unittest/TestLeafIO.cc - openvdb/unittest/TestLeafOrigin.cc - openvdb/unittest/TestLevelSetRayIntersector.cc - openvdb/unittest/TestLevelSetUtil.cc - openvdb/unittest/TestLinearInterp.cc - openvdb/unittest/TestMaps.cc - openvdb/unittest/TestMat4Metadata.cc - openvdb/unittest/TestMath.cc - openvdb/unittest/TestMeanCurvature.cc - openvdb/unittest/TestMeshToVolume.cc - openvdb/unittest/TestMetadata.cc - openvdb/unittest/TestMetadataIO.cc - openvdb/unittest/TestMetaMap.cc - openvdb/unittest/TestName.cc - openvdb/unittest/TestNodeIterator.cc - openvdb/unittest/TestNodeMask.cc - openvdb/unittest/TestParticlesToLevelSet.cc - openvdb/unittest/TestPointIndexGrid.cc - openvdb/unittest/TestPointPartitioner.cc - openvdb/unittest/TestPoissonSolver.cc - openvdb/unittest/TestPrePostAPI.cc - openvdb/unittest/TestQuadraticInterp.cc - openvdb/unittest/TestQuantizedUnitVec.cc - openvdb/unittest/TestQuat.cc - openvdb/unittest/TestRay.cc - openvdb/unittest/TestStats.cc - openvdb/unittest/TestStream.cc - openvdb/unittest/TestStringMetadata.cc - openvdb/unittest/TestTools.cc - openvdb/unittest/TestTransform.cc - openvdb/unittest/TestTree.cc - openvdb/unittest/TestTreeCombine.cc - openvdb/unittest/TestTreeGetSetValues.cc - openvdb/unittest/TestTreeIterators.cc - openvdb/unittest/TestTreeVisitor.cc - openvdb/unittest/TestUtil.cc - openvdb/unittest/TestValueAccessor.cc - openvdb/unittest/TestVec2Metadata.cc - openvdb/unittest/TestVec3Metadata.cc - openvdb/unittest/TestVolumeRayIntersector.cc - openvdb/unittest/TestVolumeToMesh.cc -) - -# todo -if(WITH_UNITTEST) - add_executable(test ${UNITTEST_SRC} ${HEADER_FILES}) - target_link_libraries(test openvdb ${CPPUNIT_LIBRARIES}) -endif() diff --git a/build_files/build_environment/patches/distutildebugflags.diff b/build_files/build_environment/patches/distutildebugflags.diff deleted file mode 100644 index 3d6b688bc53..00000000000 --- a/build_files/build_environment/patches/distutildebugflags.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- _msvccompiler.py.orig 2017-01-17 00:57:48 -0700 -+++ _msvccompiler.py 2017-05-20 09:47:26 -0600 -@@ -237,7 +237,7 @@ - ldflags.extend(('/nodefaultlib:libucrt.lib', 'ucrt.lib')) - - ldflags_debug = [ -- '/nologo', '/INCREMENTAL:NO', '/LTCG', '/DEBUG:FULL' -+ '/nologo', '/INCREMENTAL:NO', '/LTCG' - ] - - self.ldflags_exe = [*ldflags, '/MANIFEST:EMBED,ID=1'] diff --git a/build_files/build_environment/patches/osl_simd_oiio.diff b/build_files/build_environment/patches/osl_simd_oiio.diff deleted file mode 100644 index 5062a597167..00000000000 --- a/build_files/build_environment/patches/osl_simd_oiio.diff +++ /dev/null @@ -1,14 +0,0 @@ ---- CMakeLists.txt 2016-10-31 16:48:19 -0600 -+++ CMakeLists.txt 2017-04-10 10:38:48 -0600 -@@ -269,6 +269,11 @@ - add_definitions ("-DOIIO_STATIC_BUILD=1") - endif () - -+set (OIIO_NOSIMD OFF CACHE BOOL "Disable simd support in oiio") -+if (OIIO_NOSIMD) -+ add_definitions ("-DOIIO_NO_SSE=1") -+endif () -+ - if (OSL_NO_DEFAULT_TEXTURESYSTEM) - add_definitions ("-DOSL_NO_DEFAULT_TEXTURESYSTEM=1") - endif () diff --git a/build_files/build_environment/patches/pyshell.diff b/build_files/build_environment/patches/pyshell.diff deleted file mode 100644 index 7ccffe4c040..00000000000 --- a/build_files/build_environment/patches/pyshell.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- pyshellext.cpp.orig 2017-01-17 00:57:53 -0700 -+++ pyshellext.cpp 2017-05-20 15:21:51 -0600 -@@ -13,6 +13,9 @@ - #include <strsafe.h> - - #include "pyshellext_h.h" -+#if _MSC_VER < 1900 -+#include "pyshellext_i.c" -+#endif - - #define DDWM_UPDATEWINDOW (WM_USER+3) - diff --git a/build_files/build_environment/patches/python.diff b/build_files/build_environment/patches/python.diff deleted file mode 100644 index 9e7eccfafff..00000000000 --- a/build_files/build_environment/patches/python.diff +++ /dev/null @@ -1,82 +0,0 @@ ---- Include/Python.h 2017-07-07 21:33:27 -0600 -+++ Include/Python.h 2017-09-19 10:36:10 -0600 -@@ -2,6 +2,10 @@ - #define Py_PYTHON_H - /* Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { */ - -+#if _MSC_VER < 1900 -+#define inline __inline -+#endif -+ - /* Include nearly all Python header files */ - - #include "patchlevel.h" ---- Include/pydtrace.h 2017-07-07 21:33:27 -0600 -+++ Include/pydtrace.h 2017-09-19 10:32:31 -0600 -@@ -2,6 +2,11 @@ - - #ifndef Py_DTRACE_H - #define Py_DTRACE_H -+ -+#if _MSC_VER < 1900 -+#define inline __inline -+#endif -+ - #ifdef __cplusplus - extern "C" { - #endif - ---- Modules/_blake2/impl/blake2.h 2017-07-07 21:33:27 -0600 -+++ Modules/_blake2/impl/blake2.h 2017-09-19 10:22:41 -0600 -@@ -19,6 +19,10 @@ - #include <stddef.h> - #include <stdint.h> - -+#if _MSC_VER < 1900 -+#define inline __inline -+#endif -+ - #ifdef BLAKE2_NO_INLINE - #define BLAKE2_LOCAL_INLINE(type) static type - #endif - ---- pcbuild/build.bat 2016-05-21 09:53:55 -0600 -+++ pcbuild/build.bat 2016-05-21 09:56:16 -0600 -@@ -59,6 +59,7 @@ - if "%~1"=="-h" goto Usage - if "%~1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts - if "%~1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts -+if "%~1"=="-k" (set vs_toolset=%2) & shift & shift & goto CheckOpts - if "%~1"=="-r" (set target=Rebuild) & shift & goto CheckOpts - if "%~1"=="-t" (set target=%2) & shift & shift & goto CheckOpts - if "%~1"=="-d" (set conf=Debug) & shift & goto CheckOpts -@@ -120,7 +120,7 @@ - - :Kill - echo on --%MSBUILD% "%dir%\pythoncore.vcxproj" /t:KillPython %verbose%^ -+%MSBUILD% "%dir%\pythoncore.vcxproj" /t:KillPython %verbose% /p:PlatformToolset=%vs_toolset%^ - /p:Configuration=%conf% /p:Platform=%platf%^ - /p:KillPython=true - -@@ -130,7 +130,7 @@ - rem batch is, shall we say, "lackluster" - echo on - %MSBUILD% "%dir%pcbuild.proj" /t:%target% %parallel% %verbose%^ -- /p:Configuration=%conf% /p:Platform=%platf%^ -+ /p:Configuration=%conf% /p:Platform=%platf% /p:PlatformToolset=%vs_toolset%^ - /p:IncludeExternals=%IncludeExternals%^ - /p:IncludeSSL=%IncludeSSL% /p:IncludeTkinter=%IncludeTkinter%^ - /p:UseTestMarker=%UseTestMarker%^ - ---- pcbuild/sqlite3.vcxproj 2015-12-06 18:39:10 -0700 -+++ pcbuild/sqlite3.vcxproj 2016-11-02 09:25:56 -0600 -@@ -43,7 +43,7 @@ - <Import Project="python.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Label="Configuration"> -- <ConfigurationType>DynamicLibrary</ConfigurationType> -+ <ConfigurationType>StaticLibrary</ConfigurationType> - <CharacterSet>NotSet</CharacterSet> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> diff --git a/build_files/build_environment/patches/python_apple.diff b/build_files/build_environment/patches/python_apple.diff deleted file mode 100644 index 34a7906ed6c..00000000000 --- a/build_files/build_environment/patches/python_apple.diff +++ /dev/null @@ -1,25 +0,0 @@ ---- pyconfig.h.in 2017-09-19 14:41:01.000000000 +0300 -+++ pyconfig.h.in 2017-09-19 14:43:18.000000000 +0300 -@@ -119,12 +119,6 @@ - /* Define to 1 if you have the `clock' function. */ - #undef HAVE_CLOCK - --/* Define to 1 if you have the `clock_getres' function. */ --#undef HAVE_CLOCK_GETRES -- --/* Define to 1 if you have the `clock_gettime' function. */ --#undef HAVE_CLOCK_GETTIME -- - /* Define to 1 if you have the `clock_settime' function. */ - #undef HAVE_CLOCK_SETTIME - -@@ -369,9 +363,6 @@ - /* Define this if you have flockfile(), getc_unlocked(), and funlockfile() */ - #undef HAVE_GETC_UNLOCKED - --/* Define to 1 if you have the `getentropy' function. */ --#undef HAVE_GETENTROPY -- - /* Define to 1 if you have the `getgrouplist' function. */ - #undef HAVE_GETGROUPLIST - diff --git a/build_files/build_environment/patches/python_runtime_vc2013.diff b/build_files/build_environment/patches/python_runtime_vc2013.diff deleted file mode 100644 index 186d2b36c07..00000000000 --- a/build_files/build_environment/patches/python_runtime_vc2013.diff +++ /dev/null @@ -1,29 +0,0 @@ ---- _msvccompiler.py.orig 2017-05-20 19:31:45 -0600 -+++ _msvccompiler.py 2017-06-10 10:05:38 -0600 -@@ -222,9 +222,9 @@ - # use /MT[d] to build statically, then switch from libucrt[d].lib to ucrt[d].lib - # later to dynamically link to ucrtbase but not vcruntime. - self.compile_options = [ -- '/nologo', '/Ox', '/W3', '/GL', '/DNDEBUG' -+ '/nologo', '/Ox', '/W3', '/GL', '/DNDEBUG' , '/MD' - ] -- self.compile_options.append('/MD' if self._vcruntime_redist else '/MT') -+ #self.compile_options.append('/MD' if self._vcruntime_redist else '/MT') - - self.compile_options_debug = [ - '/nologo', '/Od', '/MDd', '/Zi', '/W3', '/D_DEBUG' -@@ -233,11 +233,11 @@ - ldflags = [ - '/nologo', '/INCREMENTAL:NO', '/LTCG' - ] -- if not self._vcruntime_redist: -- ldflags.extend(('/nodefaultlib:libucrt.lib', 'ucrt.lib')) -+ #if not self._vcruntime_redist: -+ # ldflags.extend(('/nodefaultlib:libucrt.lib', 'ucrt.lib')) - - ldflags_debug = [ -- '/nologo', '/INCREMENTAL:NO', '/LTCG', '/DEBUG:FULL' -+ '/nologo', '/INCREMENTAL:NO', '/LTCG' - ] - - self.ldflags_exe = [*ldflags, '/MANIFEST:EMBED,ID=1'] diff --git a/build_files/buildbot/config/blender_linux.cmake b/build_files/buildbot/config/blender_linux.cmake index 9625fabec30..0500bfa7f99 100644 --- a/build_files/buildbot/config/blender_linux.cmake +++ b/build_files/buildbot/config/blender_linux.cmake @@ -5,7 +5,15 @@ include("${CMAKE_CURRENT_LIST_DIR}/../../cmake/config/blender_full.cmake") # Detect which libc we'll be linking against. # Some of the paths will depend on this -if(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so") +if(EXISTS "/lib/x86_64-linux-gnu/libc-2.24.so") + message(STATUS "Building in GLibc-2.24 environment") + set(GLIBC "2.24") + set(MULTILIB "/x86_64-linux-gnu") +elseif(EXISTS "/lib/i386-linux-gnu//libc-2.24.so") + message(STATUS "Building in GLibc-2.24 environment") + set(GLIBC "2.24") + set(MULTILIB "/i386-linux-gnu") +elseif(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so") message(STATUS "Building in GLibc-2.19 environment") set(GLIBC "2.19") set(MULTILIB "/x86_64-linux-gnu") @@ -40,7 +48,10 @@ set(WITH_PYTHON_INSTALL_NUMPY ON CACHE BOOL "" FORCE) set(WITH_PYTHON_INSTALL_REQUESTS ON CACHE BOOL "" FORCE) # ######## Release environment specific settings ######## -# All the hardcoded libraru paths and such + +if (NOT ${GLIBC} STREQUAL "2.24") + +# All the hardcoded library paths and such # LLVM libraries set(LLVM_VERSION "3.4" CACHE STRING "" FORCE) @@ -147,5 +158,20 @@ set(BLOSC_LIBRARY CACHE BOOL "" FORCE ) +else() + +# Set path to precompiled libraries. +set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}) +string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME) +set(LIBDIR "/opt/blender-deps/${LIBDIR_NAME}") + +# TODO(sergey): Remove once Python is oficially bumped to 3.7. +set(PYTHON_VERSION 3.7) + +# Ensure specific configuration of various libraries. +set(Boost_USE_STATIC_LIBS ON CACHE BOOL "" FORCE) + +endif() + # Additional linking libraries set(CMAKE_EXE_LINKER_FLAGS "-lrt -static-libstdc++" CACHE STRING "" FORCE) diff --git a/build_files/buildbot/slave_compile.py b/build_files/buildbot/slave_compile.py index fc430971c19..ce4d0c8de66 100644 --- a/build_files/buildbot/slave_compile.py +++ b/build_files/buildbot/slave_compile.py @@ -101,7 +101,9 @@ if 'cmake' in builder: elif builder.startswith('linux'): tokens = builder.split("_") glibc = tokens[1] - if glibc == 'glibc219': + if glibc == 'glibc224': + deb_name = "stretch" + elif glibc == 'glibc219': deb_name = "jessie" elif glibc == 'glibc211': deb_name = "squeeze" @@ -113,8 +115,9 @@ if 'cmake' in builder: bits = 32 chroot_name = 'buildbot_' + deb_name + '_i686' targets = ['blender'] - cmake_extra_options.extend(["-DCMAKE_C_COMPILER=/usr/bin/gcc-7", - "-DCMAKE_CXX_COMPILER=/usr/bin/g++-7"]) + if deb_name != "stretch": + cmake_extra_options.extend(["-DCMAKE_C_COMPILER=/usr/bin/gcc-7", + "-DCMAKE_CXX_COMPILER=/usr/bin/g++-7"]) cmake_options.append("-C" + os.path.join(blender_dir, cmake_config_file)) diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake index 6313deb20c9..fc9e09b73fd 100644 --- a/build_files/cmake/platform/platform_unix.cmake +++ b/build_files/cmake/platform/platform_unix.cmake @@ -24,9 +24,13 @@ # Libraries configuration for any *nix system including Linux and Unix. # Detect precompiled library directory -set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}) -string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME) -set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME}) +if(NOT DEFINED LIBDIR) + set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}) + string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME) + set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME}) +else() + message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}") +endif() if(EXISTS ${LIBDIR}) file(GLOB LIB_SUBDIRS ${LIBDIR}/*) diff --git a/intern/cycles/kernel/geom/geom_triangle_intersect.h b/intern/cycles/kernel/geom/geom_triangle_intersect.h index f8c671fed14..aa6b102a0f3 100644 --- a/intern/cycles/kernel/geom/geom_triangle_intersect.h +++ b/intern/cycles/kernel/geom/geom_triangle_intersect.h @@ -70,6 +70,8 @@ ccl_device_inline bool triangle_intersect(KernelGlobals *kg, return false; } +#ifdef __KERNEL_AVX2__ + #define cross256(A,B, C,D) _mm256_fmsub_ps(A,B, _mm256_mul_ps(C,D)) #if defined(__KERNEL_CUDA__) && __CUDA_ARCH__ < 300 ccl_device_inline @@ -542,6 +544,8 @@ int triangle_intersect8(KernelGlobals *kg, return result; } +#endif /* __KERNEL_AVX2__ */ + /* Special ray intersection routines for subsurface scattering. In that case we * only want to intersect with primitives in the same object, and if case of * multiple hits we pick a single random primitive as the intersection point. diff --git a/intern/cycles/render/osl.cpp b/intern/cycles/render/osl.cpp index 2bf69c869b9..496e9d9491a 100644 --- a/intern/cycles/render/osl.cpp +++ b/intern/cycles/render/osl.cpp @@ -28,7 +28,6 @@ #include "kernel/osl/osl_globals.h" #include "kernel/osl/osl_services.h" #include "kernel/osl/osl_shader.h" -#include "OSL/llvm_util.h" #include "util/util_foreach.h" #include "util/util_logging.h" diff --git a/intern/cycles/render/osl.h b/intern/cycles/render/osl.h index 09d1a54d0b9..966fc1965d7 100644 --- a/intern/cycles/render/osl.h +++ b/intern/cycles/render/osl.h @@ -26,6 +26,7 @@ #include "render/shader.h" #ifdef WITH_OSL +#include <OSL/llvm_util.h> #include <OSL/oslcomp.h> #include <OSL/oslexec.h> #include <OSL/oslquery.h> |