Commit 726a510e authored by Andy Whitcroft's avatar Andy Whitcroft Committed by Kleber Sacilotto de Souza

UBUNTU: [Packaging] final-checks -- sanity checking ABI contents

BugLink: http://bugs.launchpad.net/bugs/1751021Signed-off-by: default avatarAndy Whitcroft <apw@canonical.com>
Acked-by: default avatarSeth Forshee <seth.forshee@canonical.com>
Acked-by: default avatarKleber Sacilotto de Souza <kleber.souza@canonical.com>
[klebers: adjusted for context]
Signed-off-by: default avatarKleber Sacilotto de Souza <kleber.souza@canonical.com>
parent 15445d40
# The following targets are for the maintainer only! do not run if you don't
# know what they do.
.PHONY: printenv updateconfigs printchanges insertchanges startnewrelease diffupstream help updateportsconfigs editportsconfigs autoreconstruct
.PHONY: printenv updateconfigs printchanges insertchanges startnewrelease diffupstream help updateportsconfigs editportsconfigs autoreconstruct finalchecks
help:
@echo "These are the targets in addition to the normal $(DEBIAN) ones:"
......@@ -106,12 +106,15 @@ printchanges:
git log "$$baseCommit"..HEAD | \
$(DROOT)/scripts/misc/git-ubuntu-log $(ubuntu_log_opts)
insertchanges: autoreconstruct
insertchanges: autoreconstruct finalchecks
@perl -w -f $(DROOT)/scripts/misc/insert-changes.pl $(DROOT) $(DEBIAN)
autoreconstruct:
$(DROOT)/scripts/misc/gen-auto-reconstruct $(release) $(DEBIAN)/reconstruct $(DROOT)/source/options
finalchecks:
$(DROOT)/scripts/misc/final-checks "$(DEBIAN)" "$(prev_fullver)"
diffupstream:
@git diff-tree -p refs/remotes/linux-2.6/master..HEAD $(shell ls | grep -vE '^(ubuntu|$(DEBIAN)|\.git.*)')
......
#!/bin/bash
debian="$1"
abi="$2"
. "$debian/etc/kernelconfig"
fail=0
failure()
{
echo "EE: $@" 1>&2
fail=1
}
abi_check()
{
local abidir="$1"
local arch="$2"
local flavour="$3"
local abidir="$abidir/$arch"
if [ ! -f "$abidir/$flavour" -a \
! -f "$abidir/$flavour.ignore" -a \
! -f "$abidir/ignore" ]
then
failure "$arch/$flavour ABI symbol file missing"
fi
if [ ! -f "$abidir/$flavour.modules" -a \
! -f "$abidir/$flavour.ignore.modules" -a \
! -f "$abidir/ignore.modules" ]
then
failure "$arch/$flavour ABI modules file missing"
fi
if [ ! -f "$abidir/$flavour.retpoline" -a \
! -f "$abidir/$flavour.ignore.retpoline" -a \
! -f "$abidir/ignore.retpoline" ]
then
failure "$arch/$flavour ABI retpoline file missing"
fi
}
for arch in $archs
do
for flavour in $(ls -1 "$debian/config/$arch/config.flavour."*)
do
flavour=$(echo "$flavour" | sed -e 's@.*/config.flavour.@@')
abi_check "$debian/abi/$abi" "$arch" "$flavour"
done
done
exit "$fail"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment