boost: fix unicode bugs in Boost recipe (#22301)

This commit is contained in:
Harmen Stoppels 2021-03-17 11:22:21 +01:00 committed by GitHub
parent 047bb490cb
commit 889e83a9b5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -159,7 +159,13 @@ def libs(self):
description='Default symbol visibility in compiled libraries '
'(1.69.0 or later)')
# Unicode support
depends_on('icu4c', when='+icu')
depends_on('icu4c cxxstd=11', when='+icu cxxstd=11')
depends_on('icu4c cxxstd=14', when='+icu cxxstd=14')
depends_on('icu4c cxxstd=17', when='+icu cxxstd=17')
conflicts('cxxstd=98', when='+icu') # Requires c++11 at least
depends_on('python', when='+python')
depends_on('mpi', when='+mpi')
depends_on('bzip2', when='+iostreams')
@ -331,6 +337,11 @@ def determine_bootstrap_options(self, spec, with_libs, options):
if '+python' in spec:
options.append('--with-python=%s' % spec['python'].command.path)
if '+icu' in spec:
options.append('--with-icu')
else:
options.append('--without-icu')
with open('user-config.jam', 'w') as f:
# Boost may end up using gcc even though clang+gfortran is set in
# compilers.yaml. Make sure this does not happen:
@ -366,8 +377,10 @@ def determine_b2_options(self, spec, options):
else:
options.append('variant=release')
if '+icu_support' in spec:
options.extend(['-s', 'ICU_PATH=%s' % spec['icu'].prefix])
if '+icu' in spec:
options.extend(['-s', 'ICU_PATH=%s' % spec['icu4c'].prefix])
else:
options.append('--disable-icu')
if '+iostreams' in spec:
options.extend([