Turns out that get_version and release.sh strategy do not agree
very well on this, which may end up as version comparison problem.
SemVer 2.0 says that pre-release versions go before the associated
versions, that is, 1.0.0-blah goes before 1.0.0, and at the same time
remove the compatibility guarantee. This means that if pre-releases
are needed, we will probably need to change both PRERELEASE and VERSION,
which is not what was expected when writing release.sh.
For now, the safe thing is to remove PRERELEASE altogether. If we ever
need to do a pre-release, we will re-verify if it works properly; until
then, build meta-data give us enough luxury.
The version based on config.mk has been finalized to include more
features:
* Build variables are now defined in config.ini.
* The ini system can self-reference other keys (up to several levels).
* Some config (namely `ENV` section) can be overrided by environment
variables.
* The installer is now more portable (ported to saturnin so far):
everything can be defined in config.ini
Make it
* more flexible,
* more readable,
* faster,
* take care of manpages (not fully done yet),
* take care of dist list,
* little bit more polished in various other things.
As a followup to last revamp:
* Use more extensible test definition format,
* separate testing framework from setup script and split to includes,
* update test scripts as well as data,
* consolidate test output,
* and make some small improvements/fixes on the way.
* Enable running all tests via make,
* simplify tests (lay off data/tmpdir manipulation to framework),
* set rules for naming, exit statuses, etc,
* remove beakerlib dependency.