Hi On Sun, Sep 14, 2014 at 12:48 AM, Eric Decker <cire...@gmail.com> wrote:
> > > On Sat, Sep 13, 2014 at 11:16 PM, Michael Andersen < > m.ander...@berkeley.edu> wrote: > >> Hi >> >> I am working on the git master, >> > > I assume you mean gh:tinyos/tinyos-main, yes? > Yeah, sorry. > > Also do you have a cloned fork? If you publish on github I can look at > what you have done so far. > > >> and I am working on a new cortex based platform. >> > > sweet. > > >> The problems arose because the in-tree lib/printf does not play nicely >> with the arm libc functions, so I wrote a replacement that handles >> everything cleanly, but I would like to force it to be included before >> lib/printf. >> > > lib/printf only gets included when pulled in via a platform file. > Unfortunately, this is not quite true, and therein lies the rub. If I compile say NullC, which has no additional goals in the makefile, then the nescc invocation looks like this: apps/Null$ make storm [INFO] compiling NullAppC to a binary nescc -o build//main.exe -Os -gcc=arm-none-eabi-gcc -Wnesc-all -fnesc-include=tos -fnesc-scheduler=TinySchedulerC,TinySchedulerC.TaskBasic,TaskBasic,TaskBasic,runTask,postTask -fnesc-cfile=build//app.c -fnesc-separator=__ *<includes and stuff from platform file>* however if I compile say UDPEcho, then it looks like this: nescc -o build//main.exe -Os* <stuff from makefile>* -gcc=arm-none-eabi-gcc -Wnesc-all -fnesc-include=tos -fnesc-scheduler=TinySchedulerC,TinySchedulerC.TaskBasic,TaskBasic,TaskBasic,runTask,postTask -fnesc-cfile=build//app.c -fnesc-separator=__ - *<stuff from blip: *-DCC2420_HW_ACKNOWLEDGEMENTS -DCC2420_HW_ADDRESS_RECOGNITION -DPACKET_LINK -DTOSH_DATA_LENGTH=112 -I../../tos/lib/net/ *-I../../tos/lib/printf/* -I../../tools/tinyos/c/blip/ -I../../tos/lib/net/blip/ -I../../tos/lib/net/blip/interfaces/ -I../../tos/lib/net/blip/nwprog/ -I../../tos/lib/net/blip/shell/ -I../../tos/lib/net/blip/serial/ -I../../tos/lib/net/blip/platform/ -I../../tos/lib/net/blip/icmp/ -I../../tos/lib/net/blip/dhcp/ -I../../tos/lib/net/rpl *>* *<stuff from platform file>* so you see, blip adds flags to nescc that have higher priority than the platform file, including tos/lib/printf. > so you could put your new printf into say tos/lib/printf_arm or > tos/lib/printf_new and then change what the platform file invokes. > > That should work. > I have my changes in -I../../tos/platforms/storm/lib/printf/ where I override printf.h and SerialPrintfC, so as long as /tos/lib/printf is not included, it works fine. > >> The alternative is to modify lib/printf to be aware of my platform, but I >> would like to avoid that if possible. >> > > yeah you really don't want to do that. > > > > >> Regards >> Michael >> >> On Sat, Sep 13, 2014 at 8:36 PM, Eric Decker <cire...@gmail.com> wrote: >> >>> First, what code body are you working on? >>> >>> The answer is different for the development trunk than the last released >>> TinyOS (2.1.2). >>> >>> Also what platform are you actually working on? >>> >>> On Sat, Sep 13, 2014 at 4:13 PM, Michael Andersen < >>> m.ander...@berkeley.edu> wrote: >>> >>>> Hi >>>> >>>> I am wanting to change the "printf.h" that is used by blip, but any >>>> PFLAGS include paths added in the foo.platform file in >>>> support/make/platforms/ appear after the include flags for the goals added >>>> in the application makefile, leading to them being ignored. How do I solve >>>> this in the correct way? >>>> >>>> This is just a specific example of a more general question of how to >>>> add includes that are higher priority than those specified by extras like >>>> blip. >>>> >>>> Thanks >>>> Michael >>>> >>>> _______________________________________________ >>>> Tinyos-help mailing list >>>> Tinyos-help@millennium.berkeley.edu >>>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >>>> >>> >>> >>> >>> -- >>> Eric B. Decker >>> Senior (over 50 :-) Researcher >>> >>> >> > > > -- > Eric B. Decker > Senior (over 50 :-) Researcher > >
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help