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"