Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion debian/control.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Standards-Version: 4.6.2
Build-Depends: debhelper-compat (= 13),
bc, bison, flex, libssl-dev, libelf-dev, dwarves,
python3, kmod, cpio, rsync, pkg-config, gcc, make,
dkms, kgsl-dkms
dkms, kgsl-dkms, camx-dkms, iris-vpu-dkms
Homepage: https://kernel.org
Rules-Requires-Root: binary-targets

Expand Down
2 changes: 2 additions & 0 deletions debian/dkms-modules
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,5 @@
# To disable a module temporarily: comment out the line with #.
# debian/rules and debian/scripts/bundle-dkms-modules.sh are untouched in either case.
kgsl
camx
iris-vpu
20 changes: 12 additions & 8 deletions debian/scripts/bundle-dkms-modules.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ set -euo pipefail
# 3. Builds the module with `dkms build` against the staged kernel headers,
# using a private --dkmstree (mktemp) to avoid writing to /var/lib/dkms/.
# 4. Judges the outcome by artifact presence, not dkms exit code.
# On failure: prints make.log tail (build failure) or BUILD_EXCLUSIVE gate
# On failure: prints make.log in full (build failure) or BUILD_EXCLUSIVE gate
# analysis (skip), then hard-fails — a manifest entry is a presence contract.
# 5. For each produced .ko:
# - Collision-checks against already-bundled modules and in-tree modules.
Expand Down Expand Up @@ -371,8 +371,8 @@ for name in $DKMS_MODULES; do
mklog="$(find "$DKMS_TREE/$PKG_NAME/$PKG_VER" -name make.log 2>/dev/null \
| head -1 || true)"
if [[ -n "$mklog" ]]; then
log_error "dkms build failed for $PKG_NAME/$PKG_VER on kernel $KVER (dkms exit $dkms_rc); make.log tail:"
tail -n 300 "$mklog" | sed 's/^/ | /' >&2
log_error "dkms build failed for $PKG_NAME/$PKG_VER on kernel $KVER (dkms exit $dkms_rc); make.log:"
sed 's/^/ | /' "$mklog" >&2
else
log_error "$PKG_NAME/$PKG_VER produced no module for kernel $KVER; dkms attempted no build (dkms exit $dkms_rc)."
gates="$(grep -E '^[[:space:]]*BUILD_EXCLUSIVE' "$conf" 2>/dev/null || true)"
Expand All @@ -386,11 +386,15 @@ for name in $DKMS_MODULES; do
| sed -n 's/^[[:space:]]*BUILD_EXCLUSIVE_CONFIG=//p' \
| tr -d '"')"
[[ -n "$c" ]] || continue
if grep -q "^${c}=[ym]" "$kernel_config" 2>/dev/null; then
echo " | $c is set in this kernel's config" >&2
else
echo " | $c is NOT set in this kernel's config" >&2
fi
# BUILD_EXCLUSIVE_CONFIG may name several options, space
# separated, all of which must be set.
for one in $c; do
if grep -q "^${one}=[ym]" "$kernel_config" 2>/dev/null; then
echo " | $one is set in this kernel's config" >&2
else
echo " | $one is NOT set in this kernel's config" >&2
fi
done
done <<< "$gates"
echo " This kernel: $KVER, dkms arch $DKMS_ARCH." >&2
else
Expand Down
Loading