mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-09-21 18:57:16 +08:00
[env] add scons --strict
此commit意图在脚本中增加 scons --strict命令,使用该命令编译工程时,会自动将CFLAGS CXXFLAGS设置为 Werrors,即较为严格的编译模式,任何警告都会当做错误来处理。 该命令主要用于CI,在CI执行bsp编译时,可以使用 scons --strict命令。现在QEMU的rtconfig.py 为了CI检查,直接将CFLAGS加上了Werrors,导致正常编译过程中也把警告当做了错误,对日常使用该bsp造成了影响。
This commit is contained in:
committed by
Man, Jianting (Meco)
parent
fcf2367966
commit
b310541471
+7
-1
@@ -223,7 +223,7 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
|
||||
|
||||
utils.ReloadModule(rtconfig) # update environment variables to rtconfig.py
|
||||
|
||||
# some env variables have loaded in SConsctruct Environment() before re-load rtconfig.py;
|
||||
# some env variables have loaded in Environment() of SConstruct before re-load rtconfig.py;
|
||||
# after update rtconfig.py's variables, those env variables need to synchronize
|
||||
if exec_prefix:
|
||||
env['CC'] = rtconfig.CC
|
||||
@@ -234,6 +234,12 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
|
||||
if exec_path:
|
||||
env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
|
||||
|
||||
if GetOption('strict-compiling'):
|
||||
STRICT_FLAGS = ''
|
||||
if rtconfig.PLATFORM in ['gcc']:
|
||||
STRICT_FLAGS += ' -Werror' #-Wextra
|
||||
env.Append(CFLAGS=STRICT_FLAGS, CXXFLAGS=STRICT_FLAGS)
|
||||
|
||||
# add compability with Keil MDK 4.6 which changes the directory of armcc.exe
|
||||
if rtconfig.PLATFORM in ['armcc', 'armclang']:
|
||||
if rtconfig.PLATFORM == 'armcc' and not os.path.isfile(os.path.join(rtconfig.EXEC_PATH, 'armcc.exe')):
|
||||
|
||||
@@ -85,6 +85,11 @@ def AddOptions():
|
||||
dest = 'target',
|
||||
type = 'string',
|
||||
help = 'set target project: mdk/mdk4/mdk5/iar/vs/vsc/ua/cdk/ses/makefile/eclipse/codelite/cmake')
|
||||
AddOption('--strict',
|
||||
dest='strict-compiling',
|
||||
help='Compiling project with strict mode and ALL warning will be errors',
|
||||
action='store_true',
|
||||
default=False)
|
||||
AddOption('--cc-prefix', '--exec-prefix',
|
||||
dest = 'exec-prefix',
|
||||
type = 'string',
|
||||
|
||||
Reference in New Issue
Block a user