Re: Makefile
* Markus Schulz <msc@antzsystem.de> wrote:
> Am Donnerstag, 10. November 2005 16:47 schrieb Roland M. Kruggel:
> > ich bin gerade dabei einen Makfile zu erstelle. Klappt soweit auch,
> > bis auf eine kleinigkeit die ich nicht hin bekomme.
> >
> > Ich will aus dem 'Hauptmakefile' den nächsten Makefile in einem
> > Unterverzeichniss aufrufen. Kriegs nicht hin. Kann mir bitte mal
> > jemand einen Tip geben.
>
> noch eine Variante:
>
> SUBDIRS = dir1 dir2 dir3
>
> %:
> @echo -n "Making... ";
> @echo $(SUBDIRS)
> @set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ;done
Wo wir gerade so schön dabei sind. Hat jemand von Euch 'ne Ahnung, wie
ich ein Schleifenkonstrukt ählich obigem hinbekomme, bei dem im do-Teil
auftretende Fehler ignoriert werden?
$ ls
bar Makefile
$ cat bar
bar
$ cat Makefile
all:
@-set -e; for i in foo bar; do cat $$i; done
$ make
cat: foo: Datei oder Verzeichnis nicht gefunden
make: [all] Fehler 1 (ignoriert)
Hier sagt er zwar schön er hat den Fehler ignoriert, aber hat die
Ausführung der Schleife de facto nach dem ersten Durchlauf abgebrochen.
Da das ganze auf der Shell funktioniert
$ for i in foo bar; do cat $i; done
cat: foo: Datei oder Verzeichnis nicht gefunden
bar
muss es wohl eine Intelligenz von make sein, die bei Beispiel 2
interveniert, den Fehler abfängt und die weitere Ausführung verhindert.
Wie kann man das unterdrücken?
- sebastian
Reply to:
- References:
- Makefile
- From: "Roland M. Kruggel" <rk-liste@gmx.de>
- Re: Makefile
- From: Markus Schulz <msc@antzsystem.de>