Apple Big Sur build support

This commit is contained in:
Robin Gareus 2020-11-10 23:28:54 +01:00
parent ff7bd23661
commit 921caac00f
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
1 changed files with 10 additions and 4 deletions

14
wscript
View File

@ -424,6 +424,8 @@ int main() { return 0; }''',
conf.env['build_host'] = 'mojave'
elif re.search ("^19[.]", version) != None:
conf.env['build_host'] = 'catalina'
elif re.search ("^20[.]", version) != None:
conf.env['build_host'] = 'bigsur'
else:
conf.env['build_host'] = 'irrelevant'
@ -455,6 +457,10 @@ int main() { return 0; }''',
conf.env['build_target'] = 'high sierra'
elif re.search ("^18[.]", version) != None:
conf.env['build_target'] = 'mojave'
elif re.search ("^19[.]", version) != None:
conf.env['build_target'] = 'catalina'
elif re.search ("^20[.]", version) != None:
conf.env['build_target'] = 'bigsur'
else:
conf.env['build_target'] = 'catalina'
else:
@ -485,7 +491,7 @@ int main() { return 0; }''',
cxx_flags.append('--stdlib=libc++')
linker_flags.append('--stdlib=libc++')
if conf.options.cxx11 or conf.env['build_host'] in [ 'mavericks', 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' ]:
if conf.options.cxx11 or conf.env['build_host'] in [ 'mavericks', 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' , 'bigsur' ]:
conf.check_cxx(cxxflags=["-std=c++11"])
cxx_flags.append('-std=c++11')
if platform == "darwin":
@ -493,7 +499,7 @@ int main() { return 0; }''',
# from requiring a full path to requiring just the header name.
cxx_flags.append('-DCARBON_FLAT_HEADERS')
if not opt.use_libcpp and not conf.env['build_host'] in [ 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' ]:
if not opt.use_libcpp and not conf.env['build_host'] in [ 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina', 'bigsur' ]:
cxx_flags.append('--stdlib=libstdc++')
linker_flags.append('--stdlib=libstdc++')
# Prevents visibility issues in standard headers
@ -502,7 +508,7 @@ int main() { return 0; }''',
cxx_flags.append('-DBOOST_NO_AUTO_PTR')
if (is_clang and platform == "darwin") or conf.env['build_host'] in [ 'mavericks', 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' ]:
if (is_clang and platform == "darwin") or conf.env['build_host'] in [ 'mavericks', 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' , 'bigsur' ]:
# Silence warnings about the non-existing osx clang compiler flags
# -compatibility_version and -current_version. These are Waf
# generated and not needed with clang
@ -1339,7 +1345,7 @@ int main () { return 0; }
set_compiler_flags (conf, Options.options)
if conf.env['build_host'] not in [ 'mojave', 'catalina']:
if conf.env['build_host'] not in [ 'mojave', 'catalina', 'bigsur']:
conf.env.append_value('CXXFLAGS_OSX', '-F/System/Library/Frameworks')
conf.env.append_value('CXXFLAGS_OSX', '-F/Library/Frameworks')