Add a script to make a combined release from two different versions
On top of !151 (merged)
Replaces !148 (merged) - except for the actual "switch to debian" bits.
Previously, make_install.sh would use rebuild udev-hid-bpf and use meson introspect to generate an install.sh/uninstall.sh script that installed all built artifacts.
We have a use-case for building the bpf.o files separately from the binary so we can built the former with the latest libbpf but the latter with the oldest glibc it works on for max. compatibility.
This commit adds two new scripts:
- make-release.py which replaces make_release.sh. Unlike the previous one this one does not actually rebuilt, instead it uses an installed tree and converts that over to a new target directory with the generated {un}install.sh files (using a jinja template)
- make-combined-release.sh: this replaces the logic previously in .gitlab-ci.yml so it's easier to test. It takes an installed tree, rebuilds udev-hid-bpf without any bpfs and then combines the installed tree and the rebuilt binary into the release tarball that we use as artifact of the gitlab CI job
cc @bentiss