Piszę Makefile i chcę użyć rodzajowe regułę z symboli wieloznacznych, jakUtwórz regułę w makefile tylko dla zestawu plików
%: bkp/%
cp $< [email protected]
Ale chciałem tę regułę jest ważna tylko dla nielicznych określone pliki. Chciałem zdefiniować zmienną z listy, na przykład
file_list = foo.c bar.c zzz.c
i skonfigurować reguły tak jest ważna tylko w przypadku plików, które są wymienione w tej zmiennej. Jak mogę to zrobić?
Ty tylko lista plików '.c'; czy są jakieś inne pliki ".c" w katalogu? Czy są jakieś inne pliki, które należy zarchiwizować? Jeśli dodasz kolejny plik ".c", czy będzie on również zapisany? I dlaczego nie używasz systemu kontroli wersji (VCS), aby chronić swoją pracę? –
@ Jonathan: ... jak możesz domyślić się, że on (i) nie używa VCS? –
@ Jonathan Jeśli naprawdę musisz wiedzieć, to właśnie robię i dlaczego nie mogłem po prostu użyć symbolu wieloznacznego: Stworzyłem katalog "myconfig" w moim katalogu domowym, który jest na VCS. Ten katalog zawiera kopie plików w moim katalogu domowym, na przykład ~/.bashrc, ~/.emacs i inne. Chcę, aby reguła kopiowała oryginalny plik do tego katalogu, ale chcę go zabezpieczyć i uniknąć np. kopiowanie pliku Makefile z mojego katalogu domowego przez Makefile w tym katalogu. – dividebyzero