Commit ead81eac94 for openssl.org
commit ead81eac94d6d039301a49f57fa891c9c6c47dc1
Author: Eugene Syromiatnikov <esyr@openssl.org>
Date: Thu Sep 3 16:04:35 2026 +0200
test/recipes/95-test_external_pyca_data/cryptography.sh: update dep installation
* pyca has switched to dependency groups in commit 47.0.0~82 "Convert
development extras to dependency groups (#14638)" (ea1fc9f37eb6),
use pip --groups instead of the square bracket syntax.
* pyca 40.0+ does not use CFLAGS/LDFLAGS for passing flags directly
anymore, but rather needs OPENSSL{,_INCLUDE,_LIB}_DIR[1]. Synthesise
an include dir (similarly to the way it is done
in test/recipes/95-test_external_oqsprovider.t) and pass it along
the library dir to the pip install command.
[1] https://docs.rs/openssl/latest/openssl/#manual
Signed-off-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Jakub Zelenka <jakub.zelenka@openssl.foundation>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Merge-date: Mon Sep 7 18:23:54 2026
Merged-from: https://github.com/openssl/openssl/pull/32668
diff --git a/test/recipes/95-test_external_pyca_data/cryptography.sh b/test/recipes/95-test_external_pyca_data/cryptography.sh
index 4bcadff1c7..36747be212 100755
--- a/test/recipes/95-test_external_pyca_data/cryptography.sh
+++ b/test/recipes/95-test_external_pyca_data/cryptography.sh
@@ -21,6 +21,7 @@ O_LIB=`pwd`/$BLDTOP
: "${PYTHON_CMD=python3}"
: "${VENV_CMD=${PYTHON_CMD} -m venv}"
+: "${INSTALLTOP=$(pwd)/${BLDTOP}/venv-cryptography/.local}"
export PATH=$O_EXE:$PATH
export LD_LIBRARY_PATH=$O_LIB:$LD_LIBRARY_PATH
@@ -33,6 +34,7 @@ echo "Testing OpenSSL using Python Cryptography:"
echo " CWD: $PWD"
echo " SRCTOP: $SRCTOP"
echo " BLDTOP: $BLDTOP"
+echo " INSTALLTOP: $INSTALLTOP"
echo " Python command: $PYTHON_CMD"
echo " venv command: $VENV_CMD"
echo " OpenSSL version: $OPENSSL_VERSION"
@@ -40,9 +42,18 @@ echo "------------------------------------------------------------------"
cd $BLDTOP
-# Create a python virtual env and activate
+# Create a python virtual env
rm -rf venv-cryptography
${VENV_CMD} venv-cryptography
+
+# Construct "installed" header directory
+find "$O_SINC" "$O_BINC" -name '*.h' -printf '%p %P\n' \
+ | while read -r from to; do
+ mkdir -p "$(dirname "$INSTALLTOP/include/$to")"
+ ln -sf "$from" "$INSTALLTOP/include/$to"
+ done
+
+# Activate the python virtual env
. ./venv-cryptography/bin/activate
# Upgrade pip to always have latest
pip install -U pip
@@ -52,8 +63,7 @@ cd pyca-cryptography
echo "------------------------------------------------------------------"
echo "Building cryptography and installing test requirements"
echo "------------------------------------------------------------------"
-LDFLAGS="-L$O_LIB" CFLAGS="-I$O_BINC -I$O_SINC " pip install .[test]
-pip install -e vectors
+OPENSSL_LIB_DIR="$O_LIB" OPENSSL_INCLUDE_DIR="$INSTALLTOP/include/" pip install . --group test
echo "------------------------------------------------------------------"
echo "Print linked libraries"