Czy istnieje sposób na skomentowanie wielu wierszy w plikach makefile, tak jak w składni języka C /* */
?
Czy istnieje sposób na skomentowanie wielu wierszy w plikach makefile, tak jak w składni języka C /* */
?
Odpowiedzi:
Nie, /* */
w Makefile nie ma nic podobnego do komentarzy w stylu C. Jak ktoś inny zasugerował, możesz zrobić komentarz wielowierszowy, używając kontynuacji linii. Na przykład:
# This is the first line of a comment \
and this is still part of the comment \
as is this, since I keep ending each line \
with a backslash character
Wyobrażam sobie jednak, że prawdopodobnie chcesz tymczasowo skomentować fragment pliku makefile w celu debugowania, a dodawanie odwrotnego ukośnika w każdej linii nie jest zbyt praktyczne. Jeśli używasz programu GNU make, sugeruję użycie ifeq
dyrektywy z celowo fałszywym wyrażeniem. Na przykład:
ifeq ("x","y")
# here's all your 'commented' makefile content...
endif
Mam nadzieję, że to pomoże.
Uwaga na temat pomysłu użycia ifeq
do tworzenia komentarzy wielowierszowych w make (1). Nie działają zbyt dobrze, ponieważ jeśli napiszesz:
ifeq (0,1)
do not risk ifeq comments
else trouble will find you
ifeq is even worse
endif
Tekst między ifeq i endif będzie nadal przetwarzany przez make, co oznacza, że nie możesz napisać tego, co chcesz w tej sekcji. A jeśli chcesz napisać długi komentarz i napisać w nim, co chcesz (w tym znaki $, dwukropki i inne, które mają znaczenie dla marki), musisz skomentować każdy wiersz. Więc dlaczego ifeq
... :)
define BOGUS
lines
.....
endef
ifeq
przypuszczam, ale działa dla mnie. dzięki!
Nie jest to dokładnie to, czego szukasz, ale podobny duch. Nie spodziewam się, że będzie to akceptowana odpowiedź, ale może może komuś pomóc.
Zakładając, że edytujesz swoje pliki makefile w VIM:
albo zdecyduj, które linie chcesz skomentować, albo wybierz je za pomocą 'v'.
Następnie możesz użyć wyrażenia regularnego s/^/#/
aby skomentować wiersze
i s/^#//
przywrócić je.
- Uwagi--
:
(dwukropek).,+n
'<,'>s/^/#/