summaryrefslogtreecommitdiff
path: root/abicheck
diff options
context:
space:
mode:
Diffstat (limited to 'abicheck')
-rw-r--r--abicheck/apt_build.xml.in12
-rw-r--r--abicheck/apt_installed.xml.in11
-rwxr-xr-xabicheck/run_abi_test22
3 files changed, 45 insertions, 0 deletions
diff --git a/abicheck/apt_build.xml.in b/abicheck/apt_build.xml.in
new file mode 100644
index 000000000..32886d931
--- /dev/null
+++ b/abicheck/apt_build.xml.in
@@ -0,0 +1,12 @@
+<version>
+ build-branch
+</version>
+
+ <headers>
+ @build_path@/include/apt-pkg
+ </headers>
+
+ <libs>
+ @build_path@/apt-pkg/
+ @build_path@/apt-inst/
+ </libs>
diff --git a/abicheck/apt_installed.xml.in b/abicheck/apt_installed.xml.in
new file mode 100644
index 000000000..c3ddd0838
--- /dev/null
+++ b/abicheck/apt_installed.xml.in
@@ -0,0 +1,11 @@
+<version>
+ installed
+</version>
+
+<headers>
+ /usr/include/apt-pkg/
+</headers>
+
+<libs>
+ @installed_libapt@
+</libs>
diff --git a/abicheck/run_abi_test b/abicheck/run_abi_test
new file mode 100755
index 000000000..491616b30
--- /dev/null
+++ b/abicheck/run_abi_test
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# ensure we are in the abibreak subdirectory
+cd "$(readlink -f $(dirname $0))"
+
+if [ ! -d ../build ]; then
+ echo "../build missing, did you run make?"
+ exit 1
+fi
+
+if ! command -v abi-compliance-checker 2>/dev/null >&2; then
+ echo "Please install the 'abi-compliance-checker' package"
+ exit 1
+fi
+
+LIBPATH=$(find /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) -type f -regex '.*/libapt-\(pkg\|inst\)\.so\..*' -printf %p\\\\n)
+sed s#@installed_libapt@#$LIBPATH# apt_installed.xml.in > apt_installed.xml
+
+BUILDPATH=$(readlink -f ../build)
+sed s#@build_path@#$BUILDPATH# apt_build.xml.in > apt_build.xml
+
+abi-compliance-checker -l apt -d1 apt_installed.xml -d2 apt_build.xml $@