diff options
author | Michael R. Fisher <mfisher@bketech.com> | 2013-07-15 17:27:21 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-08-08 15:23:10 -0400 |
commit | d872a0a31b72a3f32ae4438d4d60ab576cae87bd (patch) | |
tree | 5ab973a50ad2d7dc6df9eac9d372135553761332 /wscript | |
parent | ea08feec4804eb8263355c84114da79b402cc747 (diff) |
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
Diffstat (limited to 'wscript')
-rw-r--r-- | wscript | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -111,6 +111,22 @@ def set_compiler_flags (conf,opt): # waf adds -O0 -g itself. thanks waf! 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: debug_flags = [ '-pg' ] @@ -457,6 +473,8 @@ def options(opt): help='directory where Wine\'s Windows header files can be found') opt.add_option('--noconfirm', action='store_true', default=False, dest='noconfirm', 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: opt.recurse(i) |