diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 43b9ba8913..9e88026ac7 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -242,6 +242,7 @@ if(WITH_ROCKSDB) # find it's zstd dependency on Windows. # Only do it on Windows, otherwise it might create problems as # findzstd and zstd-config target names do not match. + # https://github.com/facebook/rocksdb/pull/13975 if(WIN32) set(TEMP CMAKE_FIND_PACKAGE_PREFER_CONFIG) set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE) diff --git a/cmake/IfcOpenShellConfig.cmake.in b/cmake/IfcOpenShellConfig.cmake.in index 414066668d..95df6180f9 100644 --- a/cmake/IfcOpenShellConfig.cmake.in +++ b/cmake/IfcOpenShellConfig.cmake.in @@ -19,7 +19,20 @@ find_dependency(Eigen3 CONFIG) if(IFCOPENSHELL_WITH_ROCKSDB) find_dependency(zstd CONFIG) + + # Temporaily mess with CMAKE_FIND_PACKAGE_PREFER_CONFIG to help RocksDB + # find it's zstd dependency on Windows. + # Only do it on Windows, otherwise it might create problems as + # findzstd and zstd-config target names do not match. + # https://github.com/facebook/rocksdb/pull/13975 + if(WIN32) + set(TEMP CMAKE_FIND_PACKAGE_PREFER_CONFIG) + set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE) + endif() find_dependency(RocksDB CONFIG) + if(WIN32) + set(CMAKE_FIND_PACKAGE_PREFER_CONFIG ${TEMP}) + endif() endif() if(IFCOPENSHELL_IFCXML)