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)
This commit is contained in:
parent
75638c1e88
commit
dc3cf5c6b0
@ -100,6 +100,7 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
|
|||||||
depends_on('zlib')
|
depends_on('zlib')
|
||||||
depends_on('perl@5.14.0:', type=('build', 'test'))
|
depends_on('perl@5.14.0:', type=('build', 'test'))
|
||||||
depends_on('ca-certificates-mozilla', type=('build', 'run'), when='certs=mozilla')
|
depends_on('ca-certificates-mozilla', type=('build', 'run'), when='certs=mozilla')
|
||||||
|
depends_on('nasm', when='platform=windows')
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def determine_version(cls, exe):
|
def determine_version(cls, exe):
|
||||||
@ -147,8 +148,8 @@ def install(self, spec, prefix):
|
|||||||
% join_path(prefix, 'etc', 'openssl')]
|
% join_path(prefix, 'etc', 'openssl')]
|
||||||
if spec.satisfies('platform=windows'):
|
if spec.satisfies('platform=windows'):
|
||||||
base_args.extend([
|
base_args.extend([
|
||||||
'CC=%s' % os.environ.get('CC'),
|
'CC=\"%s\"' % os.environ.get('CC'),
|
||||||
'CXX=%s' % os.environ.get('CXX'),
|
'CXX=\"%s\"' % os.environ.get('CXX'),
|
||||||
'VC-WIN64A',
|
'VC-WIN64A',
|
||||||
])
|
])
|
||||||
if spec.satisfies('~shared'):
|
if spec.satisfies('~shared'):
|
||||||
@ -164,7 +165,9 @@ def install(self, spec, prefix):
|
|||||||
# On Windows, we use perl for configuration and build through MSVC
|
# On Windows, we use perl for configuration and build through MSVC
|
||||||
# nmake.
|
# nmake.
|
||||||
if spec.satisfies('platform=windows'):
|
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:
|
else:
|
||||||
Executable('./config')(*base_args)
|
Executable('./config')(*base_args)
|
||||||
|
|
||||||
@ -183,6 +186,8 @@ def install(self, spec, prefix):
|
|||||||
else:
|
else:
|
||||||
host_make = make
|
host_make = make
|
||||||
|
|
||||||
|
host_make()
|
||||||
|
|
||||||
if self.run_tests:
|
if self.run_tests:
|
||||||
host_make('test', parallel=False) # 'VERBOSE=1'
|
host_make('test', parallel=False) # 'VERBOSE=1'
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user