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
