Some parts got a bit confusing over time, also there was repetition.
In this commit:
* the release fact gathering routines have been moved to separate
module,
* some less useful routines have been removed,
* some internal interfaces have been changed to allow for more
readable code.
Fix up the path joining logic:
* For obvious reasons, we panic if group's root is empty.
* DESTDIR can be empty, that's normal for installs such as when MKit
installs its own dogfood.
* Root (which sometimes starts with PREFIX) may or may not start with
slash; relative root such as that is also OK for installs like MKit
or TFKit.
* Furthermore, DESTDIR may or may not end with slash; we have to address
that and avoid joining the names.
Overview of changes:
* Added sanity checks for debstuff target
* Added new tokens: __MKIT_PROJ_PKGNAME__ and __MKIT_SELF_VERSION__
* Minor code and meta-data cleanups
Overview of changes:
* Added debstuff target to help Debian maintainers
* `make clean` removes directories as well
* Rewrote route with sane(r) approach ro targets
Simplify maintenance by moving list of valid_targets to a separate
function. Both router and usage message are now consumers thereof.
This also changes format of the usage message.
Overview of changes:
* Move all project meta-data to mkit.ini (obsolete config.mk)
* Add tagline to common peoject meta-data
* Use more qualified tokens for replacement
* Improve mini-changelog
Fix lasttag expression to get "latest tag *so far*"
Turns out that the old version has always shown the last tag available
instead of last tag available *so far*, i.e. up to the current HEAD.
This made it impossible to determine version correctly when an older
version was checked out, i.e. installing or packaging an older version
would result in broken versioning.
New "functional-like" design makes it simpler to understand, extend,
re-order and re-use blocking conditions.
Also, the "old looks newer" condition was dropped as it's not really
necessary under such simplistic conditions.