From: Zachary Ware Date: Sat, 1 Nov 2014 22:11:08 +0000 (-0500) Subject: Issue #17717: Pull NASM from svn.python.org for OpenSSL build. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=247b6441a0b496ae02a617d8c06f6ff3beff66f3;p=python Issue #17717: Pull NASM from svn.python.org for OpenSSL build. --- diff --git a/Misc/NEWS b/Misc/NEWS index 1ef092c2ab..97aa75f8b5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -305,6 +305,9 @@ Build Windows ------- +- Issue #17717: The Windows build scripts now use a copy of NASM pulled from + svn.python.org to build OpenSSL. + - Issue #22644: The bundled version of OpenSSL has been updated to 1.0.1j. diff --git a/PCbuild/build_ssl.py b/PCbuild/build_ssl.py index 151aa54f74..53c7e35590 100644 --- a/PCbuild/build_ssl.py +++ b/PCbuild/build_ssl.py @@ -170,6 +170,17 @@ def main(): if ssl_dir is None: sys.exit(1) + # add our copy of NASM to PATH. It will be on the same level as openssl + for dir in os.listdir(os.path.join(ssl_dir, os.pardir)): + if dir.startswith('nasm'): + nasm_dir = os.path.join(ssl_dir, os.pardir, dir) + nasm_dir = os.path.abspath(nasm_dir) + os.environ['PATH'] += os.pathsep.join(['', nasm_dir]) + break + else: + print('NASM was not found, make sure it is on PATH') + + old_cd = os.getcwd() try: os.chdir(ssl_dir) diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt index c38f9908de..a65926d35e 100644 --- a/PCbuild/readme.txt +++ b/PCbuild/readme.txt @@ -144,7 +144,9 @@ _ssl You must install the NASM assembler from http://nasm.sf.net - for x86 builds. Put nasm.exe anywhere in your PATH. + for x86 builds. Put nasm.exe anywhere in your PATH. If you use the + Tools\buildbot\external(-amd64).bat method for getting sources, it also + downloads a version of NASM, which the ssl build script will add to PATH. You can also install ActivePerl from http://www.activestate.com/activeperl/ diff --git a/Tools/buildbot/external-common.bat b/Tools/buildbot/external-common.bat index 51f82e0c9b..7ca41a625b 100644 --- a/Tools/buildbot/external-common.bat +++ b/Tools/buildbot/external-common.bat @@ -37,6 +37,10 @@ if not exist bzip2-1.0.6 ( if exist db-4.4.20 rd /s/q db-4.4.20 if not exist db-4.7.25.0 svn export http://svn.python.org/projects/external/db-4.7.25.0 +@rem NASM, for OpenSSL build +@rem if exist nasm-2.11.06 rd /s/q nasm-2.11.06 +if not exist nasm-2.11.06 svn export http://svn.python.org/projects/external/nasm-2.11.06 + @rem OpenSSL if exist openssl-1.0.1i rd /s/q openssl-1.0.1i if not exist openssl-1.0.1j svn export http://svn.python.org/projects/external/openssl-1.0.1j