This is an automated email from the ASF dual-hosted git repository.
zhouyuan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gluten.git
The following commit(s) were added to refs/heads/main by this push:
new b0ca60a5c8 [GLUTEN-8232][VL] Allow to enable dynamic openssl link in
VCPKG packaging (#11444)
b0ca60a5c8 is described below
commit b0ca60a5c8390e3419086aaae896c995be59e312
Author: Yuan <[email protected]>
AuthorDate: Thu May 28 16:07:02 2026 +0800
[GLUTEN-8232][VL] Allow to enable dynamic openssl link in VCPKG packaging
(#11444)
This patch enabled dynamic openssl to include FIPS feature in vcpkg build.
The feature is off by default, it can be enabled by set env
VCPKG_DYNAMIC_OPENSSL to ON
In the runtime user will need to ensure the libssl.so & libcrypt.so are
available otherwise Gluten will fail to run
---------
Signed-off-by: Yuan <[email protected]>
---
.github/workflows/velox_backend_x86.yml | 1 -
dev/vcpkg/init.sh | 11 ++++++++---
dev/vcpkg/triplets/arm64-linux-neon.cmake | 4 ++++
dev/vcpkg/triplets/x64-linux-avx.cmake | 4 ++++
dev/vcpkg/vcpkg.json | 9 +++++++++
5 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/velox_backend_x86.yml
b/.github/workflows/velox_backend_x86.yml
index 3c9efc44bd..7342c62a15 100644
--- a/.github/workflows/velox_backend_x86.yml
+++ b/.github/workflows/velox_backend_x86.yml
@@ -68,7 +68,6 @@ jobs:
ccache-centos7-release-default
- name: Build Gluten native libraries
run: |
- docker pull apache/gluten:vcpkg-centos-7-gcc13
docker run -v $GITHUB_WORKSPACE:/work -w /work
apache/gluten:vcpkg-centos-7-gcc13 bash -c "
set -e
yum install tzdata -y
diff --git a/dev/vcpkg/init.sh b/dev/vcpkg/init.sh
index 1247a14493..6683ba9151 100755
--- a/dev/vcpkg/init.sh
+++ b/dev/vcpkg/init.sh
@@ -85,7 +85,10 @@ if [ "$ENABLE_GCS" = "ON" ]; then
EXTRA_FEATURES+="--x-feature=velox-gcs "
fi
if [ "$ENABLE_ABFS" = "ON" ]; then
- EXTRA_FEATURES+="--x-feature=velox-abfs"
+ EXTRA_FEATURES+="--x-feature=velox-abfs "
+fi
+if [ "${VCPKG_DYNAMIC_OPENSSL:-OFF}" = "ON" ]; then
+ EXTRA_FEATURES+="--x-feature=dynamic-openssl "
fi
@@ -97,7 +100,9 @@ $VCPKG install --no-print-usage \
# needed by 'releases/libvelox.so'
mkdir -p $VCPKG_TRIPLET_INSTALL_DIR/debug/lib/
cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libz.a $VCPKG_TRIPLET_INSTALL_DIR/debug/lib
-cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libssl.a $VCPKG_TRIPLET_INSTALL_DIR/debug/lib
-cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libcrypto.a
$VCPKG_TRIPLET_INSTALL_DIR/debug/lib
+if [ "${VCPKG_DYNAMIC_OPENSSL:-OFF}" = "OFF" ]; then
+ cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libssl.a
$VCPKG_TRIPLET_INSTALL_DIR/debug/lib
+ cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libcrypto.a
$VCPKG_TRIPLET_INSTALL_DIR/debug/lib
+fi
cp $VCPKG_TRIPLET_INSTALL_DIR/lib/liblzma.a
$VCPKG_TRIPLET_INSTALL_DIR/debug/lib
cp $VCPKG_TRIPLET_INSTALL_DIR/lib/libdwarf.a
$VCPKG_TRIPLET_INSTALL_DIR/debug/lib
diff --git a/dev/vcpkg/triplets/arm64-linux-neon.cmake
b/dev/vcpkg/triplets/arm64-linux-neon.cmake
index c02fe5b442..92f03d1c4f 100644
--- a/dev/vcpkg/triplets/arm64-linux-neon.cmake
+++ b/dev/vcpkg/triplets/arm64-linux-neon.cmake
@@ -8,3 +8,7 @@ set(VCPKG_CMAKE_SYSTEM_NAME Linux)
set(VCPKG_C_FLAGS "-march=armv8-a+crc")
set(VCPKG_CXX_FLAGS "-march=armv8-a+crc -std=c++20")
set(VCPKG_LINKER_FLAGS "-static-libstdc++ -static-libgcc")
+
+if("${PORT}" STREQUAL "openssl" AND "$ENV{VCPKG_DYNAMIC_OPENSSL}" STREQUAL
"ON")
+ set(VCPKG_LIBRARY_LINKAGE dynamic)
+endif()
diff --git a/dev/vcpkg/triplets/x64-linux-avx.cmake
b/dev/vcpkg/triplets/x64-linux-avx.cmake
index 50f1bdebc9..71600d4cb7 100644
--- a/dev/vcpkg/triplets/x64-linux-avx.cmake
+++ b/dev/vcpkg/triplets/x64-linux-avx.cmake
@@ -13,3 +13,7 @@ set(VCPKG_LINKER_FLAGS "-static-libstdc++ -static-libgcc")
if("${PORT}" STREQUAL "snappy")
list(APPEND VCPKG_CMAKE_CONFIGURE_OPTIONS -DSNAPPY_HAVE_BMI2=ON)
endif()
+
+if("${PORT}" STREQUAL "openssl" AND "$ENV{VCPKG_DYNAMIC_OPENSSL}" STREQUAL
"ON")
+ set(VCPKG_LIBRARY_LINKAGE dynamic)
+endif()
\ No newline at end of file
diff --git a/dev/vcpkg/vcpkg.json b/dev/vcpkg/vcpkg.json
index aba59968f2..ebe2329ab0 100644
--- a/dev/vcpkg/vcpkg.json
+++ b/dev/vcpkg/vcpkg.json
@@ -54,6 +54,15 @@
"grpc"
]
},
+ "dynamic-openssl": {
+ "description": "Enable dynamic OpenSSL with fips feature",
+ "dependencies": [
+ {
+ "name": "openssl",
+ "features": ["fips"]
+ }
+ ]
+ },
"velox-s3": {
"description": "Velox S3 Support",
"dependencies": [
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]