Re: Make Problem

Ralf Corsepius <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
On Sat, 2004-10-09 at 15:50, Christian Boltz wrote:

> SUBDIRS = subdir1 subdir2 subdir3
> 
> clean:
>     @for d in $(SUBDIRS); do \
>         $(MAKE) -C $$d clean || exit $? ; \
>     done
> 
> (das "|| exit $?" ist wichtig, damit im Fehlerfall auch der make-Lauf 
> abbricht) Für weitere Inspirationen kann ich Dir die Makefiles der Fontlinge 
> empfehlen (bei Sourceforge im CVS zu betrachten).

Es ist immer wieder interessant zu lesen, was manche Leute als
allgemeingültig zu verkaufen versuchen ;-)

2 Portabilitätsfehler aus deinem Beispiel:

1. "for d in $(SUBDIRS)" ist nicht portabel.
2. "make -C" ist nicht portabel.

[Es hat seine Gründe, warum die von automake verwendeten Konstrukte
scheinbar umständlich sind. Wenn dein Paket nur unter Linux/GNU
übersetzbar sein soll, sind diese Konstrukte in Ordnung, sonst aber
nicht.
]

>  Obiges Schnipsel ist 
> eine vereinfachte Form aus fontlinge_rc/modules/Makefile.
> Recht interessant ist übrigens auch die Implementation von "make dist" 
> auf Basis von CVS/Entries ;-)  (fontlinge_rc/Makefile)

Manche Leute kommen auf Ideen ... :-()

Ralf




-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.