Piszę funkcję Pythona taką jak zamiana ciągów znaków i wywoływana w scons skrypt.SCONS: Jak wywołać samookreśloną funkcję Pythona w skrypcie scons i wykonać prawidłą zależność
def Replace(env, filename, old, new):
with open(filename,"r+") as f:
d = f.read()
d = d.replace(old, new)
f.truncate(0)
f.seek(0)
f.write(d)
f.close()
env.AddMethod(Replace,'Replace')
W SConscript
lib = env.SharedLibrary('lib', object, extra_libs)
tmp = env.Command([],[],[env.Replace(somefile, 'A', 'b')])
env.Depends(tmp,lib)
czego oczekuję, to uruchomienie metody replace() po lib zbudowany. ale scons zawsze uruchamiaj Replace() w pierwszej rundzie parsowania frazy. Wygląda na to, że brakuje mi zależności.