I think that is fantastic.  Right now it feels a bit mysterious where the
come from and its a bit awkward to share them.

I was also thinking about target specific options.  Some were compiler
options like debug or optimization that you may want to turn off for
simulation targets etc, but I think that current method would work ok for
these since they are limited.  What kinds of target specific options were
you thinking of? Can you give some examples?


Paul

On 2/12/16, 9:31 AM, "will sanfilippo" <[email protected]> wrote:

>+1 sounds great to me.
>
>> On Feb 11, 2016, at 11:05 PM, Christopher Collins <[email protected]>
>>wrote:
>> 
>> Hello all,
>> 
>> It occurs to me that in the newt world, there is one entity that is not
>> like the others: targets.  Everything else--pacakges, projects, compiler
>> definitions--all share the same structure: a .yml file and some source
>>files
>> enclosed in a directory.  Targets, on the other hand, are tables stored
>> in a sqlite database.  I was wondering if it would be better if targets
>> had the same structure as everything else.
>> 
>> I am envisioning a directory called "targets".  Each subdirectory in the
>> targets directory would contain an individual target definition.  I
>> think this change would provide several benefits:
>> 
>> 1. Targets could be shared and downloaded using the newt package
>>   manager.
>> 
>> 2. Target definitions would be stored as yml files.  This would bestow a
>>   simple means of reading, modifying, and copying targets, the ability
>>   to add comments next to target variables, and all the other benefits
>>   inherent in human-readable configuration files.
>> 
>> 3. A target's directory could contain target-specific header files.
>> 
>> The last point is what spurred me to write this email.  I was thinking
>> about the best way to allow compile-time configuration of packages.
>> Modifying settings at the project or package level is not precise enough
>> for some uses.  There are some cases where settings need to be
>> configured at the target level.  The newt tool allows you to specify
>> compiler flags for each target (via the "cflags" variable), but this
>> becomes unwieldy when you need to configure hundreds of settings.
>> 
>> Anyway, just a thought.  Feel free to chime in with your own :).
>> 
>> Thanks,
>> Chris
>

Reply via email to