mirror of
https://gitlab.com/ita1024/waf.git
synced 2024-11-24 10:49:42 +01:00
Process CPPFLAGS at the end of commands
This commit is contained in:
parent
281148b8eb
commit
ddaf29b78d
7
TODO
7
TODO
@ -4,7 +4,6 @@ Waf 1.9
|
||||
* Reduce the key size in bld.task_sigs
|
||||
* Provide a more efficient ConfigSet implementation
|
||||
* Ensure _cache.py are valid python files
|
||||
* Set cflags in the beginning / cppflags at the end
|
||||
* Rework qt5
|
||||
* Make lazy visual studio detection the default
|
||||
* Do not cache waf tool detection
|
||||
@ -21,7 +20,9 @@ Done
|
||||
* Remove the command called "update"
|
||||
* Include the tool 'nobuild' by default
|
||||
* Remove qt4 and kde4 from the default modules
|
||||
* Detect Clang first on many platforms, in particular on FreeBSD
|
||||
* Detect Clang first on many platforms, in particular on FreeBSD #1528
|
||||
* Let run_once accept a list of *args
|
||||
* Remove Node.cache_sig and Node.sig
|
||||
* Remove Node.cache_sig and Node.sig #1580
|
||||
* Remove __hash__ and __eq__ from Node and Task #1629
|
||||
* Set cflags in the beginning / cppflags at the end #1505
|
||||
|
||||
|
@ -17,7 +17,7 @@ def c_hook(self, node):
|
||||
|
||||
class c(Task.Task):
|
||||
"Compile C files into object files"
|
||||
run_str = '${CC} ${ARCH_ST:ARCH} ${CFLAGS} ${CPPFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CC_SRC_F}${SRC} ${CC_TGT_F}${TGT[0].abspath()}'
|
||||
run_str = '${CC} ${ARCH_ST:ARCH} ${CFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CC_SRC_F}${SRC} ${CC_TGT_F}${TGT[0].abspath()} ${CPPFLAGS}'
|
||||
vars = ['CCDEPS'] # unused variable to depend on, just in case
|
||||
ext_in = ['.h'] # set the build order easily by using ext_out=['.h']
|
||||
scan = c_preproc.scan
|
||||
|
@ -18,7 +18,7 @@ if not '.c' in TaskGen.task_gen.mappings:
|
||||
|
||||
class cxx(Task.Task):
|
||||
"Compile C++ files into object files"
|
||||
run_str = '${CXX} ${ARCH_ST:ARCH} ${CXXFLAGS} ${CPPFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CXX_SRC_F}${SRC} ${CXX_TGT_F}${TGT[0].abspath()}'
|
||||
run_str = '${CXX} ${ARCH_ST:ARCH} ${CXXFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CXX_SRC_F}${SRC} ${CXX_TGT_F}${TGT[0].abspath()} ${CPPFLAGS}'
|
||||
vars = ['CXXDEPS'] # unused variable to depend on, just in case
|
||||
ext_in = ['.h'] # set the build order easily by using ext_out=['.h']
|
||||
scan = c_preproc.scan
|
||||
|
@ -12,7 +12,7 @@ from waflib.Tools import ccroot, fc_config, fc_scan
|
||||
from waflib.TaskGen import feature, extension
|
||||
from waflib.Configure import conf
|
||||
|
||||
ccroot.USELIB_VARS['fc'] = set(['FCFLAGS', 'DEFINES', 'INCLUDES'])
|
||||
ccroot.USELIB_VARS['fc'] = set(['FCFLAGS', 'DEFINES', 'INCLUDES', 'FCPPFLAGS'])
|
||||
ccroot.USELIB_VARS['fcprogram_test'] = ccroot.USELIB_VARS['fcprogram'] = set(['LIB', 'STLIB', 'LIBPATH', 'STLIBPATH', 'LINKFLAGS', 'RPATH', 'LINKDEPS'])
|
||||
ccroot.USELIB_VARS['fcshlib'] = set(['LIB', 'STLIB', 'LIBPATH', 'STLIBPATH', 'LINKFLAGS', 'RPATH', 'LINKDEPS'])
|
||||
ccroot.USELIB_VARS['fcstlib'] = set(['ARFLAGS', 'LINKDEPS'])
|
||||
@ -57,7 +57,7 @@ class fc(Task.Task):
|
||||
"""
|
||||
|
||||
color = 'GREEN'
|
||||
run_str = '${FC} ${FCFLAGS} ${FCINCPATH_ST:INCPATHS} ${FCDEFINES_ST:DEFINES} ${_FCMODOUTFLAGS} ${FC_TGT_F}${TGT[0].abspath()} ${FC_SRC_F}${SRC[0].abspath()}'
|
||||
run_str = '${FC} ${FCFLAGS} ${FCINCPATH_ST:INCPATHS} ${FCDEFINES_ST:DEFINES} ${_FCMODOUTFLAGS} ${FC_TGT_F}${TGT[0].abspath()} ${FC_SRC_F}${SRC[0].abspath()} ${FCPPFLAGS}'
|
||||
vars = ["FORTRANMODPATHFLAG"]
|
||||
|
||||
def scan(self):
|
||||
|
@ -50,6 +50,7 @@ def fc_add_flags(conf):
|
||||
"""
|
||||
Add FCFLAGS / LDFLAGS / LINKFLAGS from os.environ to conf.env
|
||||
"""
|
||||
conf.add_os_flags('FCPPFLAGS', dup=False)
|
||||
conf.add_os_flags('FCFLAGS', dup=False)
|
||||
conf.add_os_flags('LINKFLAGS', dup=False)
|
||||
conf.add_os_flags('LDFLAGS', dup=False)
|
||||
|
@ -26,10 +26,10 @@ from waflib.Tools import c, cxx
|
||||
|
||||
MAX_BATCH = 50
|
||||
|
||||
c_str = '${CC} ${CFLAGS} ${CPPFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} -c ${SRCLST} ${CXX_TGT_F_BATCHED}'
|
||||
c_str = '${CC} ${CFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} -c ${SRCLST} ${CXX_TGT_F_BATCHED} ${CPPFLAGS}'
|
||||
c_fun, _ = Task.compile_fun_noshell(c_str)
|
||||
|
||||
cxx_str = '${CXX} ${CXXFLAGS} ${CPPFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} -c ${SRCLST} ${CXX_TGT_F_BATCHED}'
|
||||
cxx_str = '${CXX} ${CXXFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} -c ${SRCLST} ${CXX_TGT_F_BATCHED} ${CPPFLAGS}'
|
||||
cxx_fun, _ = Task.compile_fun_noshell(cxx_str)
|
||||
|
||||
count = 70000
|
||||
|
@ -129,7 +129,7 @@ def add_pch(self):
|
||||
x.env.append_value('CXXFLAGS', self.env['CXXPCH_F'] + [pch.target])
|
||||
|
||||
class gchx(Task.Task):
|
||||
run_str = '${CXX} ${ARCH_ST:ARCH} ${CXXFLAGS} ${CPPFLAGS} ${CXXPCH_FLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CXXPCH_F:SRC} ${CXX_SRC_F}${SRC[0].abspath()} ${CXX_TGT_F}${TGT[0].abspath()}'
|
||||
run_str = '${CXX} ${ARCH_ST:ARCH} ${CXXFLAGS} ${CXXPCH_FLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${CXXPCH_F:SRC} ${CXX_SRC_F}${SRC[0].abspath()} ${CXX_TGT_F}${TGT[0].abspath()} ${CPPFLAGS}'
|
||||
scan = c_preproc.scan
|
||||
color = 'BLUE'
|
||||
ext_out=['.h']
|
||||
|
@ -193,7 +193,7 @@ class ti_c(Task.Task):
|
||||
|
||||
"""
|
||||
"Compile C files into object files"
|
||||
run_str = '${CC} ${ARCH_ST:ARCH} ${CFLAGS} ${CPPFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${SRC} -c ${OUT}'
|
||||
run_str = '${CC} ${ARCH_ST:ARCH} ${CFLAGS} ${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${SRC} -c ${OUT} ${CPPFLAGS}'
|
||||
vars = ['CCDEPS'] # unused variable to depend on, just in case
|
||||
ext_in = ['.h'] # set the build order easily by using ext_out=['.h']
|
||||
scan = c_preproc.scan
|
||||
|
Loading…
Reference in New Issue
Block a user