bpo-34405: Update to OpenSSL 1.0.2p for macOS installer builds (GH-9191)

This commit is contained in:
Ned Deily 2018-09-11 15:45:36 -07:00 committed by GitHub
parent 8a2c2d4e1b
commit 31912b43c9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 10 deletions

View File

@ -162,7 +162,8 @@ def getTargetCompilers():
CC, CXX = getTargetCompilers() CC, CXX = getTargetCompilers()
PYTHON_3 = getVersionMajorMinor() >= (3, 0) PYTHON_2 = getVersionMajorMinor()[0] == 2
PYTHON_3 = getVersionMajorMinor()[0] == 3
USAGE = textwrap.dedent("""\ USAGE = textwrap.dedent("""\
Usage: build_python [options] Usage: build_python [options]
@ -210,9 +211,9 @@ def library_recipes():
result.extend([ result.extend([
dict( dict(
name="OpenSSL 1.0.2o", name="OpenSSL 1.0.2p",
url="https://www.openssl.org/source/openssl-1.0.2o.tar.gz", url="https://www.openssl.org/source/openssl-1.0.2p.tar.gz",
checksum='44279b8557c3247cbe324e2322ecd114', checksum='ac5eb30bf5798aa14b1ae6d0e7da58df',
buildrecipe=build_universal_openssl, buildrecipe=build_universal_openssl,
configure=None, configure=None,
install=None, install=None,
@ -607,9 +608,10 @@ def checkEnvironment():
base_path = base_path + ':' + OLD_DEVELOPER_TOOLS base_path = base_path + ':' + OLD_DEVELOPER_TOOLS
os.environ['PATH'] = base_path os.environ['PATH'] = base_path
print("Setting default PATH: %s"%(os.environ['PATH'])) print("Setting default PATH: %s"%(os.environ['PATH']))
# Ensure we have access to sphinx-build. if PYTHON_2:
# You may have to create a link in /usr/bin for it. # Ensure we have access to sphinx-build.
runCommand('sphinx-build --version') # You may have to define SDK_TOOLS_BIN and link to it there,
runCommand('sphinx-build --version')
def parseOptions(args=None): def parseOptions(args=None):
""" """
@ -822,6 +824,13 @@ def build_universal_openssl(basedir, archList):
] ]
if no_asm: if no_asm:
configure_opts.append("no-asm") configure_opts.append("no-asm")
# OpenSSL 1.0.2o broke the Configure test for whether the compiler
# in use supports dependency rule generation (cc -M) with gcc-4.2
# used for the 10.6+ installer builds. Patch Configure here to
# force use of "cc -M" rather than "makedepend".
runCommand(
"""sed -i "" 's|my $cc_as_makedepend = 0|my $cc_as_makedepend = 1|g' Configure""")
runCommand(" ".join(["perl", "Configure"] runCommand(" ".join(["perl", "Configure"]
+ arch_opts[arch] + configure_opts)) + arch_opts[arch] + configure_opts))
runCommand("make depend") runCommand("make depend")
@ -1055,9 +1064,14 @@ def buildPythonDocs():
curDir = os.getcwd() curDir = os.getcwd()
os.chdir(buildDir) os.chdir(buildDir)
runCommand('make clean') runCommand('make clean')
# Create virtual environment for docs builds with blurb and sphinx if PYTHON_2:
runCommand('make venv') # Python 2 doc builds do not use blurb nor do they have a venv target.
runCommand('make html PYTHON=venv/bin/python') # Assume sphinx-build is on our PATH, checked in checkEnvironment
runCommand('make html')
else:
# Create virtual environment for docs builds with blurb and sphinx
runCommand('make venv')
runCommand('make html PYTHON=venv/bin/python')
os.chdir(curDir) os.chdir(curDir)
if not os.path.exists(docdir): if not os.path.exists(docdir):
os.mkdir(docdir) os.mkdir(docdir)

View File

@ -0,0 +1 @@
Update to OpenSSL 1.0.2p for macOS installer builds.