accès aux groupes de discussion, consultation et publication d'articles, recherche de "newsgroups"...
membres, identifiez-vous
é-mail Mot de passe
nouveau ? mot de passe oublié ?
Chargement... Chargement en cours...

Groupes français belges canadiens suisses internationaux Nétiquette
Échangez opinions et commentaires dans les forums de discussion.

makefile et généricité

 [  Nouvelle Discussion Nouvelle discussion  |  Répondre au groupe Répondre au groupe  |  fr.comp.os.unix ] 

Retour : Accueil du site fr comp os unix   charte stats de ce groupe


  Sujet:   makefile et généricité  
 De: ...@elzevir.fr (mpg)
 Groupes: fr.comp.os.unix
 Organisation: Service de news de lacave.net
 Date: 16. Jul 2008, 16:37:12
Bonjour,

je suis plus ou moins débutant en makefiles, et je suis actuellement en
train d'essayer d'en faire un pour convertir des répertoires de pages de
man en pdf et en html. Pour l'instant, j'ai un Makefile à la racine
(répertoire man) comme suit :

DIR = man1 man5

all: $(DIR)
pdf: $(DIR)
html: $(DIR)
clean: $(DIR)

$(DIR):
        $(MAKE) -C $@ $(MAKECMDGOALS)

..PHONY: $(DIR)

et deux, resp. dans man1 et man5 (seules sections présentes) comme ça :

SRC = $(wildcard *.5)
PDF = $(patsubst %.5, %.pdf, $(SRC))
HTML = $(patsubst %.5, %.html, $(SRC))

all: html pdf
pdf: $(PDF)
html: $(HTML)

clean:
        -rm -f -- $(PDF) $(HTML)

%.pdf: %.5
        groff -man $< | ps2pdf - $@

%.html: %.5
        groff -man -Thtml $< > $@

en remplaçant partout .5 par .1 pour man1/Makefile.

La ressemblance très forte entre les deux derniers fichiers me fait penser
qu'il y aurait sans doute moyen de factoriser un peu tout ça, mais je ne
vois pas trop comment procéder.  J'ai essayé de mettre des règles comme :

%.pdf: %.$(SEC)
        groff -man $< | ps2pdf - $@ 

dans le Makefile racine puis de définir SEC = 5 dans le man5/Makefile,
visiblement ce n'est pas du goût de make. Pour la génération des listes PDF
et HTML, je ne vois pas non plus. 

Je suis preneur de toute piste ou pointeur vers la partie adéquate de la
documentation. Le truc n'a pas besoin d'être portable donc si des
fonctionnalités spécifiques de GNU make peuvent aider, ça ne pose pas de
problème de les utiliser.

Merci d'avance !

Manuel.


DateSujet  Auteur
01.01.
o 
Groups Explorer contact votre avis comment ça marche? rechercher un groupe suggérer un groupe abuse accueil du site   Imprimer cette page   Envoyer cette page à un(e) ami(e)
Usenet Gratuit