changeset fdf49f35d2a4 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=fdf49f35d2a4
description:
        build: Add missing dependencies when building param SWIG interfaces

        This patch adds an explicit dependency between param_%s.i and the
        Python source file defining the object. Previously, the build system
        didn't rebuild SWIG interfaces correctly when an object's Python
        sources were updated.

diffstat:

 src/SConscript |  7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diffs (20 lines):

diff -r 73c3eb0dd733 -r fdf49f35d2a4 src/SConscript
--- a/src/SConscript    Mon Sep 24 18:03:43 2012 -0400
+++ b/src/SConscript    Tue Sep 25 11:49:40 2012 -0500
@@ -634,11 +634,14 @@
     SwigSource('m5.internal', i_file)
 
 # Generate SimObject SWIG wrapper files
-for name in sim_objects.iterkeys():
+for name,simobj in sim_objects.iteritems():
+    py_source = PySource.modules[simobj.__module__]
+    extra_deps = [ py_source.tnode ]
+
     i_file = File('python/m5/internal/param_%s.i' % name)
     env.Command(i_file, Value(name),
                 MakeAction(createSimObjectSwigWrapper, Transform("SO SWIG")))
-    env.Depends(i_file, depends)
+    env.Depends(i_file, depends + extra_deps)
     SwigSource('m5.internal', i_file)
 
 # Generate the main swig init file
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to