Chcę wstrzyknąć cel "Oczyszczanie", który zależy od wielu innych obiektów docelowych kończących się przed wygaśnięciem i plików dziennika gzip. Ważne jest, aby nie gzip wcześnie, ponieważ może to spowodować awarię niektórych narzędzi.W scons, w jaki sposób mogę wstrzyknąć cel do zbudowania?
W jaki sposób mogę wprowadzić cel oczyszczania, aby Scons został wykonany?
np. Mam cele foo i bar. Chcę wprowadzić nowy cel niestandardowej nazwie „czyszczenia”, który zależy od foo i bar i biegnie po obaj zrobione bez użytkownik posiadający określenie
% scons foo cleanup
chcę, żeby wpisać:
% scons foo
ale mają scons wykonać tak, jakby użytkownik miał wpisane
% scons foo cleanup
próbowałem tworzenia cel oczyszczania i dołączanie do sys.argv, ale wydaje się, że scons już przetwarzane przez sys.argv czas dostanie się do mojego kodu, więc nie przetwarza celu "czyszczenia", który ręcznie dołączam do sys.argv.
Nieudokumentowane funkcje FTW! :-) Zdarza mi się, że często kończę szukać źródła dla SCons, kiedy trafiam w te "nierozwiązywalne" problemy ... – richq
Czy to się psuje, gdy używana jest flaga --random? Kolejność, w jakiej są tworzone cele dostarczone przez użytkownika, jest nieokreślona, o ile wiem. – BenG
Wstrzykuję cel, ale mam zależności od innych celów, więc pasuje idealnie do wykresu. Nawet jeśli użyjesz '' -random'', będzie to tylko randomizacja równoczesnych kroków - a nie kroków, które mają wzajemne zależności. Zależności są zawsze spełnione, zanim rozpocznie się wykonywanie polecenia zależnego budowania celu. –