diff options
author | Ray Molenkamp <github@lazydodo.com> | 2021-02-24 17:13:37 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2021-02-24 17:13:37 +0300 |
commit | 4fb0c83c1c8529b61d38d8a409caf58d05a53bd9 (patch) | |
tree | 18ce99c74a8305a63f93b4ef57a5648818d3352c /build_files/cmake/platform | |
parent | 5be72125bf4dfddf5dfe720caa12b3163f540faf (diff) |
Cmake/deps: Update OSL to 1.11.10.0
This bumps OSL to 1.11.10.0. OSL Has a new build time
dependency: Clang, and more importantly it expects
clang and llvm to share a library folder, which it
previously for us did not.
This patch changes:
-OSL Update to 1.11.10.0
-refactor the llvm/clang/clang-tools-extra builds into the llvm
build using the llvm-project tarball for building that has all
of the subprojects in it.
-update ispc/openmp builds since clang no longer its own dependency
and they have to depend on the llvm build now.
-Update the windows builder to use the 64 bit host tools since it
ran out of ram linking clang
-Since OSL now needs clang to link successfully a findclang.cmake
has been provided for linux/OSX
Differential Revision: https://developer.blender.org/D10212
Reviewed By: brecht, sebbas, sybren
Diffstat (limited to 'build_files/cmake/platform')
-rw-r--r-- | build_files/cmake/platform/platform_apple.cmake | 7 | ||||
-rw-r--r-- | build_files/cmake/platform/platform_unix.cmake | 11 | ||||
-rw-r--r-- | build_files/cmake/platform/platform_win32.cmake | 4 |
3 files changed, 21 insertions, 1 deletions
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake index e7b0097a137..31302bf1100 100644 --- a/build_files/cmake/platform/platform_apple.cmake +++ b/build_files/cmake/platform/platform_apple.cmake @@ -333,6 +333,13 @@ if(WITH_LLVM) if(NOT LLVM_FOUND) message(FATAL_ERROR "LLVM not found.") endif() + if(WITH_CLANG) + find_package(Clang) + if(NOT CLANG_FOUND) + message(FATAL_ERROR "Clang not found.") + endif() + endif() + endif() if(WITH_CYCLES_OSL) diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake index 5d3f074bdda..ef73ef40ac3 100644 --- a/build_files/cmake/platform/platform_unix.cmake +++ b/build_files/cmake/platform/platform_unix.cmake @@ -70,6 +70,7 @@ if(EXISTS ${LIBDIR}) set(BOOST_LIBRARYDIR ${LIBDIR}/boost/lib) set(Boost_NO_SYSTEM_PATHS ON) set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr) + set(CLANG_ROOT_DIR ${LIBDIR}/llvm) endif() if(WITH_STATIC_LIBS) @@ -420,7 +421,9 @@ if(WITH_LLVM) endif() find_package_wrapper(LLVM) - + if(WITH_CLANG) + find_package_wrapper(Clang) + endif() # Symbol conflicts with same UTF library used by OpenCollada if(EXISTS ${LIBDIR}) if(WITH_OPENCOLLADA AND (${LLVM_VERSION} VERSION_LESS "4.0.0")) @@ -430,7 +433,13 @@ if(WITH_LLVM) if(NOT LLVM_FOUND) set(WITH_LLVM OFF) + set(WITH_CLANG OFF) message(STATUS "LLVM not found") + else() + if(NOT CLANG_FOUND) + set(WITH_CLANG OFF) + message(STATUS "Clang not found") + endif() endif() endif() diff --git a/build_files/cmake/platform/platform_win32.cmake b/build_files/cmake/platform/platform_win32.cmake index e739e8ee5a2..e1cc1219249 100644 --- a/build_files/cmake/platform/platform_win32.cmake +++ b/build_files/cmake/platform/platform_win32.cmake @@ -672,6 +672,10 @@ endif() if(WITH_CYCLES_OSL) set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation") set(OSL_SHADER_DIR ${CYCLES_OSL}/shaders) + # Shaders have moved around a bit between OSL versions, check multiple locations + if(NOT EXISTS "${OSL_SHADER_DIR}") + set(OSL_SHADER_DIR ${CYCLES_OSL}/share/OSL/shaders) + endif() find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib) find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib) find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib) |