diff options
author | Steven Knight <knight@baldmt.com> | 2004-01-25 01:45:35 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2004-01-25 01:45:35 (GMT) |
commit | 3137cbe6b869e0b69c1fafcc6b692ccd099c2109 (patch) | |
tree | 18faff1ef52b1d67a14bc6ad0c9a68f60401cf85 /src/engine/SCons/Tool/qt.py | |
parent | c31d933609202d40181640364bebfa8662b3df85 (diff) | |
download | SCons-3137cbe6b869e0b69c1fafcc6b692ccd099c2109.zip SCons-3137cbe6b869e0b69c1fafcc6b692ccd099c2109.tar.gz SCons-3137cbe6b869e0b69c1fafcc6b692ccd099c2109.tar.bz2 |
Have the Qt Builder(s) use flags from the environment used to specify the target, not the environment that first had the Builder(s) attached. (Christoph Wiedemann)
Diffstat (limited to 'src/engine/SCons/Tool/qt.py')
-rw-r--r-- | src/engine/SCons/Tool/qt.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/engine/SCons/Tool/qt.py b/src/engine/SCons/Tool/qt.py index ffdff18..4be7a65 100644 --- a/src/engine/SCons/Tool/qt.py +++ b/src/engine/SCons/Tool/qt.py @@ -53,8 +53,8 @@ class _Automoc: StaticLibraries. """ - def __init__(self, objBuilder,uicDeclBuild,mocFromHBld,mocFromCppBld): - self.objBuilder = objBuilder + def __init__(self, objBuilderName,uicDeclBuild,mocFromHBld,mocFromCppBld): + self.objBuilderName = objBuilderName self.uicDeclBld = uicDeclBuild self.mocFromHBld = mocFromHBld self.mocFromCppBld = mocFromCppBld @@ -108,9 +108,10 @@ class _Automoc: src_ext = SCons.Util.splitext(str(h))[1] moc_cpp = SCons.Node.FS.default_fs.File(os.path.join(dir, env['QT_MOCNAMEGENERATOR'](base, src_ext, env))) - moc_o = self.objBuilder(source=moc_cpp) + objBuilder = getattr(env, self.objBuilderName) + moc_o = objBuilder(source=moc_cpp) out_sources.append(moc_o) - self.objBuilder(moc_o, moc_cpp) + objBuilder(moc_o, moc_cpp) self.mocFromHBld(env, moc_cpp, h) moc_cpp.target_scanner = SCons.Defaults.CScan if cpp and q_object_search.search(cpp.get_contents()): @@ -202,11 +203,11 @@ def generate(env): # We can't refer to the builders directly, we have to fetch them # as Environment attributes because that sets them up to be called # correctly later by our emitter. - env['PROGEMITTER'] = _Automoc(env.StaticObject, + env['PROGEMITTER'] = _Automoc('StaticObject', uicDeclBld,mocFromHBld,mocFromCppBld) - env['SHLIBEMITTER'] = _Automoc(env.SharedObject, + env['SHLIBEMITTER'] = _Automoc('SharedObject', uicDeclBld,mocFromHBld,mocFromCppBld) - env['LIBEMITTER'] = _Automoc(env.StaticObject, + env['LIBEMITTER'] = _Automoc('StaticObject', uicDeclBld,mocFromHBld,mocFromCppBld) # Of course, we need to link against the qt libraries env.Append(CPPPATH=os.path.join('$QTDIR', 'include')) |