Re: [Avr-list] Source assembleur dans un module
Je pense que le MODULE_ devant ASFLAGS n'a pas lieu d'etre: sinon on devrait avoir les meme choses pour les flags de compilation par exemple. Qui plus est, je pense que si on veut ajouter des flags specifiques à un module, ça devrait marcher en ajoutant un ASFLAGS+=pouet dans le Makefile du module. Je corrige ça dans la HEAD directement. Merci. Olivier On Mon, May 07, 2007 at 01:58:29PM +0200, Benoît Ryder wrote: > 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 ___ 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
Re: [Avr-list] Source assembleur dans un module
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
Re: [Avr-list] Source assembleur dans un module
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