[Python-checkins] Fix out-of-tree build support for multissltest (GH-29694)

miss-islington webhook-mailer at python.org
Mon Nov 22 05:14:43 EST 2021


https://github.com/python/cpython/commit/9e7a2e492052956d511d753a276a4bdf6eb47072
commit: 9e7a2e492052956d511d753a276a4bdf6eb47072
branch: 3.10
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2021-11-22T02:14:28-08:00
summary:

Fix out-of-tree build support for multissltest (GH-29694)

(cherry picked from commit 512dbf6f56364d359e16988b3fd7e766edfaebf9)

Co-authored-by: Christian Heimes <christian at python.org>

files:
M Makefile.pre.in
M Tools/ssl/multissltests.py

diff --git a/Makefile.pre.in b/Makefile.pre.in
index 673e6efbf1e4f..ae6555c8e2fe1 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1259,10 +1259,10 @@ quicktest:	@DEF_MAKE_RULE@ platform
 # SSL tests
 .PHONY: multisslcompile multissltest
 multisslcompile: build_all
-	$(RUNSHARED) ./$(BUILDPYTHON) Tools/ssl/multissltests.py --steps=modules
+	$(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/ssl/multissltests.py --steps=modules
 
 multissltest: build_all
-	$(RUNSHARED) ./$(BUILDPYTHON) Tools/ssl/multissltests.py
+	$(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/ssl/multissltests.py
 
 install: @FRAMEWORKINSTALLFIRST@ commoninstall bininstall maninstall @FRAMEWORKINSTALLLAST@
 	if test "x$(ENSUREPIP)" != "xno"  ; then \
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index 7bdfd0b92bacf..ba2663e9a399b 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -153,8 +153,10 @@ class AbstractBuilder(object):
     install_target = 'install'
     jobs = os.cpu_count()
 
-    module_files = ("Modules/_ssl.c",
-                    "Modules/_hashopenssl.c")
+    module_files = (
+        os.path.join(PYTHONROOT, "Modules/_ssl.c"),
+        os.path.join(PYTHONROOT, "Modules/_hashopenssl.c"),
+    )
     module_libs = ("_ssl", "_hashlib")
 
     def __init__(self, version, args):
@@ -357,7 +359,7 @@ def recompile_pymods(self):
         env["LD_RUN_PATH"] = self.lib_dir
 
         log.info("Rebuilding Python modules")
-        cmd = [sys.executable, "setup.py", "build"]
+        cmd = [sys.executable, os.path.join(PYTHONROOT, "setup.py"), "build"]
         self._subprocess_call(cmd, env=env)
         self.check_imports()
 
@@ -372,7 +374,11 @@ def check_pyssl(self):
 
     def run_python_tests(self, tests, network=True):
         if not tests:
-            cmd = [sys.executable, 'Lib/test/ssltests.py', '-j0']
+            cmd = [
+                sys.executable,
+                os.path.join(PYTHONROOT, 'Lib/test/ssltests.py'),
+                '-j0'
+            ]
         elif sys.version_info < (3, 3):
             cmd = [sys.executable, '-m', 'test.regrtest']
         else:



More information about the Python-checkins mailing list