|
| 1 | +diff --git a/cmake/defaults/Packages.cmake b/cmake/defaults/Packages.cmake |
| 2 | +index 1b69cad..9494278 100644 |
| 3 | +--- a/cmake/defaults/Packages.cmake |
| 4 | ++++ b/cmake/defaults/Packages.cmake |
| 5 | +@@ -190,7 +190,8 @@ if (PXR_BUILD_IMAGING) |
| 6 | + # --OpenImageIO |
| 7 | + if (PXR_BUILD_OPENIMAGEIO_PLUGIN) |
| 8 | + set(REQUIRES_Imath TRUE) |
| 9 | +- find_package(OpenImageIO REQUIRED) |
| 10 | ++ find_package(OpenImageIO CONFIG REQUIRED) |
| 11 | ++ set(OIIO_LIBRARIES OpenImageIO::OpenImageIO) |
| 12 | + add_definitions(-DPXR_OIIO_PLUGIN_ENABLED) |
| 13 | + if (OIIO_idiff_BINARY) |
| 14 | + set(IMAGE_DIFF_TOOL ${OIIO_idiff_BINARY} CACHE STRING "Uses idiff for image diffing") |
| 15 | +@@ -227,6 +228,7 @@ if (PXR_BUILD_IMAGING) |
| 16 | + find_package(Vulkan REQUIRED) |
| 17 | + list(APPEND VULKAN_LIBS Vulkan::Vulkan) |
| 18 | + |
| 19 | ++ if(0) |
| 20 | + # Find the extra vulkan libraries we need |
| 21 | + set(EXTRA_VULKAN_LIBS shaderc_combined) |
| 22 | + if (WIN32 AND CMAKE_BUILD_TYPE STREQUAL "Debug") |
| 23 | +@@ -236,6 +238,7 @@ if (PXR_BUILD_IMAGING) |
| 24 | + find_library("${EXTRA_LIBRARY}_PATH" NAMES "${EXTRA_LIBRARY}" PATHS $ENV{VULKAN_SDK}/lib) |
| 25 | + list(APPEND VULKAN_LIBS "${${EXTRA_LIBRARY}_PATH}") |
| 26 | + endforeach() |
| 27 | ++ endif() |
| 28 | + |
| 29 | + # Find the OS specific libs we need |
| 30 | + if (UNIX AND NOT APPLE) |
| 31 | +@@ -249,10 +252,20 @@ if (PXR_BUILD_IMAGING) |
| 32 | + else() |
| 33 | + message(FATAL_ERROR "VULKAN_SDK not valid") |
| 34 | + endif() |
| 35 | ++ find_package(unofficial-shaderc CONFIG REQUIRED) |
| 36 | ++ find_package(unofficial-spirv-reflect CONFIG REQUIRED) |
| 37 | ++ find_package(VulkanMemoryAllocator CONFIG REQUIRED) |
| 38 | ++ list(APPEND VULKAN_LIBS unofficial::shaderc::shaderc) |
| 39 | ++ list(APPEND VULKAN_LIBS unofficial::spirv-reflect) |
| 40 | ++ list(APPEND VULKAN_LIBS GPUOpen::VulkanMemoryAllocator) |
| 41 | + endif() |
| 42 | + # --Opensubdiv |
| 43 | +- set(OPENSUBDIV_USE_GPU ${PXR_BUILD_GPU_SUPPORT}) |
| 44 | +- find_package(OpenSubdiv 3 REQUIRED) |
| 45 | ++ find_package(OpenSubdiv 3 CONFIG REQUIRED) |
| 46 | ++ set(OPENSUBDIV_LIBRARIES OpenSubdiv::osdCPU_static) |
| 47 | ++ set(OPENSUBDIV_OSDCPU_LIBRARY OpenSubdiv::osdCPU_static) # For compatibility |
| 48 | ++ if(PXR_ENABLE_GL_SUPPORT) |
| 49 | ++ list(APPEND OPENSUBDIV_LIBRARIES OpenSubdiv::osdGPU_static) |
| 50 | ++ endif() |
| 51 | + # --Ptex |
| 52 | + if (PXR_ENABLE_PTEX_SUPPORT) |
| 53 | + find_package(PTex REQUIRED) |
| 54 | +diff --git a/pxr/imaging/hgiVulkan/CMakeLists.txt b/pxr/imaging/hgiVulkan/CMakeLists.txt |
| 55 | +index 97e4228..3eb83be 100644 |
| 56 | +--- a/pxr/imaging/hgiVulkan/CMakeLists.txt |
| 57 | ++++ b/pxr/imaging/hgiVulkan/CMakeLists.txt |
| 58 | +@@ -46,8 +46,6 @@ pxr_library(hgiVulkan |
| 59 | + api.h |
| 60 | + vulkan.h |
| 61 | + |
| 62 | +- PRIVATE_CLASSES |
| 63 | +- spirv_reflect |
| 64 | + |
| 65 | + RESOURCE_FILES |
| 66 | + plugInfo.json |
| 67 | +diff --git a/pxr/imaging/plugin/hioOiio/CMakeLists.txt b/pxr/imaging/plugin/hioOiio/CMakeLists.txt |
| 68 | +index 0a055b7..de4b73a 100644 |
| 69 | +--- a/pxr/imaging/plugin/hioOiio/CMakeLists.txt |
| 70 | ++++ b/pxr/imaging/plugin/hioOiio/CMakeLists.txt |
| 71 | +@@ -7,6 +7,7 @@ if (NOT ${PXR_BUILD_GPU_SUPPORT}) |
| 72 | + return() |
| 73 | + endif() |
| 74 | + |
| 75 | ++if(0) # No need because OpenImageIO::OpenImageIO already declare its transitive dependencies correctly |
| 76 | + # Use the import targets set by Imath's package config |
| 77 | + if (Imath_FOUND) |
| 78 | + set(__OIIO_IMATH_LIBS "Imath::Imath") |
| 79 | +@@ -14,6 +15,7 @@ else() |
| 80 | + set(__OIIO_IMATH_INCLUDE ${OPENEXR_INCLUDE_DIRS}) |
| 81 | + set(__OIIO_IMATH_LIBS ${OPENEXR_LIBRARIES}) |
| 82 | + endif() |
| 83 | ++endif() |
| 84 | + |
| 85 | + pxr_plugin(hioOiio |
| 86 | + LIBRARIES |
| 87 | +diff --git a/pxr/pxrConfig.cmake.in b/pxr/pxrConfig.cmake.in |
| 88 | +index 041cd8c..2f89d69 100644 |
| 89 | +--- a/pxr/pxrConfig.cmake.in |
| 90 | ++++ b/pxr/pxrConfig.cmake.in |
| 91 | +@@ -20,6 +20,27 @@ include(CMakeFindDependencyMacro) |
| 92 | + |
| 93 | + find_dependency(TBB CONFIG) |
| 94 | + |
| 95 | ++if(@PXR_BUILD_IMAGING@) |
| 96 | ++ find_dependency(OpenSubdiv 3 CONFIG) |
| 97 | ++ if(@PXR_BUILD_OPENIMAGEIO_PLUGIN@) |
| 98 | ++ find_dependency(OpenImageIO CONFIG) |
| 99 | ++ endif() |
| 100 | ++ if(@PXR_ENABLE_GL_SUPPORT@) |
| 101 | ++ find_dependency(OpenGL REQUIRED) |
| 102 | ++ endif() |
| 103 | ++ if(@PXR_ENABLE_VULKAN_SUPPORT@) |
| 104 | ++ if (NOT DEFINED Vulkan_DIR) |
| 105 | ++ if (NOT [[@Vulkan_DIR@]] STREQUAL "") |
| 106 | ++ set(Vulkan_DIR [[@Vulkan_DIR@]]) |
| 107 | ++ endif() |
| 108 | ++ endif() |
| 109 | ++ find_dependency(Vulkan REQUIRED) |
| 110 | ++ find_dependency(unofficial-shaderc CONFIG) |
| 111 | ++ find_dependency(unofficial-spirv-reflect CONFIG) |
| 112 | ++ find_dependency(VulkanMemoryAllocator CONFIG) |
| 113 | ++ endif() |
| 114 | ++endif() |
| 115 | ++ |
| 116 | + # If Python support was enabled for this USD build, find the import |
| 117 | + # targets by invoking the appropriate FindPython module. Use the same |
| 118 | + # LIBRARY and INCLUDE_DIR settings from the original build if they |
| 119 | +@@ -75,17 +96,17 @@ if(@Imath_FOUND@) |
| 120 | + set(Imath_DIR [[@Imath_DIR@]]) |
| 121 | + endif() |
| 122 | + endif() |
| 123 | +- find_dependency(Imath) |
| 124 | ++ find_dependency(Imath CONFIG) |
| 125 | + endif() |
| 126 | + |
| 127 | +-include("${PXR_CMAKE_DIR}/cmake/pxrTargets.cmake") |
| 128 | ++include("${PXR_CMAKE_DIR}/pxrTargets.cmake") |
| 129 | + if (TARGET usd_ms) |
| 130 | + set(libs "usd_ms") |
| 131 | + else() |
| 132 | + set(libs "@PXR_ALL_LIBS@") |
| 133 | + endif() |
| 134 | + set(PXR_LIBRARIES "") |
| 135 | +-set(PXR_INCLUDE_DIRS "${PXR_CMAKE_DIR}/include") |
| 136 | ++set(PXR_INCLUDE_DIRS "${PXR_CMAKE_DIR}/../../include") |
| 137 | + string(REPLACE " " ";" libs "${libs}") |
| 138 | + foreach(lib ${libs}) |
| 139 | + get_target_property(location ${lib} LOCATION) |
0 commit comments