Add c++11 enablement options in wscript
- adds "--cxx11" toggle for ./waf configure - The switch adds appropriate compiler flags and tests the compiler for usability of c++11 - This 'should' be compatible for linux, osx, and windows systems that have gcc and/or clang with support c++11
This commit is contained in:
parent
ea08feec48
commit
d872a0a31b
18
wscript
18
wscript
@ -111,6 +111,22 @@ def set_compiler_flags (conf,opt):
|
|||||||
|
|
||||||
# waf adds -O0 -g itself. thanks waf!
|
# waf adds -O0 -g itself. thanks waf!
|
||||||
is_clang = conf.env['CXX'][0].endswith('clang++')
|
is_clang = conf.env['CXX'][0].endswith('clang++')
|
||||||
|
|
||||||
|
if conf.options.cxx11:
|
||||||
|
conf.check_cxx(cxxflags=["-std=c++11"])
|
||||||
|
conf.env.append_unique('CXXFLAGS', ['-std=c++11'])
|
||||||
|
if platform == "darwin":
|
||||||
|
conf.env.append_unique('CXXFLAGS', ['-stdlib=libc++'])
|
||||||
|
conf.env.append_unique('LINKFLAGS', ['-lc++'])
|
||||||
|
# Prevents visibility issues in standard headers
|
||||||
|
conf.define("_DARWIN_C_SOURCE", 1)
|
||||||
|
|
||||||
|
if is_clang and platform == "darwin":
|
||||||
|
# Silence warnings about the non-existing osx clang compiler flags
|
||||||
|
# -compatibility_version and -current_version. These are Waf
|
||||||
|
# generated and not needed with clang
|
||||||
|
conf.env.append_unique ("CXXFLAGS", ["-Qunused-arguments"])
|
||||||
|
|
||||||
if opt.gprofile:
|
if opt.gprofile:
|
||||||
debug_flags = [ '-pg' ]
|
debug_flags = [ '-pg' ]
|
||||||
|
|
||||||
@ -457,6 +473,8 @@ def options(opt):
|
|||||||
help='directory where Wine\'s Windows header files can be found')
|
help='directory where Wine\'s Windows header files can be found')
|
||||||
opt.add_option('--noconfirm', action='store_true', default=False, dest='noconfirm',
|
opt.add_option('--noconfirm', action='store_true', default=False, dest='noconfirm',
|
||||||
help='Do not ask questions that require confirmation during the build')
|
help='Do not ask questions that require confirmation during the build')
|
||||||
|
opt.add_option('--cxx11', action='store_true', default=False, dest='cxx11',
|
||||||
|
help='Turn on c++11 compiler flags (-std=c++11)')
|
||||||
for i in children:
|
for i in children:
|
||||||
opt.recurse(i)
|
opt.recurse(i)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user