diff --git a/playground/strip/strip.py b/playground/strip/strip.py index 1805ea99..0ab5069d 100644 --- a/playground/strip/strip.py +++ b/playground/strip/strip.py @@ -35,16 +35,17 @@ def wrap_compiled_task(classname): # override the class to add a new 'run' method # such an implementation guarantees that the absence of race conditions # + cls1 = Task.classes[classname] + cls2 = type(classname, (cls1,), {'run_str': '${STRIP} ${TGT[0].abspath()}'}) + cls3 = type(classname, (cls2,), {}) + def run_all(self): if self.env.NO_STRIPPING: return cls1.run(self) return cls1.run(self) or cls2.run(self) + cls3.run = run_all - cls1 = Task.classes[classname] - cls2 = type(classname, (cls1,), {'run_str': '${STRIP} ${TGT[0].abspath()}'}) - cls3 = type(classname, (cls2,), {'run': run_all}) - -for k in 'cprogram cshlib cxxprogram cxxshlib fcprogram fcshlib'.split(): +for k in 'cprogram cshlib cxxprogram cxxshlib fcprogram fcshlib dprogram dshlib'.split(): if k in Task.classes: wrap_compiled_task(k)