Added project option for C++ standard.
This commit is contained in:
parent
dedad06419
commit
14a080e618
@ -97,6 +97,8 @@ Import('config')
|
||||
|
||||
if not config.get('PROJECT_NAME'):
|
||||
config['PROJECT_NAME'] = 'PROJECT'
|
||||
if not config.get('CXX_STANDARD'):
|
||||
config['CXX_STANDARD'] = 'c++20'
|
||||
|
||||
if not config.get('PREPROCESSOR_PREFIX'):
|
||||
config['PREPROCESSOR_PREFIX'] = config['PROJECT_NAME'].upper() # TODO: may be nicer?
|
||||
@ -266,7 +268,7 @@ elif unity_mode == 'stress': # compile everything in one single file to stress t
|
||||
# setup compiler specific options
|
||||
if env['COMPILER_FAMILY'] == 'gcc' or env['COMPILER_FAMILY'] == 'clang':
|
||||
env.Append(CCFLAGS = ['-Wall', '-Wextra', '-Werror', '-Wstrict-aliasing', '-pedantic'])
|
||||
env.Append(CXXFLAGS = ['-std=c++20'])
|
||||
env.Append(CXXFLAGS = [f'-std={config["CXX_STANDARD"]}'])
|
||||
if build_type != 'release':
|
||||
env.Append(LINKFLAGS = [f'-Wl,-rpath,{env["LIB_DIR"]}'])
|
||||
env['LINKCOM'] = env['LINKCOM'].replace('$_LIBFLAGS', '-Wl,--start-group $_LIBFLAGS -Wl,--end-group')
|
||||
@ -299,7 +301,7 @@ if env['COMPILER_FAMILY'] == 'gcc' or env['COMPILER_FAMILY'] == 'clang':
|
||||
elif env['COMPILER_FAMILY'] == 'cl':
|
||||
# C4201: nonstandard extension used : nameless struct/union - I use it and want to continue using it
|
||||
# C4127: conditional expression is constant - some libs (CRC, format) don't compile with this enabled # TODO: fix?
|
||||
env.Append(CCFLAGS = ['/W4', '/WX', '/wd4201', '/wd4127', '/std:c++20', '/permissive-', '/EHsc', '/FS', '/Zc:char8_t'])
|
||||
env.Append(CCFLAGS = ['/W4', '/WX', '/wd4201', '/wd4127', f'/std:{config["CXX_STANDARD"]}', '/permissive-', '/EHsc', '/FS', '/Zc:char8_t'])
|
||||
env.Append(CPPDEFINES = ['_CRT_SECURE_NO_WARNINGS']) # I'd like to not use MSVC specific versions of functions because they are "safer" ...
|
||||
if build_type == 'debug':
|
||||
env.Append(CCFLAGS = ['/Od', '/Zi'], LINKFLAGS = ' /DEBUG')
|
||||
|
Loading…
x
Reference in New Issue
Block a user