Derniers journaux de Obsidian :
- [08/03@17:14] Problèmes de compilation g++ (suite)
- [24/02@11:22] Problème avec G++ 3 .
- [14/12@15:23] SU Révolutions !
- [06/12@23:41] Distribs Linux reconnaissant le Serial ATA ?
- [05/12@23:46] 6 votes positifs à gagner !
- [04/12@13:59] Nom des workspaces sous WindowMaker
- [25/11@14:25] Usbdump ?
- [13/10@15:00] Disques défectueux en cascade ...
- [29/09@22:14] Carte 3C509 et changement de port.
- [23/09@23:30] Mandrake 9.1: Deux problèmes techniques.
- [14/09@15:14] Géométrie de disque et Mandrake 9.1
- [06/09@13:00] Le SPAM le plus ridicule de l'année !
- [28/08@00:24] Au plus mauvais moment !
- [18/08@21:42] J'ai fini Super Methane Brothers !
- [07/07@09:43] Apple Display Software sous Unix ?
- [30/06@17:34] Aidez-moi à convertir un utilisateur supplémentaire à OpenOffice !
- [30/05@22:28] Comment ca marche, les IRQ sur PC ?
- [28/05@15:13] Comment ça marche, les IRQ sur PC ?
Journal : Makefile et substitutions.
Posté par Obsidian () le 22 mars 2004
0
Bonjour à tous les pros de la recompilation.J'essaie d'écrire les règles de mon Makefile, qui marchait bien avec le « make » de Solaris, de façon à résoudre le petit problème suivant:
1) Dans le répertoire de mon projet, j'ai plusieurs sous-répertoires correspondant chacun à une section particulière. Appelons-les foo,bar et toto.
2) J'ai une variable OBJS=foo bar toto en tête de mon makefile.
3) Chacune de ces sections contient plusieurs programmes qui sont finalement résolus respectivement en foo.o, bar.o et toto.o au sein du sous-répertoire correspondant.
Le problème: résoudre OBJS en "foo/foo.o bar/bar.o toto/toto.o", soit le nom du répertoire suivi du nom du fichier objet, de façon à effectuer le link final en une fois.
Je sais que l'on peut ajouter un suffixe ou faire ce genre de substitution avec $(OBJS:%=%.o) par exemple, mais gmake n'accepte de remplacer le % de destination qu'une seule fois, laissant tels quels les suivants. Donc impossible de faire un $(OBJS:%=%/%.o) par exemple, alors que le make de Sun lui veut bien.
Comment faites-vous ?
Merci à tous pour votre aide !
> Lire le journal (3 commentaires, moyenne: 1,7).
Re: Makefile et substitutions.
Posté par
Romuald Delavergne () le 22/03/2004 à 12:38. (lien). Évalué à 2.
OBJS=foo bar toto
OBJS:=$(join $(addsuffix /, $(OBJS)), $(addsuffix .o, $(OBJS)))
-
[^]Re: Makefile et substitutions.
Les journaux sont destinés à des informations qui ne sont pas suffisamment intéressantes
pour être validées en dépêche (sinon n'hésitez pas à proposer votre information en
dépêche), qui sont sans rapport avec Linux ou le libre, ou simplement pour donner votre
avis. Si vous désirez poser une question, merci d'utiliser 

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.