J'ai cherché à partir d'Internet sur la façon d'écrire notre propre fonction de decider dans scons, quant à la façon/lorsqu'un fichier source doit être reconstruit, comme ceci:Est-ce que la fonction de décision personnalisée de scons doit être membre de la classe?
Program('hello.c')
def decide_if_changed(dependency,target,prev_ni):
if self.get_timestamp()!=prev_ni.timestamp:
dep=str(dependency)
tgt=str(target)
if specific_part_of_file_has_changed(dep,tgt):
return true;
return false;
Decider(decide_if_changed)
J'ai un hello.c, aucun problème , mais lors de l'exécution scons il demande une erreur de python:
$ scons -Q
scons: *** [o.o] NameError : global name 'self' is not defined
auto est le mot-clé python mentionner une fonction de membre de la classe. Ici, dans le fichier SContruct, il y a une classe mais juste une fonction decide_if_changed. Question:
Do I have to add a class here? Why it prompts python error saying 'self' is not defined?
This example script a function call of specific_part_of_file_has_changed, is it a scons's own file that can be called by any pythong statement?