summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Tool/qt.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2004-01-25 01:45:35 (GMT)
committerSteven Knight <knight@baldmt.com>2004-01-25 01:45:35 (GMT)
commit3137cbe6b869e0b69c1fafcc6b692ccd099c2109 (patch)
tree18faff1ef52b1d67a14bc6ad0c9a68f60401cf85 /src/engine/SCons/Tool/qt.py
parentc31d933609202d40181640364bebfa8662b3df85 (diff)
downloadSCons-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.py15
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'))