packaging: accept the DKMS module list as a build input - #90
packaging: accept the DKMS module list as a build input#90Christopher Obbard (obbardc) wants to merge 1 commit into
Conversation
|
Nice, this is the piece #89 was missing, and generating both from one variable is the right call. The One thing: |
The set of bundled out-of-tree modules is currently declared twice in the packaging tree: once in debian/dkms-modules and once in the Build-Depends of debian/control.in. Both have to be edited together and neither can differ between kernel variants or deliveries. Take the list as one comma-separated input instead: prepare-source.sh --dkms, build-kernel.sh --dkms, or DKMS_MODULES= passed straight to "debian/rules prepare" and generate both files from it. control.in gains a @DKMS_BUILD_DEPENDS@ placeholder that expands to ", dkms, <name>-dkms..." (nothing at all for an empty list) and dkms-modules becomes a generated file written on every prepare, so a missing manifest still means prepare never ran rather than an empty module set. Entries are validated at prepare time: package-name stem, no -dkms suffix, no duplicates. Nothing is bundled unless a build asks for it; CI passes the list from the dkms field of ci/build-matrix.json. Signed-off-by: Christopher Obbard <chris.obbard@oss.qualcomm.com>
1a2a79d to
4778f67
Compare
|
Rebase looks good. |
The set of bundled out-of-tree modules is currently declared twice in the packaging tree: once in debian/dkms-modules and once in the Build-Depends of debian/control.in. Both have to be edited together and neither can differ between kernel variants or deliveries.
Take the list as one comma-separated input instead: prepare-source.sh --dkms, build-kernel.sh --dkms, or DKMS_MODULES= passed straight to "debian/rules prepare" and generate both files from it. control.in gains a @DKMS_BUILD_DEPENDS@ placeholder that expands to ", dkms, -dkms..." (nothing at all for an empty list) and dkms-modules becomes a generated file written on every prepare, so a missing manifest still means prepare never ran rather than an empty module set.
Entries are validated at prepare time: package-name stem, no -dkms suffix, no duplicates.
Nothing is bundled unless a build asks for it; CI passes the list from the dkms field of ci/build-matrix.json.
This is the sister-PR of #89; both are needed to land at the same time.