summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn W. Parent <45471568+johnwparent@users.noreply.github.com>2022-04-19 14:04:26 -0400
committerGitHub <noreply@github.com>2022-04-19 11:04:26 -0700
commitdc3cf5c6b0e2c817de2b01c5c73fcc7611af3c49 (patch)
tree59e04a7b7b2a6e5294fd936782e8ff51395db936
parent75638c1e88e735ca7e4cb9ceda9977bf7ca431e2 (diff)
downloadspack-dc3cf5c6b0e2c817de2b01c5c73fcc7611af3c49.tar.gz
spack-dc3cf5c6b0e2c817de2b01c5c73fcc7611af3c49.tar.bz2
spack-dc3cf5c6b0e2c817de2b01c5c73fcc7611af3c49.tar.xz
spack-dc3cf5c6b0e2c817de2b01c5c73fcc7611af3c49.zip
OpenSSL package: fix ./configure error; restore parallel build (#29928)
* The configure script on Windows requires that CC/CXX be enclosed in quotes if the paths to those compiler executables contain spaces (so unlike most instances of Executable, the arguments need to contain the quotes) * OpenSSL requires the nasm package on Windows * Restore parallel build from 075e942 (accidentally reverted in #27021)
-rw-r--r--var/spack/repos/builtin/packages/openssl/package.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/var/spack/repos/builtin/packages/openssl/package.py b/var/spack/repos/builtin/packages/openssl/package.py
index 9d13de4f37..11bf8c6a07 100644
--- a/var/spack/repos/builtin/packages/openssl/package.py
+++ b/var/spack/repos/builtin/packages/openssl/package.py
@@ -100,6 +100,7 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
depends_on('zlib')
depends_on('perl@5.14.0:', type=('build', 'test'))
depends_on('ca-certificates-mozilla', type=('build', 'run'), when='certs=mozilla')
+ depends_on('nasm', when='platform=windows')
@classmethod
def determine_version(cls, exe):
@@ -147,8 +148,8 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
% join_path(prefix, 'etc', 'openssl')]
if spec.satisfies('platform=windows'):
base_args.extend([
- 'CC=%s' % os.environ.get('CC'),
- 'CXX=%s' % os.environ.get('CXX'),
+ 'CC=\"%s\"' % os.environ.get('CC'),
+ 'CXX=\"%s\"' % os.environ.get('CXX'),
'VC-WIN64A',
])
if spec.satisfies('~shared'):
@@ -164,7 +165,9 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
# On Windows, we use perl for configuration and build through MSVC
# nmake.
if spec.satisfies('platform=windows'):
- Executable('perl')('Configure', *base_args)
+ # The configure executable requires that paths with spaces
+ # on Windows be wrapped in quotes
+ Executable('perl')('Configure', *base_args, ignore_quotes=True)
else:
Executable('./config')(*base_args)
@@ -183,6 +186,8 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
else:
host_make = make
+ host_make()
+
if self.run_tests:
host_make('test', parallel=False) # 'VERBOSE=1'