I've been revising my system administration methodology a bit, and decided that I wanted to store it all in a git repository and use Makefiles to install things that change. It's going okay, and I quite like the ability to track my changes so easily.
That said, make is complaining about something I can't seem to spot.
Each subdirectory has its own Makefile which includes the following clause:
where
SUBDIRS = list of subdirectories
ECHO = echo (shell version)
This reads correctly, and when I run it with make -n, it looks correct as well, but I consistently get (for example):
Where is that syntax error coming from? I can't seem to spot it; can any of you? (FYI: The install: clause in each directory's Makefile is empty at the moment; it definitely seems to be coming from the install-tree: clause, and if I remove the $(MAKE) line, it works just fine, so it seems to be that line specifically.
That said, make is complaining about something I can't seem to spot.
Each subdirectory has its own Makefile which includes the following clause:
Code:
install-tree: install
@for i in $(SUBDIRS); do \
$(ECHO) "Make all in $$i . . . "; \
$(ECHO) "($(MAKE)" $(.MAKEFLAGS) "-C $$i install-tree)"; \
$(MAKE) $(.MAKEFLAGS) -C $$i install-tree; \
$(ECHO) "$Done with $$i."; \
done
where
SUBDIRS = list of subdirectories
ECHO = echo (shell version)
This reads correctly, and when I run it with make -n, it looks correct as well, but I consistently get (for example):
Code:
Make all in www . . .
(make -C www install-tree)
Syntax error: ")" unexpected (expecting "done")
Where is that syntax error coming from? I can't seem to spot it; can any of you? (FYI: The install: clause in each directory's Makefile is empty at the moment; it definitely seems to be coming from the install-tree: clause, and if I remove the $(MAKE) line, it works just fine, so it seems to be that line specifically.