--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:30 +0200
+Subject: tools-include-install.diff
+
+Patch-Name: tools-include-install.diff
+---
+ tools/include/Makefile | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/tools/include/Makefile b/tools/include/Makefile
+index 6665105..82e45e9 100644
+--- a/tools/include/Makefile
++++ b/tools/include/Makefile
+@@ -14,7 +14,6 @@ xen-foreign:
+ xen/.dir:
+ @rm -rf xen
+ mkdir -p xen/libelf
+- ln -sf $(XEN_ROOT)/xen/include/public/COPYING xen
+ ln -sf $(wildcard $(XEN_ROOT)/xen/include/public/*.h) xen
+ ln -sf $(addprefix $(XEN_ROOT)/xen/include/public/,arch-x86 arch-arm hvm io xsm) xen
+ ln -sf ../xen-sys/$(XEN_OS) xen/sys
+@@ -43,7 +42,6 @@ install: all
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)/xen/io
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)/xen/sys
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)/xen/xsm
+- $(INSTALL_DATA) xen/COPYING $(DESTDIR)$(includedir)/xen
+ $(INSTALL_DATA) xen/*.h $(DESTDIR)$(includedir)/xen
+ $(INSTALL_DATA) xen/arch-x86/*.h $(DESTDIR)$(includedir)/xen/arch-x86
+ $(INSTALL_DATA) xen/arch-x86/hvm/*.h $(DESTDIR)$(includedir)/xen/arch-x86/hvm
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:29 +0200
+Subject: Remove static solaris support from pygrub
+
+Patch-Name: tools-pygrub-remove-static-solaris-support
+---
+ tools/pygrub/src/pygrub | 51 +------------------------------------------------
+ 1 file changed, 1 insertion(+), 50 deletions(-)
+
+diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
+index bfcfb4f..f8d5103 100755
+--- a/tools/pygrub/src/pygrub
++++ b/tools/pygrub/src/pygrub
+@@ -16,7 +16,6 @@ import os, sys, string, struct, tempfile, re, traceback, stat, errno
+ import copy
+ import logging
+ import platform
+-import xen.lowlevel.xc
+
+ import curses, _curses, curses.wrapper, curses.textpad, curses.ascii
+ import getopt
+@@ -668,51 +667,6 @@ def run_grub(file, entry, fs, cfg_args):
+
+ return grubcfg
+
+-def supports64bitPVguest():
+- xc = xen.lowlevel.xc.xc()
+- caps = xc.xeninfo()['xen_caps'].split(" ")
+- for cap in caps:
+- if cap == "xen-3.0-x86_64":
+- return True
+- return False
+-
+-# If nothing has been specified, look for a Solaris domU. If found, perform the
+-# necessary tweaks.
+-def sniff_solaris(fs, cfg):
+- if not fs.file_exists("/platform/i86xpv/kernel/unix") and \
+- not fs.file_exists("/platform/i86xpv/kernel/amd64/unix"):
+- return cfg
+-
+- if not cfg["kernel"]:
+- if supports64bitPVguest() and \
+- fs.file_exists("/platform/i86xpv/kernel/amd64/unix"):
+- cfg["kernel"] = "/platform/i86xpv/kernel/amd64/unix"
+- cfg["ramdisk"] = "/platform/i86pc/amd64/boot_archive"
+- elif fs.file_exists("/platform/i86xpv/kernel/unix"):
+- cfg["kernel"] = "/platform/i86xpv/kernel/unix"
+- cfg["ramdisk"] = "/platform/i86pc/boot_archive"
+- else:
+- return cfg
+-
+- # Unpleasant. Typically we'll have 'root=foo -k' or 'root=foo /kernel -k',
+- # and we need to maintain Xen properties (root= and ip=) and the kernel
+- # before any user args.
+-
+- xenargs = ""
+- userargs = ""
+-
+- if not cfg["args"]:
+- cfg["args"] = cfg["kernel"]
+- else:
+- for arg in cfg["args"].split():
+- if re.match("^root=", arg) or re.match("^ip=", arg):
+- xenargs += arg + " "
+- elif arg != cfg["kernel"]:
+- userargs += arg + " "
+- cfg["args"] = xenargs + " " + cfg["kernel"] + " " + userargs
+-
+- return cfg
+-
+ def sniff_netware(fs, cfg):
+ if not fs.file_exists("/nwserver/xnloader.sys"):
+ return cfg
+@@ -901,10 +855,7 @@ if __name__ == "__main__":
+ try:
+ fs = fsimage.open(file, offset, bootfsoptions)
+
+- chosencfg = sniff_solaris(fs, incfg)
+-
+- if not chosencfg["kernel"]:
+- chosencfg = sniff_netware(fs, incfg)
++ chosencfg = sniff_netware(fs, incfg)
+
+ if not chosencfg["kernel"]:
+ chosencfg = run_grub(file, entry, fs, incfg["args"])
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:31 +0200
+Subject: tools-xenmon-install.diff
+
+Patch-Name: tools-xenmon-install.diff
+---
+ tools/xenmon/Makefile | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tools/xenmon/Makefile b/tools/xenmon/Makefile
+index 358bcec..74e2c74 100644
+--- a/tools/xenmon/Makefile
++++ b/tools/xenmon/Makefile
+@@ -13,6 +13,10 @@
+ XEN_ROOT=$(CURDIR)/../..
+ include $(XEN_ROOT)/tools/Rules.mk
+
++DEFAULT_PYTHON_PATH := $(shell $(XEN_ROOT)/tools/python/get-path)
++PYTHON_PATH ?= $(DEFAULT_PYTHON_PATH)
++INSTALL_PYTHON_PROG = $(XEN_ROOT)/tools/python/install-wrap "$(PYTHON_PATH)" $(INSTALL_PROG)
++
+ CFLAGS += -Werror
+ CFLAGS += $(CFLAGS_libxenevtchn)
+ CFLAGS += $(CFLAGS_libxenctrl)
--- /dev/null
+From: Christopher Clark <christopher.w.clark@gmail.com>
+Date: Wed, 18 Jul 2018 15:22:17 -0700
+Subject: tools/xentop : replace use of deprecated vwprintw
+
+gcc-8.1 complains:
+
+| xentop.c: In function 'print':
+| xentop.c:304:4: error: 'vwprintw' is deprecated [-Werror=deprecated-declarations]
+| vwprintw(stdscr, (curses_str_t)fmt, args);
+| ^~~~~~~~
+
+vw_printw (note the underscore) is a non-deprecated alternative.
+
+Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
+---
+ tools/xenstat/xentop/xentop.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/xenstat/xentop/xentop.c b/tools/xenstat/xentop/xentop.c
+index 2fd2b67..c465810 100644
+--- a/tools/xenstat/xentop/xentop.c
++++ b/tools/xenstat/xentop/xentop.c
+@@ -301,7 +301,7 @@ static void print(const char *fmt, ...)
+ if (!batch) {
+ if((current_row() < lines()-1)) {
+ va_start(args, fmt);
+- vwprintw(stdscr, (curses_str_t)fmt, args);
++ vw_printw(stdscr, (curses_str_t)fmt, args);
+ va_end(args);
+ }
+ } else {
--- /dev/null
+From: Ian Jackson <ian.jackson@citrix.com>
+Date: Tue, 1 Nov 2016 16:20:27 +0000
+Subject: tools/tests/x86_emulator: Pass -no-pie -fno-pic to gcc on x86_32
+
+The current build fails with GCC6 on Debian sid i386 (unstable):
+
+ /tmp/ccqjaueF.s: Assembler messages:
+ /tmp/ccqjaueF.s:3713: Error: missing or invalid displacement expression `vmovd_to_reg_len@GOT'
+
+This is due to the combination of GCC6, and Debian's decision to
+enable some hardening flags by default (to try to make runtime
+addresses less predictable):
+ https://wiki.debian.org/Hardening/PIEByDefaultTransition
+
+This is of no benefit for the x86 instruction emulator test, which is
+a rebuild of the emulator code for testing purposes only. So pass
+options to disable this.
+
+These options will be no-ops if they are the same as the compiler
+default.
+
+On amd64, the -fno-pic breaks the build in a different way. So do
+this only on i386.
+
+Signed-off-by: Ian Jackson <ian.jackson@citrix.com>
+CC: Jan Beulich <jbeulich@suse.com>
+CC: Andrew Cooper <andrew.cooper3@citrix.com>
+
+squash! tools/tests/x86_emulator: Pass -no-pie -fno-pic to gcc
+
+Signed-off-by: Ian Jackson <ian.jackson@citrix.com>
+---
+ tools/tests/x86_emulator/Makefile | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tools/tests/x86_emulator/Makefile b/tools/tests/x86_emulator/Makefile
+index 417d5c0..5631ee4 100644
+--- a/tools/tests/x86_emulator/Makefile
++++ b/tools/tests/x86_emulator/Makefile
+@@ -140,6 +140,10 @@ HOSTCFLAGS-x86_64 := -fno-PIE
+ $(call cc-option-add,HOSTCFLAGS-x86_64,HOSTCC,-no-pie)
+ HOSTCFLAGS += $(CFLAGS_xeninclude) -I. $(HOSTCFLAGS-$(XEN_COMPILE_ARCH))
+
++ifeq ($(XEN_TARGET_ARCH),x86_32)
++HOSTCFLAGS += -no-pie -fno-pic
++endif
++
+ x86.h := asm/x86-vendors.h asm/x86-defns.h asm/msr-index.h
+ x86_emulate.h := x86-emulate.h x86_emulate/x86_emulate.h $(x86.h)
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:43 +0200
+Subject: version
+
+Patch-Name: version.diff
+---
+ xen/Makefile | 8 +++++---
+ xen/common/kernel.c | 4 ++--
+ xen/common/version.c | 22 +++++++++++-----------
+ xen/drivers/char/console.c | 9 +++------
+ xen/include/xen/compile.h.in | 8 ++++----
+ xen/include/xen/version.h | 7 ++++---
+ 6 files changed, 29 insertions(+), 29 deletions(-)
+
+diff --git a/xen/Makefile b/xen/Makefile
+index a922a1b..f16047d 100644
+--- a/xen/Makefile
++++ b/xen/Makefile
+@@ -161,7 +161,7 @@ delete-unfresh-files:
+ @mv -f $@.tmp $@
+
+ # compile.h contains dynamic build info. Rebuilt on every 'make' invocation.
+-include/xen/compile.h: include/xen/compile.h.in .banner
++include/xen/compile.h: include/xen/compile.h.in
+ @sed -e 's/@@date@@/$(XEN_BUILD_DATE)/g' \
+ -e 's/@@time@@/$(XEN_BUILD_TIME)/g' \
+ -e 's/@@whoami@@/$(XEN_WHOAMI)/g' \
+@@ -172,9 +172,11 @@ include/xen/compile.h: include/xen/compile.h.in .banner
+ -e 's/@@subversion@@/$(XEN_SUBVERSION)/g' \
+ -e 's/@@extraversion@@/$(XEN_EXTRAVERSION)/g' \
+ -e 's!@@changeset@@!$(shell tools/scmversion $(XEN_ROOT) || echo "unavailable")!g' \
++ -e 's/@@system_distribution@@/$(shell lsb_release -is)/g' \
++ -e 's/@@system_maintainer_domain@@/$(shell cd ../../../..; dpkg-parsechangelog | sed -ne 's,^Maintainer: .[^<]*<[^@>]*@\([^>]*\)>,\1,p')/g' \
++ -e 's/@@system_maintainer_local@@/$(shell cd ../../../..; dpkg-parsechangelog | sed -ne 's,^Maintainer: .[^<]*<\([^@>]*\)@.*>,\1,p')/g' \
++ -e 's/@@system_version@@/$(shell cd ../../../..; dpkg-parsechangelog | awk '/^Version:/ {print $$2}')/g' \
+ < include/xen/compile.h.in > $@.new
+- @cat .banner
+- @$(PYTHON) tools/fig-to-oct.py < .banner >> $@.new
+ @mv -f $@.new $@
+
+ include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
+diff --git a/xen/common/kernel.c b/xen/common/kernel.c
+index 5766a0f..1cf4cd8 100644
+--- a/xen/common/kernel.c
++++ b/xen/common/kernel.c
+@@ -357,8 +357,8 @@ DO(xen_version)(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
+
+ memset(&info, 0, sizeof(info));
+ safe_strcpy(info.compiler, deny ? xen_deny() : xen_compiler());
+- safe_strcpy(info.compile_by, deny ? xen_deny() : xen_compile_by());
+- safe_strcpy(info.compile_domain, deny ? xen_deny() : xen_compile_domain());
++ safe_strcpy(info.compile_by, deny ? xen_deny() : xen_compile_system_maintainer_local());
++ safe_strcpy(info.compile_domain, deny ? xen_deny() : xen_compile_system_maintainer_domain());
+ safe_strcpy(info.compile_date, deny ? xen_deny() : xen_compile_date());
+ if ( copy_to_guest(arg, &info, 1) )
+ return -EFAULT;
+diff --git a/xen/common/version.c b/xen/common/version.c
+index 223cb52..b9c66fd 100644
+--- a/xen/common/version.c
++++ b/xen/common/version.c
+@@ -20,19 +20,24 @@ const char *xen_compile_time(void)
+ return XEN_COMPILE_TIME;
+ }
+
+-const char *xen_compile_by(void)
++const char *xen_compile_system_distribution(void)
+ {
+- return XEN_COMPILE_BY;
++ return XEN_COMPILE_SYSTEM_DISTRIBUTION;
+ }
+
+-const char *xen_compile_domain(void)
++const char *xen_compile_system_maintainer_local(void)
+ {
+- return XEN_COMPILE_DOMAIN;
++ return XEN_COMPILE_SYSTEM_MAINTAINER_LOCAL;
+ }
+
+-const char *xen_compile_host(void)
++const char *xen_compile_system_maintainer_domain(void)
+ {
+- return XEN_COMPILE_HOST;
++ return XEN_COMPILE_SYSTEM_MAINTAINER_DOMAIN;
++}
++
++const char *xen_compile_system_version(void)
++{
++ return XEN_COMPILE_SYSTEM_VERSION;
+ }
+
+ const char *xen_compiler(void)
+@@ -60,11 +65,6 @@ const char *xen_changeset(void)
+ return XEN_CHANGESET;
+ }
+
+-const char *xen_banner(void)
+-{
+- return XEN_BANNER;
+-}
+-
+ const char *xen_deny(void)
+ {
+ return "<denied>";
+diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
+index 0f05369..78c1ae6 100644
+--- a/xen/drivers/char/console.c
++++ b/xen/drivers/char/console.c
+@@ -842,14 +842,11 @@ void __init console_init_preirq(void)
+ pv_console_set_rx_handler(serial_rx);
+
+ /* HELLO WORLD --- start-of-day banner text. */
+- spin_lock(&console_lock);
+- __putstr(xen_banner());
+- spin_unlock(&console_lock);
+- printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c " gcov_string " %s\n",
++ printk("Xen version %d.%d%s (%s %s) (%s@%s) (%s) debug=%c " gcov_string " %s\n",
+ xen_major_version(), xen_minor_version(), xen_extra_version(),
+- xen_compile_by(), xen_compile_domain(),
++ xen_compile_system_distribution(), xen_compile_system_version(),
++ xen_compile_system_maintainer_local(), xen_compile_system_maintainer_domain(),
+ xen_compiler(), debug_build() ? 'y' : 'n', xen_compile_date());
+- printk("Latest ChangeSet: %s\n", xen_changeset());
+
+ if ( opt_sync_console )
+ {
+diff --git a/xen/include/xen/compile.h.in b/xen/include/xen/compile.h.in
+index 440ecb2..0c3ca58 100644
+--- a/xen/include/xen/compile.h.in
++++ b/xen/include/xen/compile.h.in
+@@ -1,8 +1,9 @@
+ #define XEN_COMPILE_DATE "@@date@@"
+ #define XEN_COMPILE_TIME "@@time@@"
+-#define XEN_COMPILE_BY "@@whoami@@"
+-#define XEN_COMPILE_DOMAIN "@@domain@@"
+-#define XEN_COMPILE_HOST "@@hostname@@"
++#define XEN_COMPILE_SYSTEM_DISTRIBUTION "@@system_distribution@@"
++#define XEN_COMPILE_SYSTEM_MAINTAINER_DOMAIN "@@system_maintainer_domain@@"
++#define XEN_COMPILE_SYSTEM_MAINTAINER_LOCAL "@@system_maintainer_local@@"
++#define XEN_COMPILE_SYSTEM_VERSION "@@system_version@@"
+ #define XEN_COMPILER "@@compiler@@"
+
+ #define XEN_VERSION @@version@@
+@@ -10,4 +11,3 @@
+ #define XEN_EXTRAVERSION "@@extraversion@@"
+
+ #define XEN_CHANGESET "@@changeset@@"
+-#define XEN_BANNER \
+diff --git a/xen/include/xen/version.h b/xen/include/xen/version.h
+index 97c247a..a816f60 100644
+--- a/xen/include/xen/version.h
++++ b/xen/include/xen/version.h
+@@ -6,9 +6,10 @@
+
+ const char *xen_compile_date(void);
+ const char *xen_compile_time(void);
+-const char *xen_compile_by(void);
+-const char *xen_compile_domain(void);
+-const char *xen_compile_host(void);
++const char *xen_compile_system_distribution(void);
++const char *xen_compile_system_maintainer_domain(void);
++const char *xen_compile_system_maintainer_local(void);
++const char *xen_compile_system_version(void);
+ const char *xen_compiler(void);
+ unsigned int xen_major_version(void);
+ unsigned int xen_minor_version(void);
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:45 +0200
+Subject: config-prefix.diff
+
+Patch-Name: config-prefix.diff
+---
+ Config.mk | 2 +-
+ config/Paths.mk.in | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Config.mk b/Config.mk
+index 8b77c6a..74eb507 100644
+--- a/Config.mk
++++ b/Config.mk
+@@ -83,7 +83,7 @@ EXTRA_LIB += $(EXTRA_PREFIX)/lib
+ endif
+
+ PYTHON ?= python
+-PYTHON_PREFIX_ARG ?= --prefix="$(prefix)"
++PYTHON_PREFIX_ARG ?= --home="$(LIBEXEC)"
+ # The above requires that prefix contains *no spaces*. This variable is here
+ # to permit the user to set PYTHON_PREFIX_ARG to '' to workaround this bug:
+ # https://bugs.launchpad.net/ubuntu/+bug/362570
+diff --git a/config/Paths.mk.in b/config/Paths.mk.in
+index 8a518d5..b262e84 100644
+--- a/config/Paths.mk.in
++++ b/config/Paths.mk.in
+@@ -13,6 +13,7 @@
+ # http://wiki.xen.org/wiki/Category:Host_Configuration#System_wide_xen_configuration
+
+ PACKAGE_TARNAME := @PACKAGE_TARNAME@
++PACKAGE_VERSION := @PACKAGE_VERSION@
+ prefix := @prefix@
+ bindir := @bindir@
+ sbindir := @sbindir@
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:53 +0200
+Subject: tools-blktap2-prefix.diff
+
+Patch-Name: tools-blktap2-prefix.diff
+---
+ tools/blktap2/control/Makefile | 34 +++++++++++-----------------------
+ tools/blktap2/vhd/Makefile | 1 +
+ tools/blktap2/vhd/lib/Makefile | 35 +++++++++++------------------------
+ 3 files changed, 23 insertions(+), 47 deletions(-)
+
+diff --git a/tools/blktap2/control/Makefile b/tools/blktap2/control/Makefile
+index 1ea5df8..02602aa 100644
+--- a/tools/blktap2/control/Makefile
++++ b/tools/blktap2/control/Makefile
+@@ -1,10 +1,7 @@
+ XEN_ROOT := $(CURDIR)/../../../
+ include $(XEN_ROOT)/tools/Rules.mk
+
+-MAJOR = 1.0
+-MINOR = 0
+ LIBNAME = libblktapctl
+-LIBSONAME = $(LIBNAME).so.$(MAJOR)
+
+ IBIN = tap-ctl
+
+@@ -38,11 +35,11 @@ OBJS = $(CTL_OBJS) tap-ctl.o
+ PICS = $(CTL_PICS)
+
+ LIB_STATIC = $(LIBNAME).a
+-LIB_SHARED = $(LIBSONAME).$(MINOR)
++LIB_SHARED = $(LIBNAME).so
+ IBIN = tap-ctl
+
+ PKG_CONFIG := xenblktapctl.pc
+-PKG_CONFIG_VERSION := $(MAJOR).$(MINOR)
++PKG_CONFIG_VERSION := $(PACKAGE_VERSION)
+
+ ifneq ($(CONFIG_LIBXC_MINIOS),y)
+ PKG_CONFIG_INST := $(PKG_CONFIG)
+@@ -62,43 +59,34 @@ all: build
+
+ build: $(IBIN) $(LIB_STATIC) $(LIB_SHARED) $(PKG_CONFIG_INST) $(PKG_CONFIG_LOCAL)
+
+-$(LIBNAME).so: $(LIBSONAME)
+- ln -sf $< $@
+-
+-$(LIBSONAME): $(LIB_SHARED)
+- ln -sf $< $@
+-
+ tap-ctl: tap-ctl.o $(LIBNAME).so
+- $(CC) $(LDFLAGS) -o $@ $^ $(APPEND_LDFLAGS)
++ $(CC) $(LDFLAGS) $(call LDFLAGS_RPATH,../lib) -o $@ $^ $(APPEND_LDFLAGS)
+
+ $(LIB_STATIC): $(CTL_OBJS)
+ $(AR) r $@ $^
+
+ $(LIB_SHARED): $(CTL_PICS)
+- $(CC) $(LDFLAGS) -fPIC -Wl,$(SONAME_LDFLAG) -Wl,$(LIBSONAME) $(SHLIB_LDFLAGS) -rdynamic $^ -o $@ $(APPEND_LDFLAGS)
++ $(CC) $(LDFLAGS) -fPIC $(SHLIB_LDFLAGS) -rdynamic $^ -o $@ $(APPEND_LDFLAGS)
+
+ install: build
+- $(INSTALL_DIR) -p $(DESTDIR)$(sbindir)
+- $(INSTALL_PROG) $(IBIN) $(DESTDIR)$(sbindir)
++ $(INSTALL_DIR) -p $(DESTDIR)$(libdir)
++ $(INSTALL_DIR) -p $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_DIR) -p $(DESTDIR)$(LIBEXEC_LIB)
++ $(INSTALL_PROG) $(IBIN) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_DATA) $(LIB_STATIC) $(DESTDIR)$(libdir)
+- $(INSTALL_PROG) $(LIB_SHARED) $(DESTDIR)$(libdir)
+- ln -sf $(LIBSONAME) $(DESTDIR)$(libdir)/$(LIBNAME).so
+- ln -sf $(LIB_SHARED) $(DESTDIR)$(libdir)/$(LIBSONAME)
++ $(INSTALL_PROG) $(LIB_SHARED) $(DESTDIR)$(LIBEXEC_LIB)
+ $(INSTALL_DATA) xenblktapctl.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+ clean:
+ rm -f $(OBJS) $(PICS) $(DEPS_RM) $(IBIN) $(LIB_STATIC) $(LIB_SHARED)
+- rm -f $(LIBNAME).so $(LIBSONAME)
+ rm -f *~
+ rm -f xenblktapctl.pc
+
+ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenblktapctl.pc
+- rm -f $(DESTDIR)$(libdir)/$(LIBSONAME)
+- rm -f $(DESTDIR)$(libdir)/$(LIBNAME).so
+- rm -f $(addprefix $(DESTDIR)$(libdir)/, $(LIB_SHARED))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_LIB)/, $(LIB_SHARED))
+ rm -f $(addprefix $(DESTDIR)$(libdir)/, $(LIB_STATIC))
+- rm -f $(addprefix $(DESTDIR)$(sbindir)/, $(IBIN))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(IBIN))
+
+ distclean: clean
+
+diff --git a/tools/blktap2/vhd/Makefile b/tools/blktap2/vhd/Makefile
+index 9c4ee83..0fb439b 100644
+--- a/tools/blktap2/vhd/Makefile
++++ b/tools/blktap2/vhd/Makefile
+@@ -12,6 +12,7 @@ CFLAGS += -Werror
+ CFLAGS += -Wno-unused
+ CFLAGS += -I../include
+ CFLAGS += -D_GNU_SOURCE
++CFLAGS += $(CFLAGS_libxenctrl)
+
+ ifeq ($(CONFIG_X86_64),y)
+ CFLAGS += -fPIC
+diff --git a/tools/blktap2/vhd/lib/Makefile b/tools/blktap2/vhd/lib/Makefile
+index c4e9ec5..5c72d34 100644
+--- a/tools/blktap2/vhd/lib/Makefile
++++ b/tools/blktap2/vhd/lib/Makefile
+@@ -2,25 +2,19 @@ XEN_ROOT=$(CURDIR)/../../../..
+ BLKTAP_ROOT := ../..
+ include $(XEN_ROOT)/tools/Rules.mk
+
+-LIBVHD-MAJOR = 1.0
+-LIBVHD-MINOR = 0
+-LIBVHD-SONAME = libvhd.so.$(LIBVHD-MAJOR)
+-
+ LVM-UTIL-OBJ := $(BLKTAP_ROOT)/lvm/lvm-util.o
+
+-LIBVHD-BUILD := libvhd.a
+-
+-INST-DIR = $(libdir)
+-
+ CFLAGS += -Werror
+ CFLAGS += -Wno-unused
+ CFLAGS += -I../../include
+ CFLAGS += -D_GNU_SOURCE
+ CFLAGS += -fPIC
++CFLAGS += $(CFLAGS_libxenctrl)
+
+ ifeq ($(CONFIG_Linux),y)
+ LIBS := -luuid
+ endif
++LDFLAGS += $(LDFLAGS_libxenctrl) $(call LDFLAGS_RPATH)
+
+ ifeq ($(CONFIG_LIBICONV),y)
+ LIBS += -liconv
+@@ -50,33 +44,26 @@ LIB-OBJS += $(LVM-UTIL-OBJ)
+
+ LIB-PICOBJS = $(patsubst %.o,%.opic,$(LIB-OBJS))
+
+-LIBVHD = libvhd.a libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR)
++LIBVHD = libvhd.a libvhd.so
+
+ all: build
+
+-build: libvhd.a libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR)
++build: libvhd.a libvhd.so
+
+ libvhd.a: $(LIB-OBJS)
+ $(AR) rc $@ $^
+
+-libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR): $(LIB-PICOBJS)
+- $(CC) -Wl,$(SONAME_LDFLAG),$(LIBVHD-SONAME) $(SHLIB_LDFLAGS) \
+- $(LDFLAGS) -o libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $^ $(LIBS)
+- ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) libvhd.so.$(LIBVHD-MAJOR)
+- ln -sf libvhd.so.$(LIBVHD-MAJOR) libvhd.so
++libvhd.so: $(LIB-PICOBJS)
++ $(CC) $(SHLIB_LDFLAGS) $(LDFLAGS) -o libvhd.so $^ $(LIBS)
+
+ install: all
+- $(INSTALL_DIR) -p $(DESTDIR)$(INST-DIR)
+- $(INSTALL_DATA) libvhd.a $(DESTDIR)$(INST-DIR)
+- $(INSTALL_PROG) libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(DESTDIR)$(INST-DIR)
+- ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(DESTDIR)$(INST-DIR)/libvhd.so.$(LIBVHD-MAJOR)
+- ln -sf libvhd.so.$(LIBVHD-MAJOR) $(DESTDIR)$(INST-DIR)/libvhd.so
++ $(INSTALL_DIR) -p $(DESTDIR)$(libdir)
++ $(INSTALL_DATA) libvhd.a $(DESTDIR)$(libdir)
++ $(INSTALL_PROG) libvhd.so $(DESTDIR)$(libdir)
+
+ uninstall:
+- rm -f $(DESTDIR)$(INST-DIR)/libvhd.so
+- rm -f $(DESTDIR)$(INST-DIR)/libvhd.so.$(LIBVHD-MAJOR)
+- rm -f $(DESTDIR)$(INST-DIR)/libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR)
+- rm -f $(DESTDIR)$(INST-DIR)/libvhd.a
++ rm -f $(DESTDIR)$(libdir)/libvhd.so
++ rm -f $(DESTDIR)$(libdir)/libvhd.a
+
+ clean:
+ rm -rf *.a *.so* *.o *.opic *~ $(DEPS_RM) $(LIBVHD)
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:54 +0200
+Subject: tools-console-prefix.diff
+
+Patch-Name: tools-console-prefix.diff
+---
+ tools/console/Makefile | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tools/console/Makefile b/tools/console/Makefile
+index 84796ea..4b24795 100644
+--- a/tools/console/Makefile
++++ b/tools/console/Makefile
+@@ -8,6 +8,7 @@ CFLAGS += $(CFLAGS_libxenstore)
+ LDLIBS += $(LDLIBS_libxenctrl)
+ LDLIBS += $(LDLIBS_libxenstore)
+ LDLIBS += $(SOCKET_LIBS)
++LDFLAGS += $(call LDFLAGS_RPATH,../lib)
+
+ LDLIBS_xenconsoled += $(UTIL_LIBS)
+ LDLIBS_xenconsoled += -lrt
+@@ -45,14 +46,13 @@ $(eval $(genpath-target))
+
+ .PHONY: install
+ install: $(BIN)
+- $(INSTALL_DIR) $(DESTDIR)/$(sbindir)
+- $(INSTALL_PROG) xenconsoled $(DESTDIR)/$(sbindir)
+ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_PROG) xenconsole $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PROG) xenconsoled $(DESTDIR)$(LIBEXEC_BIN)
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenconsole
+- rm -f $(DESTDIR)$(sbindir)/xenconsoled
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenconsoled
+
+ -include $(DEPS_INCLUDE)
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:47 +0200
+Subject: tools-libfsimage-abiname.diff
+
+Patch-Name: tools-libfsimage-abiname.diff
+---
+ tools/libfsimage/common/Makefile | 20 ++++----------------
+ 1 file changed, 4 insertions(+), 16 deletions(-)
+
+diff --git a/tools/libfsimage/common/Makefile b/tools/libfsimage/common/Makefile
+index 0791fc9..7f66473 100644
+--- a/tools/libfsimage/common/Makefile
++++ b/tools/libfsimage/common/Makefile
+@@ -1,9 +1,6 @@
+ XEN_ROOT = $(CURDIR)/../../..
+ include $(XEN_ROOT)/tools/libfsimage/Rules.mk
+
+-MAJOR = 1.0
+-MINOR = 0
+-
+ LDFLAGS-$(CONFIG_SunOS) = -Wl,-M -Wl,mapfile-SunOS
+ LDFLAGS-$(CONFIG_Linux) = -Wl,mapfile-GNU
+ LDFLAGS = $(LDFLAGS-y)
+@@ -15,7 +12,7 @@ LIB_SRCS-y = fsimage.c fsimage_plugin.c fsimage_grub.c
+
+ PIC_OBJS := $(patsubst %.c,%.opic,$(LIB_SRCS-y))
+
+-LIB = libfsimage.so libfsimage.so.$(MAJOR) libfsimage.so.$(MAJOR).$(MINOR)
++LIB = libfsimage.so
+
+ .PHONY: all
+ all: $(LIB)
+@@ -24,9 +21,7 @@ all: $(LIB)
+ install: all
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_PROG) libfsimage.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+- ln -sf libfsimage.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libfsimage.so.$(MAJOR)
+- ln -sf libfsimage.so.$(MAJOR) $(DESTDIR)$(libdir)/libfsimage.so
++ $(INSTALL_PROG) libfsimage.so $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) fsimage.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) fsimage_plugin.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) fsimage_grub.h $(DESTDIR)$(includedir)
+@@ -37,19 +32,12 @@ uninstall:
+ rm -f $(DESTDIR)$(includedir)/fsimage_plugin.h
+ rm -f $(DESTDIR)$(includedir)/fsimage.h
+ rm -f $(DESTDIR)$(libdir)/libfsimage.so
+- rm -f $(DESTDIR)$(libdir)/libfsimage.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libfsimage.so.$(MAJOR).$(MINOR)
+
+ clean distclean::
+ rm -f $(LIB)
+
+-libfsimage.so: libfsimage.so.$(MAJOR)
+- ln -sf $< $@
+-libfsimage.so.$(MAJOR): libfsimage.so.$(MAJOR).$(MINOR)
+- ln -sf $< $@
+-
+-libfsimage.so.$(MAJOR).$(MINOR): $(PIC_OBJS)
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libfsimage.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
++libfsimage.so: $(PIC_OBJS)
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
+
+ -include $(DEPS_INCLUDE)
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:55 +0200
+Subject: tools-libfsimage-prefix.diff
+
+Patch-Name: tools-libfsimage-prefix.diff
+---
+ tools/libfsimage/Rules.mk | 3 ++-
+ tools/libfsimage/common/Makefile | 8 +++++---
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/tools/libfsimage/Rules.mk b/tools/libfsimage/Rules.mk
+index eab4ecb..50be504 100644
+--- a/tools/libfsimage/Rules.mk
++++ b/tools/libfsimage/Rules.mk
+@@ -3,10 +3,11 @@ include $(XEN_ROOT)/tools/Rules.mk
+ CFLAGS += -Wno-unknown-pragmas -I$(XEN_ROOT)/tools/libfsimage/common/ -DFSIMAGE_FSDIR=\"$(FSDIR)\"
+ CFLAGS += -Werror -D_GNU_SOURCE
+ LDFLAGS += -L../common/
++LDFLAGS += $(call LDFLAGS_RPATH,../..)
+
+ PIC_OBJS := $(patsubst %.c,%.opic,$(LIB_SRCS-y))
+
+-FSDIR = $(libdir)/fs
++FSDIR = $(LIBEXEC_LIB)/fs
+
+ FSLIB = fsimage.so
+
+diff --git a/tools/libfsimage/common/Makefile b/tools/libfsimage/common/Makefile
+index 7f66473..09bba4e 100644
+--- a/tools/libfsimage/common/Makefile
++++ b/tools/libfsimage/common/Makefile
+@@ -1,6 +1,8 @@
+ XEN_ROOT = $(CURDIR)/../../..
+ include $(XEN_ROOT)/tools/libfsimage/Rules.mk
+
++CFLAGS += -DFSDIR="\"$(LIBEXEC_LIB)/fs\""
++
+ LDFLAGS-$(CONFIG_SunOS) = -Wl,-M -Wl,mapfile-SunOS
+ LDFLAGS-$(CONFIG_Linux) = -Wl,mapfile-GNU
+ LDFLAGS = $(LDFLAGS-y)
+@@ -19,9 +21,9 @@ all: $(LIB)
+
+ .PHONY: install
+ install: all
+- $(INSTALL_DIR) $(DESTDIR)$(libdir)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_LIB)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_PROG) libfsimage.so $(DESTDIR)$(libdir)
++ $(INSTALL_PROG) libfsimage.so $(DESTDIR)$(LIBEXEC_LIB)
+ $(INSTALL_DATA) fsimage.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) fsimage_plugin.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) fsimage_grub.h $(DESTDIR)$(includedir)
+@@ -31,7 +33,7 @@ uninstall:
+ rm -f $(DESTDIR)$(includedir)/fsimage_grub.h
+ rm -f $(DESTDIR)$(includedir)/fsimage_plugin.h
+ rm -f $(DESTDIR)$(includedir)/fsimage.h
+- rm -f $(DESTDIR)$(libdir)/libfsimage.so
++ rm -f $(DESTDIR)$(LIBEXEC_LIB)/libfsimage.so
+
+ clean distclean::
+ rm -f $(LIB)
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:48 +0200
+Subject: tools-libxc-abiname.diff
+
+Patch-Name: tools-libxc-abiname.diff
+---
+ tools/libxc/Makefile | 43 ++++++++++++++++---------------------------
+ 1 file changed, 16 insertions(+), 27 deletions(-)
+
+diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile
+index d26bf8d..675222d 100644
+--- a/tools/libxc/Makefile
++++ b/tools/libxc/Makefile
+@@ -1,9 +1,6 @@
+ XEN_ROOT = $(CURDIR)/../..
+ include $(XEN_ROOT)/tools/Rules.mk
+
+-MAJOR = 4.11
+-MINOR = 0
+-
+ ifeq ($(CONFIG_LIBXC_MINIOS),y)
+ # Save/restore of a domain is currently incompatible with a stubdom environment
+ override CONFIG_MIGRATE := n
+@@ -134,12 +131,12 @@ $(CTRL_LIB_OBJS) $(CTRL_PIC_OBJS): CFLAGS += $(CFLAGS_libxengnttab)
+
+ LIB := libxenctrl.a
+ ifneq ($(nosharedlibs),y)
+-LIB += libxenctrl.so libxenctrl.so.$(MAJOR) libxenctrl.so.$(MAJOR).$(MINOR)
++LIB += libxenctrl.so libxenctrl-$(PACKAGE_VERSION).so
+ endif
+
+ LIB += libxenguest.a
+ ifneq ($(nosharedlibs),y)
+-LIB += libxenguest.so libxenguest.so.$(MAJOR) libxenguest.so.$(MAJOR).$(MINOR)
++LIB += libxenguest.so libxenguest-$(PACKAGE_VERSION).so
+ endif
+
+ genpath-target = $(call buildmakevars2header,_paths.h)
+@@ -160,7 +157,7 @@ $(CTRL_LIB_OBJS) $(GUEST_LIB_OBJS) \
+ $(CTRL_PIC_OBJS) $(GUEST_PIC_OBJS): xc_private.h
+
+ PKG_CONFIG := xencontrol.pc xenguest.pc
+-PKG_CONFIG_VERSION := $(MAJOR).$(MINOR)
++PKG_CONFIG_VERSION := $(PACKAGE_VERSION)
+
+ ifneq ($(CONFIG_LIBXC_MINIOS),y)
+ PKG_CONFIG_INST := $(PKG_CONFIG)
+@@ -190,15 +187,13 @@ libs: $(LIB) $(PKG_CONFIG_INST) $(PKG_CONFIG_LOCAL)
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxenctrl.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxenctrl-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)
++ $(SYMLINK_SHLIB) libxenctrl-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libxenctrl.so
+ $(INSTALL_DATA) libxenctrl.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenctrl.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenctrl.so
+ $(INSTALL_DATA) include/xenctrl.h include/xenctrl_compat.h $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxenguest-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)
++ $(SYMLINK_SHLIB) libxenguest-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libxenguest.so
+ $(INSTALL_DATA) libxenguest.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenguest.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenguest.so
+ $(INSTALL_DATA) include/xenguest.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xencontrol.pc $(DESTDIR)$(PKG_INSTALLDIR)
+ $(INSTALL_DATA) xenguest.pc $(DESTDIR)$(PKG_INSTALLDIR)
+@@ -208,15 +203,13 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenguest.pc
+ rm -f $(DESTDIR)$(includedir)/xenguest.h
+ rm -f $(DESTDIR)$(libdir)/libxenguest.so
+- rm -f $(DESTDIR)$(libdir)/libxenguest.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxenguest.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxenguest-$(PACKAGE_VERSION).so
+ rm -f $(DESTDIR)$(libdir)/libxenguest.a
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xencontrol.pc
+ rm -f $(DESTDIR)$(includedir)/xenctrl.h
+ rm -f $(DESTDIR)$(includedir)/xenctrl_compat.h
+ rm -f $(DESTDIR)$(libdir)/libxenctrl.so
+- rm -f $(DESTDIR)$(libdir)/libxenctrl.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxenctrl.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxenctrl-$(PACKAGE_VERSION).so
+ rm -f $(DESTDIR)$(libdir)/libxenctrl.a
+
+ .PHONY: TAGS
+@@ -249,22 +242,18 @@ rpm: build
+ libxenctrl.a: $(CTRL_LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxenctrl.so: libxenctrl.so.$(MAJOR)
+- $(SYMLINK_SHLIB) $< $@
+-libxenctrl.so.$(MAJOR): libxenctrl.so.$(MAJOR).$(MINOR)
++libxenctrl.so: libxenctrl-$(PACKAGE_VERSION).so
+ $(SYMLINK_SHLIB) $< $@
+
+-libxenctrl.so.$(MAJOR).$(MINOR): $(CTRL_PIC_OBJS)
+- $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenctrl.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxengnttab) $(LDLIBS_libxencall) $(LDLIBS_libxenforeignmemory) $(LDLIBS_libxendevicemodel) $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
++libxenctrl-$(PACKAGE_VERSION).so: $(CTRL_PIC_OBJS)
++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxengnttab) $(LDLIBS_libxencall) $(LDLIBS_libxenforeignmemory) $(LDLIBS_libxendevicemodel) $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
+
+ # libxenguest
+
+ libxenguest.a: $(GUEST_LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxenguest.so: libxenguest.so.$(MAJOR)
+- $(SYMLINK_SHLIB) $< $@
+-libxenguest.so.$(MAJOR): libxenguest.so.$(MAJOR).$(MINOR)
++libxenguest.so: libxenguest-$(PACKAGE_VERSION).so
+ $(SYMLINK_SHLIB) $< $@
+
+ ifeq ($(CONFIG_MiniOS),y)
+@@ -276,9 +265,9 @@ endif
+ xc_dom_bzimageloader.o: CFLAGS += $(filter -D%,$(zlib-options))
+ xc_dom_bzimageloader.opic: CFLAGS += $(filter -D%,$(zlib-options))
+
+-libxenguest.so.$(MAJOR).$(MINOR): COMPRESSION_LIBS = $(filter -l%,$(zlib-options))
+-libxenguest.so.$(MAJOR).$(MINOR): $(GUEST_PIC_OBJS) libxenctrl.so
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenguest.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(GUEST_PIC_OBJS) $(COMPRESSION_LIBS) -lz $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
++libxenguest-$(PACKAGE_VERSION).so: COMPRESSION_LIBS = $(filter -l%,$(zlib-options))
++libxenguest-$(PACKAGE_VERSION).so: $(GUEST_PIC_OBJS) libxenctrl-$(PACKAGE_VERSION).so
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $(GUEST_PIC_OBJS) $(COMPRESSION_LIBS) -lz $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(PTHREAD_LIBS) $(APPEND_LDFLAGS)
+
+ -include $(DEPS_INCLUDE)
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:49 +0200
+Subject: tools-libxl-abiname.diff
+
+Patch-Name: tools-libxl-abiname.diff
+---
+ tools/libxl/Makefile | 52 ++++++++++++++++++----------------------------------
+ 1 file changed, 18 insertions(+), 34 deletions(-)
+
+diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
+index 035e66e..e3f376a 100644
+--- a/tools/libxl/Makefile
++++ b/tools/libxl/Makefile
+@@ -5,12 +5,6 @@
+ XEN_ROOT = $(CURDIR)/../..
+ include $(XEN_ROOT)/tools/Rules.mk
+
+-MAJOR = 4.11
+-MINOR = 0
+-
+-XLUMAJOR = 4.11
+-XLUMINOR = 0
+-
+ CFLAGS += -Werror -Wno-format-zero-length -Wmissing-declarations \
+ -Wno-declaration-after-statement -Wformat-nonliteral
+ CFLAGS += -I. -fPIC
+@@ -190,12 +184,12 @@ SAVE_HELPER_OBJS = libxl_save_helper.o _libxl_save_msgs_helper.o
+ $(SAVE_HELPER_OBJS): CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenevtchn)
+
+ PKG_CONFIG = xenlight.pc xlutil.pc
+-PKG_CONFIG_VERSION := $(MAJOR).$(MINOR)
++PKG_CONFIG_VERSION := $(PACKAGE_VERSION)
+
+ ifneq ($(CONFIG_LIBXC_MINIOS),y)
+ PKG_CONFIG_INST := $(PKG_CONFIG)
+-xenlight.pc: PKG_CONFIG_VERSION = $(MAJOR).$(MINOR)
+-xlutil.pc: PKG_CONFIG_VERSION = $(XLUMAJOR).$(XLUMINOR)
++xenlight.pc: PKG_CONFIG_VERSION = $(PACKAGE_VERSION)
++xlutil.pc: PKG_CONFIG_VERSION = $(PACKAGE_VERSION)
+ $(PKG_CONFIG_INST): PKG_CONFIG_PREFIX = $(prefix)
+ $(PKG_CONFIG_INST): PKG_CONFIG_INCDIR = $(includedir)
+ $(PKG_CONFIG_INST): PKG_CONFIG_LIBDIR = $(libdir)
+@@ -203,8 +197,8 @@ endif
+
+ PKG_CONFIG_LOCAL := $(foreach pc,$(PKG_CONFIG),$(PKG_CONFIG_DIR)/$(pc))
+
+-$(PKG_CONFIG_DIR)/xenlight.pc: PKG_CONFIG_VERSION = $(MAJOR).$(MINOR)
+-$(PKG_CONFIG_DIR)/xlutil.pc: PKG_CONFIG_VERSION = $(XLUMAJOR).$(XLUMINOR)
++$(PKG_CONFIG_DIR)/xenlight.pc: PKG_CONFIG_VERSION = $(PACKAGE_VERSION)
++$(PKG_CONFIG_DIR)/xlutil.pc: PKG_CONFIG_VERSION = $(PACKAGE_VERSION)
+ $(PKG_CONFIG_LOCAL): PKG_CONFIG_PREFIX = $(XEN_ROOT)
+ $(PKG_CONFIG_LOCAL): PKG_CONFIG_INCDIR = $(CURDIR)
+ $(PKG_CONFIG_LOCAL): PKG_CONFIG_LIBDIR = $(CURDIR)
+@@ -274,29 +268,23 @@ _libxl_type%.h _libxl_type%_json.h _libxl_type%_private.h _libxl_type%.c: libxl_
+ $(call move-if-changed,__libxl_type$(stem)_json.h,_libxl_type$(stem)_json.h)
+ $(call move-if-changed,__libxl_type$(stem).c,_libxl_type$(stem).c)
+
+-libxenlight.so: libxenlight.so.$(MAJOR)
+- $(SYMLINK_SHLIB) $< $@
+-
+-libxenlight.so.$(MAJOR): libxenlight.so.$(MAJOR).$(MINOR)
++libxenlight.so: libxenlight-$(PACKAGE_VERSION).so
+ $(SYMLINK_SHLIB) $< $@
+
+-libxenlight.so.$(MAJOR).$(MINOR): $(LIBXL_OBJS)
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenlight.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
++libxenlight-$(PACKAGE_VERSION).so: $(LIBXL_OBJS)
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
+
+ libxenlight_test.so: $(LIBXL_OBJS) $(LIBXL_TEST_OBJS)
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenlight.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
+
+ libxenlight.a: $(LIBXL_OBJS)
+ $(AR) rcs libxenlight.a $^
+
+-libxlutil.so: libxlutil.so.$(XLUMAJOR)
+- $(SYMLINK_SHLIB) $< $@
+-
+-libxlutil.so.$(XLUMAJOR): libxlutil.so.$(XLUMAJOR).$(XLUMINOR)
++libxlutil.so: libxlutil-$(PACKAGE_VERSION).so
+ $(SYMLINK_SHLIB) $< $@
+
+-libxlutil.so.$(XLUMAJOR).$(XLUMINOR): $(LIBXLU_OBJS) libxenlight.so
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxlutil.so.$(XLUMAJOR) $(SHLIB_LDFLAGS) -o $@ $(LIBXLU_OBJS) $(LIBXLU_LIBS) $(APPEND_LDFLAGS)
++libxlutil-$(PACKAGE_VERSION).so: $(LIBXLU_OBJS) libxenlight.so
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $(LIBXLU_OBJS) $(LIBXLU_LIBS) $(APPEND_LDFLAGS)
+
+ libxlutil.a: $(LIBXLU_OBJS)
+ $(AR) rcs libxlutil.a $^
+@@ -316,13 +304,11 @@ install: all
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_PROG) libxl-save-helper $(DESTDIR)$(LIBEXEC_BIN)
+- $(INSTALL_SHLIB) libxenlight.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxenlight.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenlight.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxenlight.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenlight.so
++ $(INSTALL_SHLIB) libxenlight-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)
++ $(SYMLINK_SHLIB) libxenlight-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libxenlight.so
+ $(INSTALL_DATA) libxenlight.a $(DESTDIR)$(libdir)
+- $(INSTALL_SHLIB) libxlutil.so.$(XLUMAJOR).$(XLUMINOR) $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxlutil.so.$(XLUMAJOR).$(XLUMINOR) $(DESTDIR)$(libdir)/libxlutil.so.$(XLUMAJOR)
+- $(SYMLINK_SHLIB) libxlutil.so.$(XLUMAJOR) $(DESTDIR)$(libdir)/libxlutil.so
++ $(INSTALL_SHLIB) libxlutil-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)
++ $(SYMLINK_SHLIB) libxlutil-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libxlutil.so
+ $(INSTALL_DATA) libxlutil.a $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxl.h libxl_event.h libxl_json.h _libxl_types.h _libxl_types_json.h _libxl_list.h libxl_utils.h libxl_uuid.h libxlutil.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xenlight.pc $(DESTDIR)$(PKG_INSTALLDIR)
+@@ -334,12 +320,10 @@ uninstall:
+ rm -f $(addprefix $(DESTDIR)$(includedir)/,libxl.h libxl_event.h libxl_json.h _libxl_types.h _libxl_types_json.h _libxl_list.h libxl_utils.h libxl_uuid.h libxlutil.h)
+ rm -f $(DESTDIR)$(libdir)/libxlutil.a
+ rm -f $(DESTDIR)$(libdir)/libxlutil.so
+- rm -f $(DESTDIR)$(libdir)/libxlutil.so.$(XLUMAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxlutil.so.$(XLUMAJOR).$(XLUMINOR)
++ rm -f $(DESTDIR)$(libdir)/libxlutil-$(PACKAGE_VERSION).so
+ rm -f $(DESTDIR)$(libdir)/libxenlight.a
+ rm -f $(DESTDIR)$(libdir)/libxenlight.so
+- rm -f $(DESTDIR)$(libdir)/libxenlight.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxenlight.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxenlight-$(PACKAGE_VERSION).so
+ rm -f $(DESTDIR)$(LIBEXEC_BIN)/libxl-save-helper
+
+ .PHONY: clean
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:57 +0200
+Subject: tools-libxl-prefix.diff
+
+Patch-Name: tools-libxl-prefix.diff
+
+Note: SMB: Added change for LIBEXEC_BIN for tools/xl/Makefile
+---
+ tools/libxl/Makefile | 5 ++++-
+ tools/xl/Makefile | 6 +++---
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
+index e3f376a..032a8ae 100644
+--- a/tools/libxl/Makefile
++++ b/tools/libxl/Makefile
+@@ -13,6 +13,9 @@ ifeq ($(CONFIG_Linux),y)
+ LIBUUID_LIBS += -luuid
+ endif
+
++LDFLAGS_XL = $(call LDFLAGS_RPATH,../lib)
++LDFLAGS_LIBXL = $(call LDFLAGS_RPATH)
++
+ LIBXL_LIBS =
+ LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) $(LDLIBS_libblktapctl) $(LDLIBS_libxentoolcore) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
+ ifeq ($(CONFIG_LIBNL),y)
+@@ -272,7 +275,7 @@ libxenlight.so: libxenlight-$(PACKAGE_VERSION).so
+ $(SYMLINK_SHLIB) $< $@
+
+ libxenlight-$(PACKAGE_VERSION).so: $(LIBXL_OBJS)
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(LDFLAGS_LIBXL) $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
+
+ libxenlight_test.so: $(LIBXL_OBJS) $(LIBXL_TEST_OBJS)
+ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG),$@ $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXL_LIBS) $(APPEND_LDFLAGS)
+diff --git a/tools/xl/Makefile b/tools/xl/Makefile
+index a5117ab..845ea60 100644
+--- a/tools/xl/Makefile
++++ b/tools/xl/Makefile
+@@ -41,15 +41,15 @@ xl: $(XL_OBJS)
+
+ .PHONY: install
+ install: all
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_DIR) $(DESTDIR)$(BASH_COMPLETION_DIR)
+- $(INSTALL_PROG) xl $(DESTDIR)$(sbindir)
++ $(INSTALL_PROG) xl $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_DATA) bash-completion $(DESTDIR)$(BASH_COMPLETION_DIR)/xl.sh
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(DESTDIR)$(BASH_COMPLETION_DIR)/xl.sh
+- rm -f $(DESTDIR)$(sbindir)/xl
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xl
+
+ .PHONY: clean
+ clean:
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:59 +0200
+Subject: tools-misc-prefix.diff
+
+Patch-Name: tools-misc-prefix.diff
+---
+ tools/misc/Makefile | 10 ++++------
+ 1 file changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/tools/misc/Makefile b/tools/misc/Makefile
+index eaa2879..0dba038 100644
+--- a/tools/misc/Makefile
++++ b/tools/misc/Makefile
+@@ -55,18 +55,16 @@ all build: $(TARGETS_BUILD)
+
+ .PHONY: install
+ install: build
+- $(INSTALL_DIR) $(DESTDIR)$(bindir)
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+- $(INSTALL_PYTHON_PROG) $(INSTALL_BIN) $(DESTDIR)$(bindir)
+- $(INSTALL_PYTHON_PROG) $(INSTALL_SBIN) $(DESTDIR)$(sbindir)
++ $(INSTALL_PYTHON_PROG) $(INSTALL_BIN) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PYTHON_PROG) $(INSTALL_SBIN) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_PYTHON_PROG) $(INSTALL_PRIVBIN) $(DESTDIR)$(LIBEXEC_BIN)
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(INSTALL_PRIVBIN))
+- rm -f $(addprefix $(DESTDIR)$(sbindir)/, $(INSTALL_SBIN))
+- rm -f $(addprefix $(DESTDIR)$(bindir)/, $(INSTALL_BIN))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(INSTALL_SBIN))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(INSTALL_BIN))
+
+ .PHONY: clean
+ clean:
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:01 +0200
+Subject: tools-pygrub-prefix.diff
+
+Patch-Name: tools-pygrub-prefix.diff
+---
+ tools/pygrub/Makefile | 5 -----
+ tools/pygrub/setup.py | 2 ++
+ tools/pygrub/src/pygrub | 2 ++
+ 3 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/tools/pygrub/Makefile b/tools/pygrub/Makefile
+index 536af07..9f6127a 100644
+--- a/tools/pygrub/Makefile
++++ b/tools/pygrub/Makefile
+@@ -18,11 +18,6 @@ install: all
+ CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \
+ setup.py install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \
+ --root="$(DESTDIR)" --install-scripts=$(LIBEXEC_BIN) --force
+- set -e; if [ $(bindir) != $(LIBEXEC_BIN) -a \
+- "`readlink -f $(DESTDIR)/$(bindir)`" != \
+- "`readlink -f $(LIBEXEC_BIN)`" ]; then \
+- ln -sf $(LIBEXEC_BIN)/pygrub $(DESTDIR)/$(bindir); \
+- fi
+
+ .PHONY: uninstall
+ uninstall:
+diff --git a/tools/pygrub/setup.py b/tools/pygrub/setup.py
+index 52dcf57..8a1be9a 100644
+--- a/tools/pygrub/setup.py
++++ b/tools/pygrub/setup.py
+@@ -4,11 +4,13 @@ import os
+ import sys
+
+ extra_compile_args = [ "-fno-strict-aliasing", "-Werror" ]
++extra_link_args = [ "-Wl,-rpath,${ORIGIN}/.." ]
+
+ XEN_ROOT = "../.."
+
+ fsimage = Extension("fsimage",
+ extra_compile_args = extra_compile_args,
++ extra_link_args = extra_link_args,
+ include_dirs = [ XEN_ROOT + "/tools/libfsimage/common/" ],
+ library_dirs = [ XEN_ROOT + "/tools/libfsimage/common/" ],
+ libraries = ["fsimage"],
+diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
+index dd0c8f7..bfcfb4f 100755
+--- a/tools/pygrub/src/pygrub
++++ b/tools/pygrub/src/pygrub
+@@ -21,6 +21,8 @@ import xen.lowlevel.xc
+ import curses, _curses, curses.wrapper, curses.textpad, curses.ascii
+ import getopt
+
++sys.path.insert(1, sys.path[0] + '/../lib/python')
++
+ import fsimage
+ import grub.GrubConf
+ import grub.LiloConf
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:02 +0200
+Subject: tools-python-prefix.diff
+
+Patch-Name: tools-python-prefix.diff
+---
+ tools/python/setup.py | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/tools/python/setup.py b/tools/python/setup.py
+index 8faf1c0..db61025 100644
+--- a/tools/python/setup.py
++++ b/tools/python/setup.py
+@@ -5,6 +5,7 @@ import os, sys
+ XEN_ROOT = "../.."
+
+ extra_compile_args = [ "-fno-strict-aliasing", "-Werror" ]
++extra_link_args = [ "-Wl,-rpath,${ORIGIN}/../../.." ]
+
+ PATH_XEN = XEN_ROOT + "/tools/include"
+ PATH_LIBXENTOOLLOG = XEN_ROOT + "/tools/libs/toollog"
+@@ -23,11 +24,12 @@ xc = Extension("xc",
+ library_dirs = [ PATH_LIBXC ],
+ libraries = [ "xenctrl", "xenguest" ],
+ depends = [ PATH_LIBXC + "/libxenctrl.so", PATH_LIBXC + "/libxenguest.so" ],
+- extra_link_args = [ "-Wl,-rpath-link="+PATH_LIBXENTOOLLOG ],
++ extra_link_args = extra_link_args + [ "-Wl,-rpath-link="+PATH_LIBXENTOOLLOG ],
+ sources = [ "xen/lowlevel/xc/xc.c" ])
+
+ xs = Extension("xs",
+ extra_compile_args = extra_compile_args,
++ extra_link_args = extra_link_args,
+ include_dirs = [ PATH_XEN, PATH_XENSTORE + "/include", "xen/lowlevel/xs" ],
+ library_dirs = [ PATH_XENSTORE ],
+ libraries = [ "xenstore" ],
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:51 +0200
+Subject: tools-rpath.diff
+
+Patch-Name: tools-rpath.diff
+---
+ tools/Rules.mk | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tools/Rules.mk b/tools/Rules.mk
+index 79c83d9..7508982 100644
+--- a/tools/Rules.mk
++++ b/tools/Rules.mk
+@@ -9,6 +9,8 @@ include $(XEN_ROOT)/Config.mk
+ export _INSTALL := $(INSTALL)
+ INSTALL = $(XEN_ROOT)/tools/cross-install
+
++LDFLAGS_RPATH = -Wl,-rpath,'$${ORIGIN}$(if $(1),/$(1))'
++
+ XEN_INCLUDE = $(XEN_ROOT)/tools/include
+ XEN_LIBXENTOOLCORE = $(XEN_ROOT)/tools/libs/toolcore
+ XEN_LIBXENTOOLLOG = $(XEN_ROOT)/tools/libs/toollog
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:05 +0200
+Subject: tools-xcutils-rpath.diff
+
+Patch-Name: tools-xcutils-rpath.diff
+---
+ tools/xcutils/Makefile | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tools/xcutils/Makefile b/tools/xcutils/Makefile
+index 2811893..5dd0a02 100644
+--- a/tools/xcutils/Makefile
++++ b/tools/xcutils/Makefile
+@@ -19,6 +19,8 @@ CFLAGS += -Werror
+ CFLAGS_readnotes.o := $(CFLAGS_libxenevtchn) $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) -I$(XEN_ROOT)/tools/libxc $(CFLAGS_libxencall)
+ CFLAGS_lsevtchn.o := $(CFLAGS_libxenevtchn) $(CFLAGS_libxenctrl)
+
++APPEND_LDFLAGS += $(call LDFLAGS_RPATH,../lib)
++
+ .PHONY: all
+ all: build
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:06 +0200
+Subject: tools-xenmon-prefix.diff
+
+Patch-Name: tools-xenmon-prefix.diff
+---
+ tools/xenmon/Makefile | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/tools/xenmon/Makefile b/tools/xenmon/Makefile
+index e45c5b8..358bcec 100644
+--- a/tools/xenmon/Makefile
++++ b/tools/xenmon/Makefile
+@@ -18,6 +18,7 @@ CFLAGS += $(CFLAGS_libxenevtchn)
+ CFLAGS += $(CFLAGS_libxenctrl)
+ LDLIBS += $(LDLIBS_libxenctrl)
+ LDLIBS += $(LDLIBS_libxenevtchn)
++LDFLAGS += $(call LDFLAGS_RPATH,../lib)
+
+ SCRIPTS = xenmon.py
+
+@@ -29,16 +30,16 @@ build: xentrace_setmask xenbaked
+
+ .PHONY: install
+ install: build
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+- $(INSTALL_PROG) xenbaked $(DESTDIR)$(sbindir)/xenbaked
+- $(INSTALL_PROG) xentrace_setmask $(DESTDIR)$(sbindir)/xentrace_setmask
+- $(INSTALL_PROG) xenmon.py $(DESTDIR)$(sbindir)/xenmon.py
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PROG) xenbaked $(DESTDIR)$(LIBEXEC_BIN)/xenbaked
++ $(INSTALL_PROG) xentrace_setmask $(DESTDIR)$(LIBEXEC_BIN)/xentrace_setmask
++ $(INSTALL_PROG) xenmon.py $(DESTDIR)$(LIBEXEC_BIN)/xenmon.py
+
+ .PHONY: uninstall
+ uninstall:
+- rm -f $(DESTDIR)$(sbindir)/xenbaked
+- rm -f $(DESTDIR)$(sbindir)/xentrace_setmask
+- rm -f $(DESTDIR)$(sbindir)/xenmon.py
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenbaked
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xentrace_setmask
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenmon.py
+
+ .PHONY: clean
+ clean:
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:08 +0200
+Subject: tools-xenpaging-prefix.diff
+
+Patch-Name: tools-xenpaging-prefix.diff
+---
+ tools/xenpaging/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/xenpaging/Makefile b/tools/xenpaging/Makefile
+index 968678c..a119ac5 100644
+--- a/tools/xenpaging/Makefile
++++ b/tools/xenpaging/Makefile
+@@ -4,7 +4,7 @@ include $(XEN_ROOT)/tools/Rules.mk
+ # xenpaging.c and file_ops.c incorrectly use libxc internals
+ CFLAGS += $(CFLAGS_libxentoollog) $(CFLAGS_libxenevtchn) $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(PTHREAD_CFLAGS) -I$(XEN_ROOT)/tools/libxc $(CFLAGS_libxencall)
+ LDLIBS += $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenstore) $(PTHREAD_LIBS)
+-LDFLAGS += $(PTHREAD_LDFLAGS)
++LDFLAGS += $(PTHREAD_LDFLAGS) $(call LDFLAGS_RPATH,../lib)
+
+ POLICY = default
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 13 Dec 2014 19:37:02 +0100
+Subject: tools-xenpmd-prefix.diff
+
+Patch-Name: tools-xenpmd-prefix.diff
+---
+ tools/xenpmd/Makefile | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tools/xenpmd/Makefile b/tools/xenpmd/Makefile
+index e0d3f06..4081684 100644
+--- a/tools/xenpmd/Makefile
++++ b/tools/xenpmd/Makefile
+@@ -11,8 +11,8 @@ all: xenpmd
+
+ .PHONY: install
+ install: all
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+- $(INSTALL_PROG) xenpmd $(DESTDIR)$(sbindir)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PROG) xenpmd $(DESTDIR)$(LIBEXEC_BIN)
+
+ .PHONY: clean
+ clean:
+@@ -23,7 +23,7 @@ distclean: clean
+
+ .PHONY: uninstall
+ uninstall:
+- rm -f $(DESTDIR)$(sbindir)/xenpmd
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenpmd
+
+ xenpmd: xenpmd.o Makefile
+ $(CC) $(LDFLAGS) $< -o $@ $(LDLIBS) $(APPEND_LDFLAGS)
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:46:50 +0200
+Subject: tools-xenstat-abiname.diff
+
+Patch-Name: tools-xenstat-abiname.diff
+---
+ tools/xenstat/libxenstat/Makefile | 26 ++++++--------------------
+ 1 file changed, 6 insertions(+), 20 deletions(-)
+
+diff --git a/tools/xenstat/libxenstat/Makefile b/tools/xenstat/libxenstat/Makefile
+index 8979fa1..2d165b7 100644
+--- a/tools/xenstat/libxenstat/Makefile
++++ b/tools/xenstat/libxenstat/Makefile
+@@ -18,18 +18,14 @@ include $(XEN_ROOT)/tools/Rules.mk
+ LDCONFIG=ldconfig
+ MAKE_LINK=ln -sf
+
+-MAJOR=0
+-MINOR=0
+-
+ LIB=src/libxenstat.a
+-SHLIB=src/libxenstat.so.$(MAJOR).$(MINOR)
+-SHLIB_LINKS=src/libxenstat.so.$(MAJOR) src/libxenstat.so
+-OBJECTS-y=src/xenstat.o src/xenstat_qmp.o
++SHLIB=src/libxenstat.so
++OBJECTS-y=src/xenstat.o
+ OBJECTS-$(CONFIG_Linux) += src/xenstat_linux.o
+ OBJECTS-$(CONFIG_SunOS) += src/xenstat_solaris.o
+ OBJECTS-$(CONFIG_NetBSD) += src/xenstat_netbsd.o
+ OBJECTS-$(CONFIG_FreeBSD) += src/xenstat_freebsd.o
+-SONAME_FLAGS=-Wl,$(SONAME_LDFLAG) -Wl,libxenstat.so.$(MAJOR)
++SONAME_FLAGS=-Wl,$(SONAME_LDFLAG),libxenstat.so
+
+ CFLAGS+=-fPIC
+ CFLAGS+=-Isrc $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(CFLAGS_xeninclude) -include $(XEN_ROOT)/tools/config.h
+@@ -38,7 +34,7 @@ LDLIBS-y = $(LDLIBS_libxenstore) $(LDLIBS_libxenctrl) -lyajl
+ LDLIBS-$(CONFIG_SunOS) += -lkstat
+
+ PKG_CONFIG := xenstat.pc
+-PKG_CONFIG_VERSION := $(MAJOR).$(MINOR)
++PKG_CONFIG_VERSION := $(PACKAGE_VERSION)
+
+ ifneq ($(CONFIG_LIBXC_MINIOS),y)
+ PKG_CONFIG_INST := $(PKG_CONFIG)
+@@ -54,7 +50,7 @@ $(PKG_CONFIG_LOCAL): PKG_CONFIG_INCDIR = $(XEN_LIBXENSTAT)
+ $(PKG_CONFIG_LOCAL): PKG_CONFIG_LIBDIR = $(CURDIR)
+
+ .PHONY: all
+-all: $(LIB) $(SHLIB) $(SHLIB_LINKS) $(PKG_CONFIG_INST) $(PKG_CONFIG_LOCAL)
++all: $(LIB) $(SHLIB) $(PKG_CONFIG_INST) $(PKG_CONFIG_LOCAL)
+
+ $(OBJECTS-y): src/_paths.h
+
+@@ -66,27 +62,17 @@ $(SHLIB): $(OBJECTS-y)
+ $(CC) $(LDFLAGS) $(SONAME_FLAGS) $(SHLIB_LDFLAGS) -o $@ \
+ $(OBJECTS-y) $(LDLIBS-y) $(APPEND_LDFLAGS)
+
+-src/libxenstat.so.$(MAJOR): $(SHLIB)
+- $(MAKE_LINK) $(<F) $@
+-
+-src/libxenstat.so: src/libxenstat.so.$(MAJOR)
+- $(MAKE_LINK) $(<F) $@
+-
+ .PHONY: install
+ install: all
+ $(INSTALL_DATA) src/xenstat.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) $(LIB) $(DESTDIR)$(libdir)/libxenstat.a
+- $(INSTALL_PROG) src/libxenstat.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+- ln -sf libxenstat.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenstat.so.$(MAJOR)
+- ln -sf libxenstat.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenstat.so
++ $(INSTALL_PROG) src/libxenstat.so $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) xenstat.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenstat.pc
+ rm -f $(DESTDIR)$(libdir)/libxenstat.so
+- rm -f $(DESTDIR)$(libdir)/libxenstat.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxenstat.so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxenstat.a
+ rm -f $(DESTDIR)$(includedir)/xenstat.h
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:09 +0200
+Subject: tools-xenstat-prefix.diff
+
+Patch-Name: tools-xenstat-prefix.diff
+---
+ tools/xenstat/libxenstat/Makefile | 10 ++++++----
+ tools/xenstat/xentop/Makefile | 8 +++++---
+ 2 files changed, 11 insertions(+), 7 deletions(-)
+
+diff --git a/tools/xenstat/libxenstat/Makefile b/tools/xenstat/libxenstat/Makefile
+index 2d165b7..ff317b3 100644
+--- a/tools/xenstat/libxenstat/Makefile
++++ b/tools/xenstat/libxenstat/Makefile
+@@ -20,7 +20,7 @@ MAKE_LINK=ln -sf
+
+ LIB=src/libxenstat.a
+ SHLIB=src/libxenstat.so
+-OBJECTS-y=src/xenstat.o
++OBJECTS-y=src/xenstat.o src/xenstat_qmp.o
+ OBJECTS-$(CONFIG_Linux) += src/xenstat_linux.o
+ OBJECTS-$(CONFIG_SunOS) += src/xenstat_solaris.o
+ OBJECTS-$(CONFIG_NetBSD) += src/xenstat_netbsd.o
+@@ -64,17 +64,19 @@ $(SHLIB): $(OBJECTS-y)
+
+ .PHONY: install
+ install: all
++ $(INSTALL_DIR) $(DESTDIR)$(includedir)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_LIB)
+ $(INSTALL_DATA) src/xenstat.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) $(LIB) $(DESTDIR)$(libdir)/libxenstat.a
+- $(INSTALL_PROG) src/libxenstat.so $(DESTDIR)$(libdir)
++ $(INSTALL_PROG) src/libxenstat.so $(DESTDIR)$(LIBEXEC_LIB)
+ $(INSTALL_DATA) xenstat.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenstat.pc
+- rm -f $(DESTDIR)$(libdir)/libxenstat.so
++ rm -f $(DESTDIR)$(LIBEXEC_LIB)/libxenstat.so
+ rm -f $(DESTDIR)$(libdir)/libxenstat.a
+- rm -f $(DESTDIR)$(includedir)/xenstat.h
++ rm -f $(DESTDIR)$(LIBEXEC_LIB)/xenstat.h
+
+ PYLIB=bindings/swig/python/_xenstat.so
+ PYMOD=bindings/swig/python/xenstat.py
+diff --git a/tools/xenstat/xentop/Makefile b/tools/xenstat/xentop/Makefile
+index ec612db..6a8c8d2 100644
+--- a/tools/xenstat/xentop/Makefile
++++ b/tools/xenstat/xentop/Makefile
+@@ -19,7 +19,9 @@ all install xentop uninstall:
+ else
+
+ CFLAGS += -DGCC_PRINTF -Werror $(CFLAGS_libxenstat)
++LDFLAGS += $(call LDFLAGS_RPATH,../lib)
+ LDLIBS += $(LDLIBS_libxenstat) $(CURSES_LIBS) $(TINFO_LIBS) $(SOCKET_LIBS) -lm
++LDLIBS += $(LDLIBS_libxenctrl) $(LDLIBS_libxenstore)
+ CFLAGS += -DHOST_$(XEN_OS)
+
+ # Include configure output (config.h)
+@@ -31,12 +33,12 @@ all: xentop
+
+ .PHONY: install
+ install: xentop
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+- $(INSTALL_PROG) xentop $(DESTDIR)$(sbindir)/xentop
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PROG) xentop $(DESTDIR)$(LIBEXEC_BIN)/xentop
+
+ .PHONY: uninstall
+ uninstall:
+- rm -f $(DESTDIR)$(sbindir)/xentop
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xentop
+
+ endif
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:12 +0200
+Subject: tools-xenstore-prefix.diff
+
+Patch-Name: tools-xenstore-prefix.diff
+---
+ tools/helpers/Makefile | 2 +-
+ tools/xenstore/Makefile | 14 ++++++++------
+ 2 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/tools/helpers/Makefile b/tools/helpers/Makefile
+index 4f3bbe6..011f340 100644
+--- a/tools/helpers/Makefile
++++ b/tools/helpers/Makefile
+@@ -31,7 +31,7 @@ xen-init-dom0: $(XEN_INIT_DOM0_OBJS)
+ $(INIT_XENSTORE_DOMAIN_OBJS): _paths.h
+
+ init-xenstore-domain: $(INIT_XENSTORE_DOMAIN_OBJS)
+- $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenstore) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenlight) $(APPEND_LDFLAGS)
++ $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenstore) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenlight) $(call LDFLAGS_RPATH,../lib) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: all
+diff --git a/tools/xenstore/Makefile b/tools/xenstore/Makefile
+index 445e991..e47c8c5 100644
+--- a/tools/xenstore/Makefile
++++ b/tools/xenstore/Makefile
+@@ -18,6 +18,8 @@ CFLAGS += -DXEN_RUN_STORED="\"$(XEN_RUN_STORED)\""
+ CFLAGS += $(CFLAGS-y)
+ LDFLAGS += $(LDFLAGS-y)
+
++LDFLAGS_libxenctrl += $(call LDFLAGS_RPATH,../lib)
++
+ CLIENTS := xenstore-exists xenstore-list xenstore-read xenstore-rm xenstore-chmod
+ CLIENTS += xenstore-write xenstore-ls xenstore-watch
+
+@@ -79,7 +81,7 @@ endif
+ $(XENSTORED_OBJS): CFLAGS += $(CFLAGS_libxengnttab)
+
+ xenstored: $(XENSTORED_OBJS)
+- $(CC) $^ $(LDFLAGS) $(LDLIBS_libxenevtchn) $(LDLIBS_libxengnttab) $(LDLIBS_libxenctrl) $(LDLIBS_xenstored) $(SOCKET_LIBS) -o $@ $(APPEND_LDFLAGS)
++ $(CC) $^ $(LDFLAGS) $(LDLIBS_libxenevtchn) $(LDLIBS_libxengnttab) $(LDLIBS_libxenctrl) $(LDLIBS_xenstored) $(SOCKET_LIBS) $(call LDFLAGS_RPATH,../lib) -o $@ $(APPEND_LDFLAGS)
+
+ xenstored.a: $(XENSTORED_OBJS)
+ $(AR) cr $@ $^
+@@ -158,13 +160,13 @@ tarball: clean
+ install: all
+ $(INSTALL_DIR) $(DESTDIR)$(bindir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)/xenstore-compat
+ ifeq ($(XENSTORE_XENSTORED),y)
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+ $(INSTALL_DIR) $(DESTDIR)$(XEN_LIB_STORED)
+- $(INSTALL_PROG) xenstored $(DESTDIR)$(sbindir)
++ $(INSTALL_PROG) xenstored $(DESTDIR)$(LIBEXEC_BIN)
+ endif
+- $(INSTALL_PROG) xenstore-control $(DESTDIR)$(bindir)
++ $(INSTALL_PROG) xenstore-control $(DESTDIR)$(LIBEXEC_BIN)
+ $(INSTALL_PROG) xenstore $(DESTDIR)$(bindir)
+ set -e ; for c in $(CLIENTS) ; do \
+ ln -f $(DESTDIR)$(bindir)/xenstore $(DESTDIR)$(bindir)/$${c} ; \
+@@ -197,9 +199,9 @@ uninstall:
+ rm -f $(DESTDIR)$(libdir)/libxenstore.so.$(MAJOR).$(MINOR)
+ rm -f $(addprefix $(DESTDIR)$(bindir)/, $(CLIENTS))
+ rm -f $(DESTDIR)$(bindir)/xenstore
+- rm -f $(DESTDIR)$(bindir)/xenstore-control
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenstore-control
+ ifeq ($(XENSTORE_XENSTORED),y)
+- rm -f $(DESTDIR)$(sbindir)/xenstored
++ rm -f $(DESTDIR)$(LIBEXEC_BIN)/xenstored
+ if [ -d $(DESTDIR)$(XEN_LIB_STORED) ]; then \
+ rmdir --ignore-fail-on-non-empty $(DESTDIR)$(XEN_LIB_STORED); \
+ fi
--- /dev/null
+From: Debian Xen Team <pkg-xen-devel@lists.alioth.debian.org>
+Date: Fri, 24 Aug 2018 18:45:16 +0100
+Subject: tools-xentoolcore-abiname
+
+---
+ tools/libs/toolcore/Makefile | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/tools/libs/toolcore/Makefile b/tools/libs/toolcore/Makefile
+index 8b1d48b..d64a770 100644
+--- a/tools/libs/toolcore/Makefile
++++ b/tools/libs/toolcore/Makefile
+@@ -59,22 +59,22 @@ include/_xentoolcore_list.h: $(XEN_INCLUDE)/xen-external/bsd-sys-queue-h-seddery
+ libxentoolcore.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxentoolcore.so: libxentoolcore.so.$(MAJOR)
++libxentoolcore.so: libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxentoolcore.so.$(MAJOR): libxentoolcore.so.$(MAJOR).$(MINOR)
++libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR): libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxentoolcore.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxentoolcore.map
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxentoolcore.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(APPEND_LDFLAGS)
++libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxentoolcore.map
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxentoolcore.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxentoolcore.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxentoolcore.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxentoolcore.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxentoolcore.so.$(MAJOR) $(DESTDIR)$(libdir)/libxentoolcore.so
++ $(SYMLINK_SHLIB) libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxentoolcore.so
+ $(INSTALL_DATA) include/xentoolcore.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xentoolcore.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -83,8 +83,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xentoolcore.pc
+ rm -f $(DESTDIR)$(includedir)/xentoolcore.h
+ rm -f $(DESTDIR)$(libdir)/libxentoolcore.so
+- rm -f $(DESTDIR)$(libdir)/libxentoolcore.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxentoolcore.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxentoolcore.a
+
+ .PHONY: TAGS
+@@ -94,7 +94,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxentoolcore.so.$(MAJOR).$(MINOR) libxentoolcore.so.$(MAJOR)
++ rm -f libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxentoolcore-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xentoolcore.pc
+
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:14 +0200
+Subject: tools-xentrace-prefix.diff
+
+Patch-Name: tools-xentrace-prefix.diff
+---
+ tools/xentrace/Makefile | 15 +++++++--------
+ 1 file changed, 7 insertions(+), 8 deletions(-)
+
+diff --git a/tools/xentrace/Makefile b/tools/xentrace/Makefile
+index 0bad942..f803612 100644
+--- a/tools/xentrace/Makefile
++++ b/tools/xentrace/Makefile
+@@ -8,6 +8,7 @@ CFLAGS += $(CFLAGS_libxenctrl)
+ LDLIBS += $(LDLIBS_libxenevtchn)
+ LDLIBS += $(LDLIBS_libxenctrl)
+ LDLIBS += $(ARGP_LDFLAGS)
++LDFLAGS += $(call LDFLAGS_RPATH,../lib)
+
+ BIN-$(CONFIG_X86) = xenalyze
+ BIN = $(BIN-y)
+@@ -23,21 +24,19 @@ build: $(BIN) $(SBIN) $(LIBBIN)
+
+ .PHONY: install
+ install: build
+- $(INSTALL_DIR) $(DESTDIR)$(bindir)
+- $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+- [ -z "$(LIBBIN)" ] || $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
+ ifneq ($(BIN),)
+- $(INSTALL_PROG) $(BIN) $(DESTDIR)$(bindir)
++ $(INSTALL_PROG) $(BIN) $(DESTDIR)$(LIBEXEC_BIN)
+ endif
+- $(INSTALL_PROG) $(SBIN) $(DESTDIR)$(sbindir)
+- $(INSTALL_PYTHON_PROG) $(SCRIPTS) $(DESTDIR)$(bindir)
++ $(INSTALL_PROG) $(SBIN) $(DESTDIR)$(LIBEXEC_BIN)
++ $(INSTALL_PYTHON_PROG) $(SCRIPTS) $(DESTDIR)$(LIBEXEC_BIN)
+ [ -z "$(LIBBIN)" ] || $(INSTALL_PROG) $(LIBBIN) $(DESTDIR)$(LIBEXEC_BIN)
+
+ .PHONY: uninstall
+ uninstall:
+ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(LIBBIN))
+- rm -f $(addprefix $(DESTDIR)$(bindir)/, $(SCRIPTS))
+- rm -f $(addprefix $(DESTDIR)$(sbindir)/, $(SBIN))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(SCRIPTS))
++ rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(SBIN))
+ ifneq ($(BIN),)
+ rm -f $(addprefix $(DESTDIR)$(bindir)/, $(BIN))
+ endif
--- /dev/null
+From: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+Date: Thu, 6 Oct 2016 14:24:46 +0100
+Subject: ubuntu-tools-libs-abiname
+
+---
+ tools/libs/call/Makefile | 20 ++++++++++----------
+ tools/libs/devicemodel/Makefile | 20 ++++++++++----------
+ tools/libs/evtchn/Makefile | 16 ++++++++--------
+ tools/libs/foreignmemory/Makefile | 20 ++++++++++----------
+ tools/libs/gnttab/Makefile | 20 ++++++++++----------
+ tools/libs/toollog/Makefile | 20 ++++++++++----------
+ 6 files changed, 58 insertions(+), 58 deletions(-)
+
+diff --git a/tools/libs/call/Makefile b/tools/libs/call/Makefile
+index 252d397..0a3b800 100644
+--- a/tools/libs/call/Makefile
++++ b/tools/libs/call/Makefile
+@@ -56,22 +56,22 @@ headers.chk: $(wildcard include/*.h)
+ libxencall.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxencall.so: libxencall.so.$(MAJOR)
++libxencall.so: libxencall-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxencall.so.$(MAJOR): libxencall.so.$(MAJOR).$(MINOR)
++libxencall-$(PACKAGE_VERSION).so.$(MAJOR): libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxencall.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxencall.map
+- $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxencall.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
++libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxencall.map
++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxencall-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxencall.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxencall.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxencall.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxencall.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxencall.so.$(MAJOR) $(DESTDIR)$(libdir)/libxencall.so
++ $(SYMLINK_SHLIB) libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxencall-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxencall-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxencall.so
+ $(INSTALL_DATA) include/xencall.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xencall.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -80,8 +80,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xencall.pc
+ rm -f $(DESTDIR)$(includedir)/xencall.h
+ rm -f $(DESTDIR)$(libdir)/libxencall.so
+- rm -f $(DESTDIR)$(libdir)/libxencall.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxencall.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxencall-$(PACKAGE_VERSION).so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxencall.a
+
+ .PHONY: TAGS
+@@ -91,7 +91,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxencall.so.$(MAJOR).$(MINOR) libxencall.so.$(MAJOR)
++ rm -f libxencall-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxencall-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xencall.pc
+
+diff --git a/tools/libs/devicemodel/Makefile b/tools/libs/devicemodel/Makefile
+index 5b2df7a..6cc0c39 100644
+--- a/tools/libs/devicemodel/Makefile
++++ b/tools/libs/devicemodel/Makefile
+@@ -58,22 +58,22 @@ headers.chk: $(wildcard include/*.h)
+ libxendevicemodel.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxendevicemodel.so: libxendevicemodel.so.$(MAJOR)
++libxendevicemodel.so: libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxendevicemodel.so.$(MAJOR): libxendevicemodel.so.$(MAJOR).$(MINOR)
++libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR): libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxendevicemodel.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxendevicemodel.map
+- $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxendevicemodel.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxencall) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
++libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxendevicemodel.map
++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxencall) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxendevicemodel.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxendevicemodel.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxendevicemodel.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxendevicemodel.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxendevicemodel.so.$(MAJOR) $(DESTDIR)$(libdir)/libxendevicemodel.so
++ $(SYMLINK_SHLIB) libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxendevicemodel.so
+ $(INSTALL_DATA) include/xendevicemodel.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xendevicemodel.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -82,8 +82,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xendevicemodel.pc
+ rm -f $(DESTDIR)$(includedir)/xendevicemodel.h
+ rm -f $(DESTDIR)$(libdir)/libxendevicemodel.so
+- rm -f $(DESTDIR)$(libdir)/libxendevicemodel.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxendevicemodel.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxendevicemodel.a
+
+ .PHONY: TAGS
+@@ -93,7 +93,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxendevicemodel.so.$(MAJOR).$(MINOR) libxendevicemodel.so.$(MAJOR)
++ rm -f libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxendevicemodel-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xendevicemodel.pc
+
+diff --git a/tools/libs/evtchn/Makefile b/tools/libs/evtchn/Makefile
+index 9952b30..c36e969 100644
+--- a/tools/libs/evtchn/Makefile
++++ b/tools/libs/evtchn/Makefile
+@@ -55,22 +55,22 @@ headers.chk: $(wildcard include/*.h)
+ libxenevtchn.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxenevtchn.so: libxenevtchn.so.$(MAJOR)
++libxenevtchn.so: libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxenevtchn.so.$(MAJOR): libxenevtchn.so.$(MAJOR).$(MINOR)
++libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR): libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxenevtchn.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxenevtchn.map
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenevtchn.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
++libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxenevtchn.map
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxenevtchn.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxenevtchn.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxenevtchn.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenevtchn.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxenevtchn.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenevtchn.so
++ $(SYMLINK_SHLIB) libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxenevtchn.so
+ $(INSTALL_DATA) include/xenevtchn.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xenevtchn.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -79,7 +79,7 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenevtchn.pc
+ rm -f $(DESTDIR)$(includedir)/xenevtchn.h
+ rm -f $(DESTDIR)$(libdir)/libxenevtchn.so
+- rm -f $(DESTDIR)$(libdir)/libxenevtchn.so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f $(DESTDIR)$(libdir)/libxenevtchn.so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxenevtchn.a
+
+diff --git a/tools/libs/foreignmemory/Makefile b/tools/libs/foreignmemory/Makefile
+index ee5c3fd..2685ffe 100644
+--- a/tools/libs/foreignmemory/Makefile
++++ b/tools/libs/foreignmemory/Makefile
+@@ -56,22 +56,22 @@ headers.chk: $(wildcard include/*.h)
+ libxenforeignmemory.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxenforeignmemory.so: libxenforeignmemory.so.$(MAJOR)
++libxenforeignmemory.so: libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxenforeignmemory.so.$(MAJOR): libxenforeignmemory.so.$(MAJOR).$(MINOR)
++libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR): libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxenforeignmemory.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxenforeignmemory.map
+- $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenforeignmemory.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
++libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxenforeignmemory.map
++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxenforeignmemory.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxenforeignmemory.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxenforeignmemory.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenforeignmemory.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxenforeignmemory.so.$(MAJOR) $(DESTDIR)$(libdir)/libxenforeignmemory.so
++ $(SYMLINK_SHLIB) libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxenforeignmemory.so
+ $(INSTALL_DATA) include/xenforeignmemory.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xenforeignmemory.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -80,8 +80,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xenforeignmemory.pc
+ rm -f $(DESTDIR)$(includedir)/xenforeignmemory.h
+ rm -f $(DESTDIR)$(libdir)/libxenforeignmemory.so
+- rm -f $(DESTDIR)$(libdir)/libxenforeignmemory.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxenforeignmemory.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxenforeignmemory.a
+
+ .PHONY: TAGS
+@@ -91,7 +91,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxenforeignmemory.so.$(MAJOR).$(MINOR) libxenforeignmemory.so.$(MAJOR)
++ rm -f libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxenforeignmemory-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xenforeignmemory.pc
+
+diff --git a/tools/libs/gnttab/Makefile b/tools/libs/gnttab/Makefile
+index dcfe686..424801a 100644
+--- a/tools/libs/gnttab/Makefile
++++ b/tools/libs/gnttab/Makefile
+@@ -58,22 +58,22 @@ headers.chk: $(wildcard include/*.h)
+ libxengnttab.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxengnttab.so: libxengnttab.so.$(MAJOR)
++libxengnttab.so: libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxengnttab.so.$(MAJOR): libxengnttab.so.$(MAJOR).$(MINOR)
++libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR): libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxengnttab.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxengnttab.map
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxengnttab.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
++libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxengnttab.map
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxengnttab.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxengnttab.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxengnttab.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxengnttab.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxengnttab.so.$(MAJOR) $(DESTDIR)$(libdir)/libxengnttab.so
++ $(SYMLINK_SHLIB) libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxengnttab.so
+ $(INSTALL_DATA) include/xengnttab.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xengnttab.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -82,8 +82,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xengnttab.pc
+ rm -f $(DESTDIR)$(includedir)/xengnttab.h
+ rm -f $(DESTDIR)$(libdir)/libxengnttab.so
+- rm -f $(DESTDIR)$(libdir)/libxengnttab.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxengnttab.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxengnttab.so-$(PACKAGE_VERSION).$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxengnttab.so-$(PACKAGE_VERSION).$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxengnttab.a
+
+ .PHONY: TAGS
+@@ -93,7 +93,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxengnttab.so.$(MAJOR).$(MINOR) libxengnttab.so.$(MAJOR)
++ rm -f libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxengnttab-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xengnttab.pc
+
+diff --git a/tools/libs/toollog/Makefile b/tools/libs/toollog/Makefile
+index 8aae2c8..3f79740 100644
+--- a/tools/libs/toollog/Makefile
++++ b/tools/libs/toollog/Makefile
+@@ -50,22 +50,22 @@ headers.chk: $(wildcard include/*.h)
+ libxentoollog.a: $(LIB_OBJS)
+ $(AR) rc $@ $^
+
+-libxentoollog.so: libxentoollog.so.$(MAJOR)
++libxentoollog.so: libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR)
+ $(SYMLINK_SHLIB) $< $@
+-libxentoollog.so.$(MAJOR): libxentoollog.so.$(MAJOR).$(MINOR)
++libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR): libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ $(SYMLINK_SHLIB) $< $@
+
+-libxentoollog.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxentoollog.map
+- $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxentoollog.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(APPEND_LDFLAGS)
++libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxentoollog.map
++ $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) $(APPEND_LDFLAGS)
+
+ .PHONY: install
+ install: build
+ $(INSTALL_DIR) $(DESTDIR)$(libdir)
+ $(INSTALL_DIR) $(DESTDIR)$(includedir)
+- $(INSTALL_SHLIB) libxentoollog.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
++ $(INSTALL_SHLIB) libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) libxentoollog.a $(DESTDIR)$(libdir)
+- $(SYMLINK_SHLIB) libxentoollog.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxentoollog.so.$(MAJOR)
+- $(SYMLINK_SHLIB) libxentoollog.so.$(MAJOR) $(DESTDIR)$(libdir)/libxentoollog.so
++ $(SYMLINK_SHLIB) libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR)
++ $(SYMLINK_SHLIB) libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR) $(DESTDIR)$(libdir)/libxentoollog.so
+ $(INSTALL_DATA) include/xentoollog.h $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) xentoollog.pc $(DESTDIR)$(PKG_INSTALLDIR)
+
+@@ -74,8 +74,8 @@ uninstall:
+ rm -f $(DESTDIR)$(PKG_INSTALLDIR)/xentoollog.pc
+ rm -f $(DESTDIR)$(includedir)/xentoollog.h
+ rm -f $(DESTDIR)$(libdir)/libxentoollog.so
+- rm -f $(DESTDIR)$(libdir)/libxentoollog.so.$(MAJOR)
+- rm -f $(DESTDIR)$(libdir)/libxentoollog.so.$(MAJOR).$(MINOR)
++ rm -f $(DESTDIR)$(libdir)/libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR)
++ rm -f $(DESTDIR)$(libdir)/libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR)
+ rm -f $(DESTDIR)$(libdir)/libxentoollog.a
+
+ .PHONY: TAGS
+@@ -85,7 +85,7 @@ TAGS:
+ .PHONY: clean
+ clean:
+ rm -rf *.rpm $(LIB) *~ $(DEPS_RM) $(LIB_OBJS) $(PIC_OBJS)
+- rm -f libxentoollog.so.$(MAJOR).$(MINOR) libxentoollog.so.$(MAJOR)
++ rm -f libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxentoollog-$(PACKAGE_VERSION).so.$(MAJOR)
+ rm -f headers.chk
+ rm -f xentoollog.pc
+
--- /dev/null
+misc/version.diff
+prefix-abiname/config-prefix.diff
+prefix-abiname/tools-libfsimage-abiname.diff
+prefix-abiname/tools-libxc-abiname.diff
+prefix-abiname/tools-libxl-abiname.diff
+prefix-abiname/tools-xenstat-abiname.diff
+prefix-abiname/tools-rpath.diff
+prefix-abiname/tools-blktap2-prefix.diff
+prefix-abiname/tools-console-prefix.diff
+prefix-abiname/tools-libfsimage-prefix.diff
+prefix-abiname/tools-libxl-prefix.diff
+prefix-abiname/tools-misc-prefix.diff
+prefix-abiname/tools-pygrub-prefix.diff
+prefix-abiname/tools-python-prefix.diff
+prefix-abiname/tools-xcutils-rpath.diff
+prefix-abiname/tools-xenmon-prefix.diff
+prefix-abiname/tools-xenpaging-prefix.diff
+prefix-abiname/tools-xenpmd-prefix.diff
+prefix-abiname/tools-xenstat-prefix.diff
+prefix-abiname/tools-xenstore-prefix.diff
+prefix-abiname/tools-xentrace-prefix.diff
+prefix-abiname/ubuntu-tools-libs-abiname.diff
+prefix-abiname/tools-xentoolcore-abiname.patch
+misc/tools-include-install.diff
+misc/tools-xenmon-install.diff
+misc/tools-pygrub-remove-static-solaris-support
+misc/toolstestsx86_emulator-pass--no-pie--fno.patch
+xenstore/tools-xenstore-compatibility.diff
+xenstore/tools-fake-xs-restrict.patch
+misc/tools-xentop-replace-use-of-deprecated-vwprintw.patch
--- /dev/null
+From: Debian Xen Team <pkg-xen-devel@lists.alioth.debian.org>
+Date: Fri, 24 Aug 2018 18:45:17 +0100
+Subject: tools-fake-xs-restrict
+
+---
+ tools/xenstore/include/xenstore.h | 5 +++++
+ tools/xenstore/xs.c | 6 ++++++
+ 2 files changed, 11 insertions(+)
+
+diff --git a/tools/xenstore/include/xenstore.h b/tools/xenstore/include/xenstore.h
+index de59110..edf6271 100644
+--- a/tools/xenstore/include/xenstore.h
++++ b/tools/xenstore/include/xenstore.h
+@@ -133,6 +133,11 @@ bool xs_mkdir(struct xs_handle *h, xs_transaction_t t,
+ bool xs_rm(struct xs_handle *h, xs_transaction_t t,
+ const char *path);
+
++/* Fake function which will always return false (required to let
++ * libxenstore remain at 3.0 version.
++ */
++bool xs_restrict(struct xs_handle *h, unsigned domid);
++
+ /* Get permissions of node (first element is owner, first perms is "other").
+ * Returns malloced array, or NULL: call free() after use.
+ */
+diff --git a/tools/xenstore/xs.c b/tools/xenstore/xs.c
+index 0355d3d..4e99bf8 100644
+--- a/tools/xenstore/xs.c
++++ b/tools/xenstore/xs.c
+@@ -798,6 +798,12 @@ unwind:
+ return false;
+ }
+
++/* Always return false a functionality has been removed in Xen 4.9 */
++bool xs_restrict(struct xs_handle *h, unsigned domid)
++{
++ return false;
++}
++
+ /* Watch a node for changes (poll on fd to detect, or call read_watch()).
+ * When the node (or any child) changes, fd will become readable.
+ * Token is returned when watch is read, to allow matching.
--- /dev/null
+From: Bastian Blank <waldi@debian.org>
+Date: Sat, 5 Jul 2014 11:47:36 +0200
+Subject: tools-xenstore-compatibility.diff
+
+Patch-Name: tools-xenstore-compatibility.diff
+---
+ tools/xenstore/include/xenstore.h | 1 +
+ tools/xenstore/xenstore_client.c | 2 +-
+ tools/xenstore/xs.c | 4 +++-
+ 3 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/tools/xenstore/include/xenstore.h b/tools/xenstore/include/xenstore.h
+index f460b8c..de59110 100644
+--- a/tools/xenstore/include/xenstore.h
++++ b/tools/xenstore/include/xenstore.h
+@@ -25,6 +25,7 @@
+
+ #define XS_OPEN_READONLY 1UL<<0
+ #define XS_OPEN_SOCKETONLY 1UL<<1
++#define XS_OPEN_DOMAINONLY 1UL<<2
+
+ /*
+ * Setting XS_UNWATCH_FILTER arranges that after xs_unwatch, no
+diff --git a/tools/xenstore/xenstore_client.c b/tools/xenstore/xenstore_client.c
+index 3d14d37..d7ae1ec 100644
+--- a/tools/xenstore/xenstore_client.c
++++ b/tools/xenstore/xenstore_client.c
+@@ -636,7 +636,7 @@ main(int argc, char **argv)
+ max_width = ws.ws_col - 2;
+ }
+
+- xsh = xs_open(socket ? XS_OPEN_SOCKETONLY : 0);
++ xsh = xs_open(socket ? XS_OPEN_SOCKETONLY : XS_OPEN_DOMAINONLY);
+ if (xsh == NULL) err(1, "xs_open");
+
+ again:
+diff --git a/tools/xenstore/xs.c b/tools/xenstore/xs.c
+index 77700bf..0355d3d 100644
+--- a/tools/xenstore/xs.c
++++ b/tools/xenstore/xs.c
+@@ -307,17 +307,19 @@ struct xs_handle *xs_daemon_open_readonly(void)
+
+ struct xs_handle *xs_domain_open(void)
+ {
+- return xs_open(0);
++ return xs_open(XS_OPEN_DOMAINONLY);
+ }
+
+ struct xs_handle *xs_open(unsigned long flags)
+ {
+ struct xs_handle *xsh = NULL;
+
++ if (!(flags & XS_OPEN_DOMAINONLY)) {
+ if (flags & XS_OPEN_READONLY)
+ xsh = get_handle(xs_daemon_socket_ro());
+ else
+ xsh = get_handle(xs_daemon_socket());
++ }
+
+ if (!xsh && !(flags & XS_OPEN_SOCKETONLY))
+ xsh = get_handle(xs_domain_dev());