En copiant-collant la définition des ASFLAGS de aversive_project.mk vers
aversive_module.mk, et en changeant ASFLAGS par MODULES_ASFLAGS, ça
compile sans erreur.
Il y a peut-être un endroit plus "convenable" où déclarer
MODULES_ASFLAGS. Ne connaissant pas la structure des différente .mk, je
laisse en l'état, ça fonctionne et ça ne doit pas interférer avec
le reste.

~ryder

Olivier 'zer0' MATZ a écrit :
> Yep,
> 
> Alors, en théorie ça devrait marcher, mais comme ça n'a jamais été
> testé, en pratique ça ne marche pas (logique).
> 
> Par contre, je pense qu'il n'y a pas grand chose à faire pour que ça
> fonctionne correctement. Dans mk/aversive_modules.mk, il y a lignes 55
> et 56 la règle en question:
> 
> compiler_files/%.$(HOST).o : %.S
>       $(CC) -c -Wa,-adhlns=$(@:.o=.lst) $(MODULES_ASFLAGS) $< -o $@
> 
> Il manque peut etre tout simplement les ASFLAGS, définis dans
> mk/aversive_project.mk, ligne 70 à 80. Mais à mon avis, puisque ça
> marche dans un projet (ça je l'ai testé), il doit pas manquer grand
> chose.
> 
> Oliv
> 
> On Mon, May 07, 2007 at 12:58:06PM +0200, Benoît Ryder wrote:
> > J'aurais besoin de mettre un source assembleur (.S) dans un module.
> > J'ai donc fait comme pour un projet en ajoutant dans le Makefile du
> > module :
> > ASRC = extramem.S
> > 
> > À la compilation l'instruction n'est pas la bonne (pas étonnant) :
> > avec le .S dans le module :
> > avr-gcc -c -Wa,-adhlns=compiler_files/extramem.avr.lst  extramem.S -o
> > compiler_files/extramem.avr.o
> > 
> > avec le .S dans le projet :
> > Assembling: extramem.S
> > avr-gcc -c  -mmcu=atmega128 -I. -I../../include -I../../modules
> > -I../../modules/devices/camera/ccau -I../../modules/comm/mouais
> > -I../../modules/comm/uart -I../../modules/base/wait
> > -I../../modules/base/list -I../../modules/debug/error
> > -I../../modules/comm/i2c_ryder -I../../modules/base/utils -Wa,-gstabs -x
> > assembler-with-cpp extramem.S -o compiler_files/extramem.avr.o
> > 
> > Y'a-t-il quelque chose de plus à faire pour inclure le .S dans le module
> > ou est-ce que ça n'est tout simplement pas possible (avec les
> > scripts Makefile actuels) ?
> 
> _______________________________________________
> Avr-list mailing list
> Avr-list@droids-corp.org
> CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
> WIKI : http://wiki.droids-corp.org/index.php/Aversive
> DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
> BUGZILLA : http://bugzilla.droids-corp.org
> COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog

_______________________________________________
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog

Répondre à