git: 78447ad699f4 - main - databases/tiledb: Fix configure with CMake >= 3.27
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 08 Nov 2023 07:52:17 UTC
The branch main has been updated by jhale:
URL: https://cgit.FreeBSD.org/ports/commit/?id=78447ad699f46b28cb98d0564563b8b29b0d40db
commit 78447ad699f46b28cb98d0564563b8b29b0d40db
Author: Jason E. Hale <jhale@FreeBSD.org>
AuthorDate: 2023-11-08 07:40:41 +0000
Commit: Jason E. Hale <jhale@FreeBSD.org>
CommitDate: 2023-11-08 07:52:12 +0000
databases/tiledb: Fix configure with CMake >= 3.27
After [1], CMake trusts OPENSSL_ROOT_DIR implicitly, so if isn't set
right, OpenSSL may not be found.
This project uses OPENSSL_PATHS to set OPENSSL_ROOT_DIR, so CMake tries
to find OpenSSL in TILEDB_EP_INSTALL_PREFIX which is problably not where
we want to look. Pass ${OPENSSLBASE} to set OPENSSL_PATHS so we are
looking in the right location.
[1] https://github.com/Kitware/CMake/commit/5cc8a69867ac42333a656607d90059a6db823abd
PR: 274225
Approved by: portmgr (blanket build fix)
---
databases/tiledb/Makefile | 1 +
.../files/patch-cmake_Modules_FindOpenSSL__EP.cmake | 15 +++++++++++++++
2 files changed, 16 insertions(+)
diff --git a/databases/tiledb/Makefile b/databases/tiledb/Makefile
index e2afe37ea635..3be5606a81d6 100644
--- a/databases/tiledb/Makefile
+++ b/databases/tiledb/Makefile
@@ -31,6 +31,7 @@ CFLAGS_armv6+= -Wno-c++11-narrowing
CFLAGS_armv7+= -Wno-c++11-narrowing
CFLAGS_i386+= -Wno-c++11-narrowing
CMAKE_ARGS= -DCATCH_INCLUDE_DIR=${LOCALBASE}/include/catch2 \
+ -DFREEBSD_OPENSSLBASE=${OPENSSLBASE} \
-Dlibmagic_DICTIONARY=/usr/share/misc/magic.mgc
CMAKE_OFF= TILEDB_ABSEIL \
TILEDB_ALLOW_REGEX_CHAR_PATH \
diff --git a/databases/tiledb/files/patch-cmake_Modules_FindOpenSSL__EP.cmake b/databases/tiledb/files/patch-cmake_Modules_FindOpenSSL__EP.cmake
new file mode 100644
index 000000000000..924f7a6ea2c5
--- /dev/null
+++ b/databases/tiledb/files/patch-cmake_Modules_FindOpenSSL__EP.cmake
@@ -0,0 +1,15 @@
+Fix search for OpenSSL with CMake >= 3.27. This port uses OPENSSL_PATHS to set
+OPENSSL_ROOT_DIR, so CMake tries to find OpenSSL in TILEDB_EP_INSTALL_PREFIX
+which is problably not where we want to look.
+
+--- cmake/Modules/FindOpenSSL_EP.cmake.orig 2023-10-25 06:36:39 UTC
++++ cmake/Modules/FindOpenSSL_EP.cmake
+@@ -41,7 +41,7 @@ endif()
+ endif()
+
+ # Search the path set during the superbuild for the EP.
+-set(OPENSSL_PATHS ${TILEDB_EP_INSTALL_PREFIX})
++set(OPENSSL_PATHS ${FREEBSD_OPENSSLBASE})
+
+ # Add /usr/local/opt, as Homebrew sometimes installs it there.
+ set (HOMEBREW_BASE "/usr/local/opt/openssl")