Salut à tous,

dans le cas d'une migration d'un noyau 2.4 vers un 2.6, pour une architecture mipsel, je dois insérer des drivers existants uniquement sous 2.4. Donc je me retape tous les makefiles de ces drivers et j'ai un problème avec un d'entre-eux.
Voilà en fait le makefile classique d'un driver en 2.6 (supposons qu'il s'appelle toto) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
TOTO_OBJS		:= toto1.o toto2.o
obj-$(CONFIG_TOTO) += toto.o
toto-objs := $(TOTO_OBJS)
En gros, il me compile mon toto1.c et mon toto2.c en toto1.o et toto2.o puis il link les 2 en un fichier toto.o (et puis après il crée son toto.ko mais c'est pas ce qui m'intéresse)

Maintenant mon problème c'est que j'ai pas toto1.c et toto2.c. J'ai uniquement toto1.o et toto2.o, le code source du driver n'étant pas fourni. Donc j'ai essayé (depuis 3 jours ) des solutions mais rien n'y fait. A chaque foit j'ai un :
make[4]: *** No rule to make target `drivers/net/toto/toto.c' , needed by `drivers/net/toto/toto.o'. Stop.
J'ai bien essayé de lui mettre une règle pour toto.o de ce style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
TOTO_OBJS		:= toto1.o toto2.o
toto.o : toto1.o toto2.o
	$(LD) -r -o toto.o $(TOTO_OBJS)
obj-$(CONFIG_TOTO) += toto.o
Mais il ne veut rien entendre.

Est-ce que quelqu'un aurait une solution à me proposer parce que là je sèche de chez sécher

Merci d'avance