From e3157cde5a0e22119e77edff85b63ca046e14dfa Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@collabora.com>
Date: Fri, 17 Nov 2017 14:44:43 +0000
Subject: [PATCH] Install capsule-elf-dump

This can be useful as a sanity check for how we parse a library.

Signed-off-by: Simon McVittie <smcv@collabora.com>
---
 .gitignore                      |  2 +-
 Makefile.am                     | 14 ++++++++------
 debian/libcapsule-tools.install |  1 +
 debian/rules                    |  1 +
 4 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/.gitignore b/.gitignore
index b377e5081..1d5a48caf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,7 +30,7 @@ Makefile
 shim/*.so.c
 shim/*.so.symbols
 shim/*.so.map
-elf-dump
+/capsule-elf-dump
 print-libstubs
 capsule-symbols
 capsule-version
diff --git a/Makefile.am b/Makefile.am
index a2f1af659..2fca72cc1 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -49,8 +49,10 @@ data/$(host)-capsule-mkstublib: data/capsule-mkstublib Makefile
 install-exec-hook:
 	cd $(DESTDIR)$(bindir) && ln -f capsule-symbols $(host)-capsule-symbols
 	cd $(DESTDIR)$(bindir) && ln -f capsule-version $(host)-capsule-version
+	cd $(DESTDIR)$(bindir) && ln -f capsule-elf-dump $(host)-capsule-elf-dump
 
 uninstall-hook:
+	cd $(DESTDIR)$(bindir) && rm -f $(host)-capsule-elf-dump
 	cd $(DESTDIR)$(bindir) && rm -f $(host)-capsule-symbols
 	cd $(DESTDIR)$(bindir) && rm -f $(host)-capsule-version
 
@@ -58,13 +60,13 @@ uninstall-hook:
 nobase_include_HEADERS += capsule/capsule-shim.h \
                           capsule/_int_dlopen.h
 
-# demo program - keep this hanging around as it's a useful PoC
-noinst_PROGRAMS         = elf-dump
+# Mostly just a demo program, but keep this hanging around as it's a useful PoC
+bin_PROGRAMS           += capsule-elf-dump
 
-elf_dump_SOURCES        = utils/elf-dump.c utils/utils.c
-elf_dump_LDADD          = -ldl
-elf_dump_SOURCES       += utils/utils.h
-elf_dump_CFLAGS         = $(AM_CFLAGS)
+capsule_elf_dump_SOURCES        = utils/elf-dump.c utils/utils.c
+capsule_elf_dump_LDADD          = -ldl
+capsule_elf_dump_SOURCES       += utils/utils.h
+capsule_elf_dump_CFLAGS         = $(AM_CFLAGS)
 
 # now the rules for building our installables:
 capsule_symbols_SOURCES = utils/print-libstubs.c \
diff --git a/debian/libcapsule-tools.install b/debian/libcapsule-tools.install
index f11f9e6d5..2a2896efc 100644
--- a/debian/libcapsule-tools.install
+++ b/debian/libcapsule-tools.install
@@ -1,3 +1,4 @@
+usr/bin/*-capsule-elf-dump
 usr/bin/*-capsule-mkstublib
 usr/bin/*-capsule-symbols
 usr/bin/*-capsule-version
diff --git a/debian/rules b/debian/rules
index 1e23ba69c..75ca8b142 100755
--- a/debian/rules
+++ b/debian/rules
@@ -58,6 +58,7 @@ override_dh_install:
 	find debian/tmp/usr/lib/libcapsule/installed-tests -name '*.la' -print -delete
 	# Only keep the architecture-qualified version, delete the unprefixed
 	# version, so we can be Multi-Arch: same
+	rm -f debian/tmp/usr/bin/capsule-elf-dump
 	rm -f debian/tmp/usr/bin/capsule-symbols
 	rm -f debian/tmp/usr/bin/capsule-version
 	dh_install --fail-missing
-- 
GitLab