diff options
-rw-r--r-- | CMakeLists.txt | 25 | ||||
-rw-r--r-- | build_files/cmake/macros.cmake | 3 | ||||
-rw-r--r-- | intern/cycles/cmake/external_libs.cmake | 26 | ||||
-rw-r--r-- | intern/cycles/kernel/osl/CMakeLists.txt | 4 | ||||
-rw-r--r-- | source/creator/CMakeLists.txt | 1 |
5 files changed, 28 insertions, 31 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 6bb5d8af627..c6d8d8d2a87 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -672,6 +672,31 @@ if(UNIX AND NOT APPLE) endif() endif() + if(WITH_CYCLES_OSL) + set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation") + + message(STATUS "CYCLES_OSL = ${CYCLES_OSL}") + + find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib ${CYCLES_OSL}/dist) + find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib ${CYCLES_OSL}/dist) + find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib ${CYCLES_OSL}/dist) + # WARNING! depends on correct order of OSL libs linking + list(APPEND OSL_LIBRARIES ${OSL_LIB_COMP} ${OSL_LIB_EXEC} ${OSL_LIB_QUERY}) + find_path(OSL_INCLUDES OSL/oslclosure.h PATHS ${CYCLES_OSL}/include ${CYCLES_OSL}/dist) + find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin ${CYCLES_OSL}/dist) + + if(OSL_INCLUDES AND OSL_LIBRARIES AND OSL_COMPILER) + set(OSL_FOUND TRUE) + message(STATUS "OSL includes = ${OSL_INCLUDES}") + message(STATUS "OSL library = ${OSL_LIBRARIES}") + message(STATUS "OSL compiler = ${OSL_COMPILER}") + else() + message(STATUS "OSL not found") + endif() + + include_directories(${OSL_INCLUDES} ${OSL_INCLUDES}/OSL ${OSL_INCLUDES}/../../../src/liboslexec) + endif() + # OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread -lstdc++") diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake index 62e1e83326c..97ce84142e9 100644 --- a/build_files/cmake/macros.cmake +++ b/build_files/cmake/macros.cmake @@ -367,6 +367,9 @@ macro(setup_liblinks if(WITH_MOD_CLOTH_ELTOPO) target_link_libraries(${target} ${LAPACK_LIBRARIES}) endif() + if(WITH_CYCLES_OSL) + target_link_libraries(${target} ${OSL_LIBRARIES}) + endif() if(WIN32 AND NOT UNIX) target_link_libraries(${target} ${PTHREADS_LIBRARIES}) endif() diff --git a/intern/cycles/cmake/external_libs.cmake b/intern/cycles/cmake/external_libs.cmake index 4f547a5b644..332d3d74715 100644 --- a/intern/cycles/cmake/external_libs.cmake +++ b/intern/cycles/cmake/external_libs.cmake @@ -18,32 +18,6 @@ else() endif() ########################################################################### -# OpenShadingLanguage - -if(WITH_CYCLES_OSL) - - set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation") - - message(STATUS "CYCLES_OSL = ${CYCLES_OSL}") - - find_library(OSL_LIBRARIES NAMES oslexec oslcomp oslquery PATHS ${CYCLES_OSL}/lib ${CYCLES_OSL}/dist) - find_path(OSL_INCLUDES OSL/oslclosure.h PATHS ${CYCLES_OSL}/include ${CYCLES_OSL}/dist) - find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin ${CYCLES_OSL}/dist) - - if(OSL_INCLUDES AND OSL_LIBRARIES AND OSL_COMPILER) - set(OSL_FOUND TRUE) - message(STATUS "OSL includes = ${OSL_INCLUDES}") - message(STATUS "OSL library = ${OSL_LIBRARIES}") - message(STATUS "OSL compiler = ${OSL_COMPILER}") - else() - message(STATUS "OSL not found") - endif() - - include_directories(${OSL_INCLUDES} ${OSL_INCLUDES}/OSL ${OSL_INCLUDES}/../../../src/liboslexec) - -endif() - -########################################################################### # Partio if(WITH_CYCLES_PARTIO) diff --git a/intern/cycles/kernel/osl/CMakeLists.txt b/intern/cycles/kernel/osl/CMakeLists.txt index ea675456e6d..d4ea8b12f5a 100644 --- a/intern/cycles/kernel/osl/CMakeLists.txt +++ b/intern/cycles/kernel/osl/CMakeLists.txt @@ -43,7 +43,3 @@ include_directories(${INC}) add_library(cycles_kernel_osl ${SRC} ${HEADER_SRC}) add_subdirectory(nodes) - -if(WITH_CYCLES_OSL) - target_link_libraries(cycles_kernel_osl ${OSL_LIBRARIES}) -endif() diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt index 664219f7a93..0229079c13c 100644 --- a/source/creator/CMakeLists.txt +++ b/source/creator/CMakeLists.txt @@ -790,7 +790,6 @@ if(WITH_CYCLES) cycles_kernel cycles_util cycles_subd) - if(WITH_CYCLES_OSL) list(APPEND BLENDER_LINK_LIBS cycles_kernel_osl) endif() |