[Tinyos Core WG] Re: Printf

Philip Levis pal at cs.stanford.edu
Tue Oct 24 15:42:24 PDT 2006


On Oct 24, 2006, at 2:05 PM, Kevin Klues wrote:

> I can move the include into the makefile, I just had it in the
> .platform file since that is where most of the other directories under
> lib had been included.  Where does it make the most sense though?  If
> you only plan on using it at the application level, then it makes
> sense in the makefile, if you plan on using it to debug lower level
> components, however, it is convenient to have it in the .platform file
> so that you don't have to remember to include it in every application
> that you are trying to compile.
>
> I noticed that the lib/net folder has to be included in the makefile
> for the application as well if you plan on doing routing.  Is this so
> that a different routing scheme can be chosen at compile time rather
> than hardwiring a default one for use?  I think this may be confusing
> for someone who doesn't care about which routing scheme is used, just
> that it works.  It may make sense to include this folder as well in
> the .platform file or mabye a .defaults file for the platform that
> sets up the default locations of particular services.  Other
> interchangable directories could be for peforming different mac
> protocols, etc. I'm not suggesting to do this necessarily before the
> release but it may be something worth thinking about.

The original idea behind tos/lib was that it represents libraries you  
can optionally include. Just as you include paths in your CLASSPATH,  
or -l flags to a C compiler, you can add libraries to your app.

If we want there to be a standard set of libraries that are always  
included (in the way C does), then it might be useful to just have  
this as a file separate from .platforms, which are includes for a  
given platform.

I'm on the fence on whether lib/printf should be automatically  
included or not; I didn't mean to suggest that it shouldn't, rather  
that maybe we should consider the question carefully, rather than  
just suddenly add a (relatively untested) library module to be  
included by default on every platform.

Phil


More information about the Tinyos-2.0wg mailing list