2009-07-28 11 views
8

Próbuję wykopać jeden projekt oparty na autotoolach, w rzeczywistości duży. Pracuję nad niewielką jego częścią, podkatalogiem. I muszę ciągle dodawać/przenosić/usuwać pliki i katalogi w tej małej części.Regeneruj pliki .Plo bez uruchamiania ./configure

Uruchamianie ./konfiguruj na najwyższym poziomie za każdym razem nie tylko czasochłonnym, ale powoduje, że całe drzewo obiektów staje się nieważne (przykro mi z powodu warunków, ale jestem w tym trochę nowy). Więc wymyśliłem, jak zregenerować Makefile.in z Makefile.am (uruchamiając ścieżkę automake/to/my/part), i znalazłem sposób na regenerację Makefile z Makefile.in w drzewie kompilacji (przez uruchomienie ./config.status ścieżka/do/moja/część). Ale jest coś, czego wciąż nie mogę zrozumieć: jak zregenerować wszystkie pliki zależności (.deps/*. Plo wewnątrz każdego podkatalogu w drzewie kompilacji). Rzeczywiście, uruchomienie konfiguracji ponownie rozwiązuje problem. Tak, moje pytanie brzmi: jak zregenerować pliki zależności bez działa ponownie skonfigurować? Z góry dziękuję.

Odpowiedz

9

Może odpowiedź jest trochę późno ...

Zakładam, że wyczyszczeniu path/to/my/part i zregenerowana Makefile przez polecenia wymienionych w swoim pytaniu.

Następnie wykonać

rm .deps/* 

usunąć stare zależności i

grep "^include " Makefile | sed -e 's/^include .\///;s/\$(DEPDIR)/.deps/' | xargs touch 

kwerendy Makefile dla zależnościami i generuje puste pliki fałszywe. Teraz

make 

powinien skompilować twój kod i zregenerować zależności jako efekt uboczny.

Uwaga: I zakładamy DEPDIR być ustawiony na domyślny (.deps) i że nie ma dalszych include dyrektyw twojej Makefile.am. Jednak zmiana tego powinna być prosta.

Powiązane problemy