makefile avec un comportement différent dans la même arborescence
Bonjour,
Je bloque depuis quelques temps sur un makefile. J'ai un répertoire appelé test qui contient un répertoire src avec les fichiers a.c, b.c et c.c.
Lorsque mon makefile est dans le répertoire src, tout fonctionne bien mais si je le mets dans le répertoire test, plus rien ne fonctionne. J'ai donc simplifié le makefile pour trouver mon erreur. Depuis que je l'ai trouvé, je ne vois pas comment la corriger.
Ce Makefile dans le répertoire test/src fonctionne.
Code:
1 2 3 4 5
| SRC= $(wildcard *.c)
OBJ=$(SRC:.c=.o)
test:
@echo (SRC)
@echo (OBJ) |
renvoie deux lignes
Code:
1 2
| a.c b.c c.c
a.o b.o c.o |
Ce makefile dans le répertoire test ne fonctionne pas
Code:
1 2 3 4 5 6
| SRCX= ./src
SRC= $(SRCX)/$(wildcard *.c)
OBJ=$(SRC:.c=.o)
test:
@echo (SRC)
@echo (OBJ) |
et renvoie deux lignes
Si je remplace $(wildcard *.c) par les fichiers en dur,cela fonctionne. Mais je veux la génération automatique des fichiers.
Une piste est la bienvenue.
Autre problème rencontré:
Si j'ai l'arborescence suivante test/src/include/header1/a.h , test/src/include/header2/b.h et test/src/include/header3/c.h, alors c'est la catastrophe.
Je ne vois pas comment indiquer dans mon option I$(INC) les différents répertoires des headers.
Une piste ?
Merci à vous tous par avance.