Debian build polishing
From: Enrico Weigelt, metux IT consult
Date: Fri Mar 08 2019 - 07:45:09 EST
Hi folks,
here're some patches for polishing up the Debian packaging stuff,
so it can be directly used w/ usual Debian machinery like
pbuilder, git-buildpackage, dck-buildpackage, etc.
These expect debian/rules to exist in the unpacked/patched tree
and drive the whole build. Currently 'make deb-pkg' does it in
the opposite direction - it creates debian/rules and fills in
some data, that's derived from .config etc.
My goal is building the kernel package in exactly the same way as
any other Debian package - so there must be a debian/rules as the
primary entry point. To do that, w/ minimal change and w/o breaking
the existing machinery, I'm going in several steps:
#1: add Makefile rules for retrieving missing makefile-internal
variables kernel config system .config (eg. kernel arch).
this could be used for other build systems, too.
just call: `make kernelarch` or `make kernellocalversion`
#2: add an env variable for changing the name of the rules file
generated by mkdebian. When coming from an existing rules
file, we can prevent this from being overwritten.
#3: add a generic debian/rules file, that calls mkdebian to
create the remaining debian control files (w/ rules redirected
into nirvana)
The existing `make deb-pkg` is bypassed and remains ontouched.
One point still puzzling me: once the debian/rules is applied and
somebody calls `make deb-pkg`, he'll end up w/ unclean tree, as
now a git-tracked file is changed.
Perhaps I just change deb-pkg to call debian/rules then, but I'd
like to hear your oppinions about this, before.
What do you think about that ?
--mtx