Skip to content

Commit ebd5e44

Browse files
committed
fix: find OpenSSL when pkg-config & libssl-dev are present
1 parent 201d879 commit ebd5e44

File tree

3 files changed

+20
-20
lines changed

3 files changed

+20
-20
lines changed

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,13 @@ if(CMakePythonDistributions_SUPERBUILD)
241241
message(STATUS "SuperBuild - CMakeProject-build - OPENSSL_ROOT_DIR: ${OPENSSL_ROOT_DIR}")
242242
endif()
243243

244+
if(DEFINED OPENSSL_USE_STATIC_LIBS)
245+
list(APPEND _cmake_cache_args
246+
-DOPENSSL_USE_STATIC_LIBS:BOOL=${OPENSSL_USE_STATIC_LIBS}
247+
)
248+
message(STATUS "SuperBuild - CMakeProject-build - OPENSSL_USE_STATIC_LIBS: ${OPENSSL_USE_STATIC_LIBS}")
249+
endif()
250+
244251
if(DEFINED CMAKE_CXX_STANDARD)
245252
list(APPEND _cmake_cache_args
246253
-DCMAKE_CXX_STANDARD:STRING=${CMAKE_CXX_STANDARD}

pyproject.toml

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ test-groups = ["test"]
9999
test-command = "pytest {project}/tests"
100100
build-verbosity = 1
101101
build-frontend = "build[uv]"
102+
config-settings."cmake.define.RUN_CMAKE_TEST" = "ON"
102103
environment = { CMAKE_PYTHON_DIST_FORCE_NINJA_DEP = "1" }
103104
musllinux-x86_64-image = "musllinux_1_1"
104105
musllinux-i686-image = "musllinux_1_1"
@@ -112,37 +113,29 @@ select = "*-macos*"
112113
inherit.environment = "append"
113114
environment = { MACOSX_DEPLOYMENT_TARGET = "10.10" }
114115

115-
[tool.cibuildwheel.linux]
116-
before-all = "./scripts/manylinux-build-and-install-openssl.sh"
117-
118-
[tool.cibuildwheel.config-settings]
119-
"cmake.define.RUN_CMAKE_TEST" = "ON"
120-
121-
[tool.cibuildwheel.linux.config-settings]
122-
"cmake.define.OPENSSL_ROOT_DIR" = "/usr/local/ssl"
123-
"cmake.define.CMAKE_JOB_POOL_COMPILE" = "compile"
124-
"cmake.define.CMAKE_JOB_POOL_LINK" = "link"
125-
"cmake.define.CMAKE_JOB_POOLS" = "compile=4;link=1"
126-
"cmake.define.RUN_CMAKE_TEST" = "ON"
127-
128116
[[tool.cibuildwheel.overrides]]
129-
select = ["*-musllinux_*",]
117+
select = "*-*linux*"
118+
before-all = "./scripts/manylinux-build-and-install-openssl.sh"
119+
inherit.environment = "prepend"
120+
environment = { PKG_CONFIG_PATH = "/usr/local/ssl/lib/pkgconfig" }
121+
inherit.config-settings = "prepend"
130122
config-settings."cmake.define.OPENSSL_ROOT_DIR" = "/usr/local/ssl"
123+
config-settings."cmake.define.OPENSSL_USE_STATIC_LIBS" = "ON"
131124
config-settings."cmake.define.CMAKE_JOB_POOL_COMPILE" = "compile"
132125
config-settings."cmake.define.CMAKE_JOB_POOL_LINK" = "link"
133126
config-settings."cmake.define.CMAKE_JOB_POOLS" = "compile=4;link=1"
134-
config-settings."cmake.define.RUN_CMAKE_TEST" = "ON"
127+
128+
[[tool.cibuildwheel.overrides]]
129+
select = ["*-musllinux_*",]
130+
inherit.config-settings = "append"
135131
# disable some tests
136132
# - BootstrapTest fails with custom OpenSSL and probably does not make much sense for this project
137133
# - ExportImport|RunCMake.install|RunCMake.file-GET_RUNTIME_DEPENDENCIES: c.f. https://discourse.cmake.org/t/cmake-test-suite-failing-on-alpine-linux/5064
138134
config-settings."cmake.define.RUN_CMAKE_TEST_EXCLUDE" = "BootstrapTest|ExportImport|RunCMake.install|RunCMake.RuntimePath|RunCMake.file-GET_RUNTIME_DEPENDENCIES"
139135

140136
[[tool.cibuildwheel.overrides]]
141137
select = ["*linux_ppc64le", "*linux_s390x"]
142-
config-settings."cmake.define.OPENSSL_ROOT_DIR" = "/usr/local/ssl"
143-
config-settings."cmake.define.CMAKE_JOB_POOL_COMPILE" = "compile"
144-
config-settings."cmake.define.CMAKE_JOB_POOL_LINK" = "link"
145-
config-settings."cmake.define.CMAKE_JOB_POOLS" = "compile=4;link=1"
138+
inherit.config-settings = "append"
146139
# disable tests on those platforms, QEMU is taking to long for jobs to pass on GHA
147140
config-settings."cmake.define.RUN_CMAKE_TEST" = "OFF"
148141

scripts/manylinux-build-and-install-openssl.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ rm -rf ${OPENSSL_ROOT}.tar.gz
4848

4949
# Configure
5050
pushd ${OPENSSL_ROOT}
51-
./config no-shared -fPIC --prefix=/usr/local/ssl --openssldir=/usr/local/ssl > /dev/null
51+
./config no-shared no-tests -fPIC --prefix=/usr/local/ssl --openssldir=/usr/local/ssl > /dev/null
5252

5353
# Build
5454
make -j$(nproc) > /dev/null

0 commit comments

Comments
 (0)