2 ms·
The purpose of the question is configuring software before building. You typically want to do it in automated fashion as opposed to any cut and paste. A menu-ba
by Aegean 16y ago
The purpose of the question is configuring software before building. You typically want to do it in automated fashion as opposed to any cut and paste. A menu-based system is easy to use, and with a configuration mini-language you can produce complex configuration data with a few keystrokes.
CML2 already has most of this. It is a mini-language written in Python so that you can create rules for your configuration. Based on your selection of symbols, the configuration rules decide on the visibility and/or value of other symbols. All symbols are gathered in hierarchical menus which are then displayed in the graphical GUI.
We accompany this with python scripts to generate header files, but also extract information from the symbols to drive the build.
CML2 is unfortunately unmaintained and has some limitations.
One other alternative is the linux kernel configuration system, but I don't want to use that as it is based on older scripting methods.
Out of these two I haven't seen anything else to this extent, which is why would like to know how people configure their software for building.
- chipsy 16y agoWell, with that info, I can safely say you're over my head. Within the domains I've worked it's unheard of for builds to need such elaborate configuration. One area that suggests further study is logic programming, though. The hierarchical dependencies and view rules lend itself to that approach. As well, I recall thinking the Boomerang language would be interesting for code generation, albeit it's getting into esoteric academia land: http://www.seas.upenn.edu/~harmony/ http://www.seas.upenn.edu/~harmony/