1## Copyright 2009-2021 Intel Corporation 2## SPDX-License-Identifier: Apache-2.0 3 4set(COMPONENT_NAME oidn) 5 6set(COMPONENT_PATH ${INSTALL_DIR_ABSOLUTE}) 7if (INSTALL_IN_SEPARATE_DIRECTORIES) 8 set(COMPONENT_PATH ${INSTALL_DIR_ABSOLUTE}/${COMPONENT_NAME}) 9endif() 10 11if (BUILD_OIDN_FROM_SOURCE) 12 string(REGEX REPLACE "(^[0-9]+\.[0-9]+\.[0-9]+$)" "v\\1" OIDN_BRANCH ${OIDN_VERSION}) 13 ExternalProject_Add(${COMPONENT_NAME} 14 PREFIX ${COMPONENT_NAME} 15 DOWNLOAD_DIR ${COMPONENT_NAME} 16 STAMP_DIR ${COMPONENT_NAME}/stamp 17 SOURCE_DIR ${COMPONENT_NAME}/src 18 BINARY_DIR ${COMPONENT_NAME}/build 19 LIST_SEPARATOR | # Use the alternate list separator 20 GIT_REPOSITORY "https://www.github.com/OpenImageDenoise/oidn.git" # need git to get submodules 21 GIT_TAG ${OIDN_BRANCH} 22 GIT_SHALLOW ON 23 CMAKE_ARGS 24 -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} 25 -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} 26 -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} 27 -DCMAKE_INSTALL_PREFIX:PATH=${COMPONENT_PATH} 28 -DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR} 29 -DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR} 30 -DCMAKE_INSTALL_DOCDIR=${CMAKE_INSTALL_DOCDIR} 31 -DCMAKE_INSTALL_BINDIR=${CMAKE_INSTALL_BINDIR} 32 $<$<BOOL:${DOWNLOAD_TBB}>:-DTBB_ROOT=${TBB_PATH}> 33 $<$<BOOL:${DOWNLOAD_ISPC}>:-DISPC_EXECUTABLE=${ISPC_PATH}> 34 -DCMAKE_BUILD_TYPE=${DEPENDENCIES_BUILD_TYPE} 35 -DOIDN_APPS=OFF 36 -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} 37 -DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} 38 BUILD_COMMAND ${DEFAULT_BUILD_COMMAND} 39 BUILD_ALWAYS ${ALWAYS_REBUILD} 40 ) 41 42 if (DOWNLOAD_TBB) 43 ExternalProject_Add_StepDependencies(${COMPONENT_NAME} configure tbb) 44 endif() 45 if (DOWNLOAD_ISPC) 46 ExternalProject_Add_StepDependencies(${COMPONENT_NAME} configure ispc) 47 endif() 48 49else() 50 51 if (OIDN_HASH) 52 set(OIDN_URL_HASH URL_HASH SHA256=${OIDN_HASH}) 53 endif() 54 55 if (APPLE) 56 set(OIDN_OSSUFFIX "x86_64.macos.tar.gz") 57 elseif (WIN32) 58 set(OIDN_OSSUFFIX "x64.vc14.windows.zip") 59 else() 60 set(OIDN_OSSUFFIX "x86_64.linux.tar.gz") 61 endif() 62 set(OIDN_URL "https://github.com/OpenImageDenoise/oidn/releases/download/v${OIDN_VERSION}/oidn-${OIDN_VERSION}.${OIDN_OSSUFFIX}") 63 64 ExternalProject_Add(${COMPONENT_NAME} 65 PREFIX ${COMPONENT_NAME} 66 DOWNLOAD_DIR ${COMPONENT_NAME} 67 STAMP_DIR ${COMPONENT_NAME}/stamp 68 SOURCE_DIR ${COMPONENT_NAME}/src 69 BINARY_DIR ${COMPONENT_NAME} 70 URL ${OIDN_URL} 71 ${OIDN_URL_HASH} 72 CONFIGURE_COMMAND "" 73 BUILD_COMMAND "" 74 INSTALL_COMMAND "${CMAKE_COMMAND}" -E copy_directory 75 <SOURCE_DIR>/ 76 ${COMPONENT_PATH} 77 BUILD_ALWAYS OFF 78 ) 79endif() 80 81list(APPEND CMAKE_PREFIX_PATH ${COMPONENT_PATH}) 82string(REPLACE ";" "|" CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH}") 83 84