From: Raspbian forward porter Date: Wed, 26 Apr 2017 20:03:55 +0000 (+0000) Subject: xen (4.8.1-1+rpi1) stretch-staging; urgency=medium X-Git-Tag: archive/raspbian/4.8.1-1+rpi1+deb9u1~31 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=4a5dc0d26be5eaac11e08f4c7f2780c85deadac7;p=xen.git xen (4.8.1-1+rpi1) stretch-staging; urgency=medium [changes brought forward from 4.4.1-9+rpi1 by Peter Michael Green at Sun, 30 Aug 2015 15:43:16 +0000] * replace "dmb" with "mcr p15, #0, r0, c7, c10, #5" for armv6 [changes introduced in 4.6.0-1+rpi1 by Peter Michael Green] * Use kernel 3.18 for now as I haven't dealt with 4.x yet. [changes introduced in 4.8.0-1+rpi1 by Peter Micheal Green] * Add build-depends on ghostscript. [dgit import unpatched xen 4.8.1-1+rpi1] --- 4a5dc0d26be5eaac11e08f4c7f2780c85deadac7 diff --cc debian/.git-dpm index 0000000000,0000000000..066490cea4 new file mode 100644 --- /dev/null +++ b/debian/.git-dpm @@@ -1,0 -1,0 +1,8 @@@ ++# see git-dpm(1) from git-dpm package ++bfef8af1dbdd3e12537a7379f057b35d006e0145 ++bfef8af1dbdd3e12537a7379f057b35d006e0145 ++9fafe903bcadf774d3eb5fbef4666166aa876d2d ++9fafe903bcadf774d3eb5fbef4666166aa876d2d ++xen_4.6.0.orig.tar.xz ++3a298ab580a62dd4ffbe63567d4114f9c36d570c ++3525684 diff --cc debian/arch/amd64/defines index 0000000000,0000000000..8585798cda new file mode 100644 --- /dev/null +++ b/debian/arch/amd64/defines @@@ -1,0 -1,0 +1,10 @@@ ++[base] ++flavours: ++ amd64 ++xen-arch: x86_64 ++image-suffix: .gz ++ ++[amd64_description] ++hardware: AMD64 ++hardware-long: all 64bit single- and multiprocessor AMD and Intel ++ diff --cc debian/arch/arm64/defines index 0000000000,0000000000..b181444668 new file mode 100644 --- /dev/null +++ b/debian/arch/arm64/defines @@@ -1,0 -1,0 +1,11 @@@ ++[base] ++flavours: ++ arm64 ++xen-arch: arm64 ++image-suffix: ++with-ocaml: no ++ ++[arm64_description] ++hardware: ARM64 ++hardware-long: all 64bit ARMv8 ++ diff --cc debian/arch/armhf/defines index 0000000000,0000000000..ee6918e2ed new file mode 100644 --- /dev/null +++ b/debian/arch/armhf/defines @@@ -1,0 -1,0 +1,10 @@@ ++[base] ++flavours: ++ armhf ++xen-arch: arm32 ++image-suffix: ++ ++[armhf_description] ++hardware: ARMHF ++hardware-long: all 32bit ARMv7 with virtualisation extensions ++ diff --cc debian/arch/defines index 0000000000,0000000000..928d4dfb8d new file mode 100644 --- /dev/null +++ b/debian/arch/defines @@@ -1,0 -1,0 +1,8 @@@ ++[abi] ++ ++[base] ++arches: ++ amd64 ++ arm64 ++ armhf ++ i386 diff --cc debian/arch/i386/defines index 0000000000,0000000000..40b0588f0c new file mode 100644 --- /dev/null +++ b/debian/arch/i386/defines @@@ -1,0 -1,0 +1,11 @@@ ++[base] ++flavours: ++ amd64 ++xen-arch: x86_32 ++ ++[amd64_base] ++xen-arch: x86_64 ++ ++[amd64_description] ++hardware: AMD64 ++hardware-long: all 64bit single- and multiprocessor AMD and Intel diff --cc debian/bin/check-patches.sh index 0000000000,0000000000..8de7c5e7eb new file mode 100755 --- /dev/null +++ b/debian/bin/check-patches.sh @@@ -1,0 -1,0 +1,13 @@@ ++#!/bin/sh -e ++ ++TMPDIR=$(mktemp -d) ++trap "rm -rf $TMPDIR" EXIT ++grep -v "^#" debian/patches/series | awk '{if (NF == 1) print "debian/patches/" $1}' | sort -u > $TMPDIR/used ++find debian/patches -type f -name "*.diff" -printf "%p\n" | sort > $TMPDIR/avail ++echo "Used patches" ++echo "==============" ++cat $TMPDIR/used ++echo ++echo "Unused patches" ++echo "==============" ++fgrep -v -f $TMPDIR/used $TMPDIR/avail diff --cc debian/bin/gencontrol.py index 0000000000,0000000000..2a801c0da2 new file mode 100755 --- /dev/null +++ b/debian/bin/gencontrol.py @@@ -1,0 -1,0 +1,125 @@@ ++#!/usr/bin/env python3 ++ ++import os, sys ++sys.path.append(os.path.join(sys.path[0], "../lib/python")) ++ ++from debian_xen.debian import VersionXen ++from debian_linux.config import ConfigCoreHierarchy ++from debian_linux.debian import Changelog, PackageArchitecture ++from debian_linux.gencontrol import Gencontrol as Base ++from debian_linux.utils import Templates ++ ++class Gencontrol(Base): ++ config_schema = { ++ 'description': { ++ } ++ } ++ ++ def __init__(self): ++ super(Gencontrol, self).__init__(ConfigCoreHierarchy(self.config_schema, ["debian/arch"]), Templates(["debian/templates"])) ++ self.process_changelog() ++ ++ def do_main_setup(self, vars, makeflags, extra): ++ makeflags.update({ ++ 'VERSION': self.version.xen_version, ++ }) ++ ++ def do_arch_setup(self, vars, makeflags, arch, extra): ++ config_entry = self.config.merge('base', arch) ++ config_entry_description = self.config.merge('description', arch) ++ ++ for i in ( ++ ('xen-arch', 'XEN_ARCH'), ++ ): ++ makeflags[i[1]] = config_entry[i[0]] ++ ++ def do_arch_packages(self, packages, makefile, arch, vars, makeflags, extra): ++ packages_main = self.process_packages(self.templates["control.main"], vars) ++ packages_utils = self.process_packages(self.templates["control.utils"], vars) ++ ++ for package in packages_main + packages_utils: ++ name = package['Package'] ++ if name in packages: ++ package = packages.get(name) ++ else: ++ packages.append(package) ++ ++ arches = package.setdefault('Architecture', PackageArchitecture()) ++ if 'all' not in arches: ++ arches.add(arch) ++ ++ package_utils_name = packages_utils[0]['Package'] ++ ++ for i in ('postinst', 'prerm', 'lintian-overrides'): ++ j = self.substitute(self.templates["xen-utils.%s" % i], vars) ++ open("debian/%s.%s" % (package_utils_name, i), 'w').write(j) ++ ++ cmds_binary_arch = ["$(MAKE) -f debian/rules.real binary-arch-arch %s" % makeflags] ++ cmds_build = ["$(MAKE) -f debian/rules.real build-arch-arch %s" % makeflags] ++ cmds_setup = ["$(MAKE) -f debian/rules.real setup-arch %s" % makeflags] ++ makefile.add('binary-arch_%s_real' % arch, cmds = cmds_binary_arch) ++ makefile.add('build-arch_%s_real' % arch, cmds = cmds_build) ++ makefile.add('setup_%s_real' % arch, cmds = cmds_setup) ++ ++ def do_flavour_setup(self, vars, makeflags, arch, featureset, flavour, extra): ++ config_entry = self.config.merge('base', arch, featureset, flavour) ++ config_description = self.config.merge('description', arch, featureset, flavour) ++ ++ vars['class'] = config_description['hardware'] ++ vars['longclass'] = config_description.get('hardware-long') or vars['class'] ++ ++ for i in ( ++ ('xen-arch', 'XEN_ARCH'), ++ ('image-suffix', 'IMAGE_SUFFIX'), ++ ): ++ if i[0] in config_entry: ++ makeflags[i[1]] = config_entry[i[0]] ++ ++ def do_flavour_packages(self, packages, makefile, arch, featureset, flavour, vars, makeflags, extra): ++ hypervisor = self.templates["control.hypervisor"] ++ system_latest = self.templates["control.system.latest"] ++ ++ if not 'desc' in vars: ++ vars['desc'] = '' ++ ++ packages_own = [] ++ packages_own.extend(self.process_packages(hypervisor, vars)) ++ packages_dummy = self.process_packages(system_latest, vars) ++ ++ for package in packages_own + packages_dummy: ++ name = package['Package'] ++ package.setdefault('Architecture', PackageArchitecture()).add(arch) ++ if name in packages: ++ package = packages.get(name) ++ else: ++ packages.append(package) ++ ++ arches = package.setdefault('Architecture', PackageArchitecture()) ++ if 'all' not in arches: ++ arches.add(arch) ++ ++ package_name = packages_own[0]['Package'] ++ ++ for i in ('postinst', 'postrm'): ++ j = self.substitute(self.templates["xen-hypervisor.%s" % i], vars) ++ open("debian/%s.%s" % (package_name, i), 'w').write(j) ++ ++ cmds_binary_arch = ["$(MAKE) -f debian/rules.real binary-arch-flavour %s" % makeflags] ++ cmds_build = ["$(MAKE) -f debian/rules.real build-arch-flavour %s" % makeflags] ++ cmds_setup = ["$(MAKE) -f debian/rules.real setup-flavour %s" % makeflags] ++ ++ cmds_binary_arch += ["$(MAKE) -f debian/rules.real install-dummy DH_OPTIONS='%s' %s" % (u' '.join([u"-p%s" % i['Package'] for i in packages_dummy]), makeflags)] ++ ++ makefile.add("binary-arch_%s_%s_%s" % (arch, featureset, flavour), cmds = cmds_binary_arch) ++ makefile.add("build-arch_%s_%s_%s" % (arch, featureset, flavour), cmds = cmds_build) ++ makefile.add("setup_%s_%s_%s" % (arch, featureset, flavour), cmds = cmds_setup) ++ ++ def process_changelog(self): ++ changelog = Changelog(version = VersionXen) ++ self.version = changelog[0].version ++ self.vars = { ++ 'version': self.version.xen_version, ++ } ++ ++if __name__ == '__main__': ++ Gencontrol()() diff --cc debian/bin/genorig.py index 0000000000,0000000000..e9fcd194c8 new file mode 100755 --- /dev/null +++ b/debian/bin/genorig.py @@@ -1,0 -1,0 +1,72 @@@ ++#!/usr/bin/env python3 ++ ++import sys ++sys.path.append(sys.path[0] + '/../lib/python') ++ ++import itertools ++import os, os.path ++import shutil ++import subprocess ++ ++from debian_xen.debian import VersionXen ++from debian_linux.debian import Changelog ++ ++ ++class Main(object): ++ log = sys.stdout.write ++ ++ def __init__(self, options, repo): ++ self.options = options ++ ++ self.changelog_entry = Changelog(version=VersionXen)[0] ++ self.source = self.changelog_entry.source ++ self.version = self.changelog_entry.version ++ ++ if options.override_version: ++ self.version = VersionXen('%s-0' % options.override_version) ++ ++ if options.component: ++ self.orig_dir = options.component ++ self.orig_tar = '%s_%s.orig-%s.tar.xz' % (self.source, self.version.upstream, options.component) ++ else: ++ self.orig_dir = '%s-%s' % (self.source, self.version.upstream) ++ self.orig_tar = '%s_%s.orig.tar.xz' % (self.source, self.version.upstream) ++ if options.tag is None: ++ options.tag = 'RELEASE-' + self.version.upstream ++ ++ def __call__(self): ++ out = "../orig/%s" % self.orig_tar ++ self.log("Generate tarball %s\n" % out) ++ ++ try: ++ os.stat(out) ++ raise RuntimeError("Destination already exists") ++ except OSError: pass ++ ++ try: ++ with open(out, 'wb') as f: ++ tag = self.options.tag or 'HEAD' ++ p1 = subprocess.Popen(('git', 'archive', '--prefix', '%s/' % self.orig_dir, tag), stdout=subprocess.PIPE) ++ subprocess.check_call(('xz', ), stdin=p1.stdout, stdout=f) ++ if p1.wait(): ++ raise RuntimeError ++ except: ++ os.unlink(out) ++ raise ++ ++ try: ++ os.symlink(os.path.join('orig', self.orig_tar), os.path.join('..', self.orig_tar)) ++ except OSError: ++ pass ++ ++ ++if __name__ == '__main__': ++ from optparse import OptionParser ++ p = OptionParser(prog=sys.argv[0], usage='%prog [OPTION]... DIR') ++ p.add_option('-c', '--component', dest='component') ++ p.add_option('-t', '--tag', dest='tag') ++ p.add_option('-V', '--override-version', dest='override_version') ++ options, args = p.parse_args() ++ if len(args) != 1: ++ raise RuntimeError ++ Main(options, *args)() diff --cc debian/changelog index 0000000000,0000000000..580fd46dcd new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,1369 @@@ ++xen (4.8.1-1+rpi1) stretch-staging; urgency=medium ++ ++ [changes brought forward from 4.4.1-9+rpi1 by Peter Michael Green at Sun, 30 Aug 2015 15:43:16 +0000] ++ * replace "dmb" with "mcr p15, #0, r0, c7, c10, #5" for armv6 ++ ++ [changes introduced in 4.6.0-1+rpi1 by Peter Michael Green] ++ * Use kernel 3.18 for now as I haven't dealt with 4.x yet. ++ ++ [changes introduced in 4.8.0-1+rpi1 by Peter Micheal Green] ++ * Add build-depends on ghostscript. ++ ++ -- Raspbian forward porter Wed, 26 Apr 2017 20:03:55 +0000 ++ ++xen (4.8.1-1) unstable; urgency=high ++ ++ * Update to upstream 4.8.1 release. ++ Changes include numerous bugfixes, including security fixes for: ++ XSA-212 / CVE-2017-7228 Closes:#859560 ++ XSA-207 / no cve yet Closes:#856229 ++ XSA-206 / no cve yet no Debian bug ++ ++ -- Ian Jackson Tue, 18 Apr 2017 18:05:00 +0100 ++ ++xen (4.8.1~pre.2017.01.23-1) unstable; urgency=medium ++ ++ * Update to current upstream stable-4.8 git branch (Xen 4.8.1-pre). ++ Contains bugfixes. ++ * debian/control-real etc.: debian.py: Allow version numbers like this. ++ ++ -- Ian Jackson Mon, 23 Jan 2017 16:03:31 +0000 ++ ++xen (4.8.0-1) unstable; urgency=high ++ ++ * Update to upstream Xen 4.8.0. ++ Includes the following security fixes: ++ XSA-201 CVE-2016-9815 CVE-2016-9816 CVE-2016-9817 CVE-2016-9818 ++ XSA-198 CVE-2016-9379 CVE-2016-9380 ++ XSA-196 CVE-2016-9378 CVE-2016-9377 Closes:#845669 ++ XSA-195 CVE-2016-9383 ++ XSA-194 CVE-2016-9384 Closes:#845667 ++ XSA-193 CVE-2016-9385 ++ XSA-192 CVE-2016-9382 ++ XSA-191 CVE-2016-9386 ++ Includes other bugfixes too: ++ Closes:#812166, Closes:#818525. ++ ++ Cherry picks from upstream: ++ * Security fixes: ++ XSA-204 CVE-2016-10013 Closes:#848713 ++ XSA-203 CVE-2016-10025 ++ XSA-202 CVE-2016-10024 ++ For completeness, the following XSAs do not apply here: ++ XSA-197 CVE-2016-9381 Bug is in qemu ++ XSA-199 CVE-2016-9637 Bug is in qemu ++ XSA-200 CVE-2016-9932 Xen 4.8 is not affected ++ * Cherry pick a build failure fix: ++ "x86/emul: add likely()/unlikely() to test harness" ++ ++ [ Ian Jackson ] ++ * Drop -lcrypto search from upstream configure, and from our ++ Build-Depends. Closes:#844419. ++ * Change my own email address to my work (Citrix) address. When ++ uploading, I will swap hats to effectively sponsor my own upload. ++ ++ [ Ian Campbell ] ++ * Start a qemu process in dom0 to service the toolstacks loopback disk ++ attaches. (Closes: #770456) ++ * Remove correct pidfile when stopping xenconsoled. ++ * Check that xenstored has actually started before talking to it. ++ Incorporate a timeout so as not to block boot (Mitigates #737613) ++ * Correct syntax error in xen-init-list when running with xend ++ (Closes: #763102) ++ * Apply SELinux labels to directories created by initscripts. Patch from ++ Russell Coker. (Closes: #764912) ++ * Include a reportbug control file to redirect bugs to src:xen for ++ packages which contain the Xen version in the name. Closes:#796370. ++ ++ [ Lubomir Host ] ++ * Fix xen-init-name to not fail looking for a nonexistent 'config' ++ entry in xl's JSON output. Closes:#818129. ++ ++ -- Ian Jackson Thu, 22 Dec 2016 14:51:46 +0000 ++ ++xen (4.8.0~rc5-1) unstable; urgency=medium ++ ++ * New upstream version, Xen 4.8.0 RC5. ++ ++ -- Ian Jackson Fri, 11 Nov 2016 15:26:58 +0000 ++ ++xen (4.8.0~rc3-1) unstable; urgency=medium ++ ++ * Upload 4.8.0~rc3 to unstable. (RC5 is out upstream, but let's not ++ update to that in the middle of the Xen 4.6 -> 4.8 transition.) ++ * No source changes. ++ ++ -- Ian Jackson Sat, 05 Nov 2016 15:08:47 +0000 ++ ++xen (4.8.0~rc3-0exp2) experimental; urgency=medium ++ ++ * Build-Depend on iasl on all architectures. ARM has ACPI now. ++ Fixes FTBFS on arm64 (at least). ++ * Add qemu-utils and seabios to Suggests. ++ * Pass -no-pie -fno-pic to x86 emulator test build. (Patch ++ also submitted upstream.) Fixes FTBFS on i386 with GCC6. ++ * Add myself to Uploaders. ++ ++ -- Ian Jackson Tue, 01 Nov 2016 18:00:25 +0000 ++ ++xen (4.8.0~rc3-0exp1) experimental; urgency=high ++ ++ * New upstream version, Xen 4.8.0 RC3. ++ Fixes many outstanding CVEs. ++ * Incorporated many changes from 4.8.0-0ubuntu2 ++ - libxen-dev is M-A: same ++ - Work around grep bug http://bugs.launchpad.net/bugs/1547466 ++ - debian/xen-hypervisor-4.6.xen.cfg: ++ Additional config file to simplify grub configuration. ++ - Use new library/abiname scheme. ++ - Document what xl and xm are in default.xen ++ - Add libvirtd dependency to xendomains init script ++ (Thanks to Stefan Bader and others.) ++ ++ -- Ian Jackson Mon, 24 Oct 2016 17:31:27 +0100 ++ ++xen (4.6.0-1+nmu2) unstable; urgency=medium ++ ++ * Ensure debian/control.md5sum is correctly updated. Fixes FTBFS of ++ 4.6.0-1+nmu1 on buildds where linux-support-4.2.0-1 is not expected to be ++ installed. ++ ++ -- Ian Campbell Tue, 09 Feb 2016 16:41:16 +0000 ++ ++xen (4.6.0-1+nmu1) unstable; urgency=medium ++ ++ * Non-maintainer upload. ++ * Drop unused patching in of $(PREFIX), $(SBINDIR) and $(BINDIR) ++ which are no longer used by the upstream build system. ++ * Use correct/consistent LIBEXEC dirs throughout build ++ (Closes: #805508). ++ ++ -- Ian Campbell Tue, 19 Jan 2016 14:43:54 +0000 ++ ++xen (4.6.0-1) unstable; urgency=medium ++ ++ * New upstream release. ++ * CVE-2015-7812 ++ * CVE-2015-7813 ++ * CVE-2015-7814 ++ * CVE-2015-7835 ++ * CVE-2015-7969 ++ * CVE-2015-7970 ++ * CVE-2015-7971 ++ * CVE-2015-7972 ++ ++ -- Bastian Blank Sun, 01 Nov 2015 21:49:07 +0100 ++ ++xen (4.5.1~rc1-1) experimental; urgency=medium ++ ++ [ Ian Campbell ] ++ * Use xen-init-dom0 from initscript when it is available. ++ * Install some user facing docs in xen-utils-common. (Closes: #688308) ++ ++ [ Bastian Blank ] ++ * New upstream release candidate. ++ ++ -- Bastian Blank Sun, 31 May 2015 21:59:56 +0200 ++ ++xen (4.5.0-1) experimental; urgency=medium ++ ++ [ Ian Campbell ] ++ * New upstream release ++ ++ -- Bastian Blank Wed, 21 Jan 2015 20:21:45 +0100 ++ ++xen (4.5.0~rc3-1) experimental; urgency=medium ++ ++ * New upstream release candidate. ++ * Re-add xend config. ++ ++ -- Bastian Blank Wed, 17 Dec 2014 22:37:23 +0100 ++ ++xen (4.4.1-6) unstable; urgency=medium ++ ++ * Fix starvation of writers in locks. ++ CVE-2014-9065 ++ ++ -- Bastian Blank Thu, 11 Dec 2014 15:56:08 +0100 ++ ++xen (4.4.1-5) unstable; urgency=medium ++ ++ * Fix excessive checks of hypercall arguments. ++ CVE-2014-8866 ++ * Fix boundary checks of emulated MMIO access. ++ CVE-2014-8867 ++ * Fix additional memory leaks in xl. (closes: #767295) ++ ++ -- Bastian Blank Sun, 30 Nov 2014 20:13:32 +0100 ++ ++xen (4.4.1-4) unstable; urgency=medium ++ ++ [ Bastian Blank ] ++ * Make operations pre-emptible. ++ CVE-2014-5146, CVE-2014-5149 ++ * Don't allow page table updates from non-PV page tables. ++ CVE-2014-8594 ++ * Enforce privilege level while loading code segment. ++ CVE-2014-8595 ++ * Fix reference counter leak. ++ CVE-2014-9030 ++ * Use linux 3.16.0-4 stuff. ++ * Fix memory leak in xl. (closes: #767295) ++ ++ [ Ian Campbell ] ++ * Add licensing for tools/python/logging to debian/copyright. ++ (Closes: #759384) ++ * Correctly include xen-init-name in xen-utils-common. (Closes: #769543) ++ * xen-utils recommends grub-xen-host package (Closes: #770460) ++ ++ -- Bastian Blank Thu, 27 Nov 2014 20:17:36 +0100 ++ ++xen (4.4.1-3) unstable; urgency=medium ++ ++ [ Bastian Blank ] ++ * Remove unused build-depencencies. ++ * Extend list affected systems for broken interrupt assignment. ++ CVE-2013-3495 ++ * Fix race in hvm memory management. ++ CVE-2014-7154 ++ * Fix missing privilege checks on instruction emulation. ++ CVE-2014-7155, CVE-2014-7156 ++ * Fix uninitialized control structures in FIFO handling. ++ CVE-2014-6268 ++ * Fix MSR range check in emulation. ++ CVE-2014-7188 ++ ++ [ Ian Campbell ] ++ * Install xen.efi into /boot for amd64 builds. ++ ++ -- Bastian Blank Fri, 17 Oct 2014 16:27:46 +0200 ++ ++xen (4.4.1-2) unstable; urgency=medium ++ ++ * Re-build with correct content. ++ * Use dh_lintian. ++ ++ -- Bastian Blank Wed, 24 Sep 2014 20:23:14 +0200 ++ ++xen (4.4.1-1) unstable; urgency=medium ++ ++ * New upstream release. ++ - Fix several vulnerabilities. (closes: #757724) ++ CVE-2014-2599, CVE-2014-3124, ++ CVE-2014-3967, CVE-2014-3968, ++ CVE-2014-4021 ++ ++ -- Bastian Blank Sun, 21 Sep 2014 10:45:47 +0200 ++ ++xen (4.4.0-5) unstable; urgency=medium ++ ++ [ Ian Campbell ] ++ * Expand on the descriptions of some packages. (Closes: #466683) ++ * Clarify where xen-utils-common is required. (Closes: #612403) ++ * No longer depend on gawk. Xen can now use any awk one of which is always ++ present. (Closes: #589176) ++ * Put core dumps in /var/lib/xen/dump and ensure it exists. ++ (Closes: #444000) ++ ++ [ Bastian Blank ] ++ * Handle JSON output from xl in xendomains init script. ++ ++ -- Bastian Blank Sat, 06 Sep 2014 22:11:20 +0200 ++ ++xen (4.4.0-4) unstable; urgency=medium ++ ++ [ Bastian Blank ] ++ * Also remove unused OCaml packages from control file. ++ * Make library packages multi-arch: same. (closes: #730417) ++ * Use debhelper compat level 9. (closes: #692352) ++ ++ [ Ian Campbell ] ++ * Correct contents of /etc/xen/scripts/hotplugpath.sh (Closes: #706283) ++ * Drop references cpuperf-xen and cpuperf-perfcntr. (Closes: #733847) ++ * Install xentrace_format(1), xentrace(8) and xentop(1). (Closes: #407143) ++ ++ -- Bastian Blank Sat, 30 Aug 2014 13:34:04 +0200 ++ ++xen (4.4.0-3) unstable; urgency=medium ++ ++ [ Ian Campbell ] ++ * Use correct SeaBIOS binary which supports Xen (Closes: #737905). ++ ++ [ Bastian Blank ] ++ * Really update config.{sub,guess}. ++ ++ -- Bastian Blank Fri, 29 Aug 2014 16:33:19 +0200 ++ ++xen (4.4.0-2) unstable; urgency=medium ++ ++ * Remove broken and unused OCaml-support. ++ ++ -- Bastian Blank Mon, 18 Aug 2014 15:18:42 +0200 ++ ++xen (4.4.0-1) unstable; urgency=medium ++ ++ [ Bastian Blank ] ++ * New upstream release. ++ - Update scripts for compatiblity with latest coreutils. ++ (closes: #718898) ++ - Fix guest reboot with xl toolstack. (closes: #727100) ++ - CVE-2013-6375: Insufficient TLB flushing in VT-d (iommu) code. ++ (closes: #730254) ++ - xl support for global VNC options. (closes: #744157) ++ - vif scripts can now be named relative to /etc/xen/scripts. ++ (closes: #744160) ++ - Support for arbitrary sized SeaBIOS binaries. (closes: #737905) ++ - pygrub searches for extlinux.conf in the expected places. ++ (closes: #697407) ++ - Update scripts to use correct syntax for ip command. ++ (closes: #705659) ++ * Fix install of xend configs to not break compatibility. ++ ++ [ Ian Campbell ] ++ * Disable blktap1 support using new configure option instead of by patching. ++ * Disable qemu-traditional and rombios support using new configure option ++ instead of by patching. No need to build-depend on ipxe any more. ++ * Use system qemu-xen via new configure option instead of patching. ++ * Use system seabios via new configure option instead of patching. ++ * Use EXTRA_CFLAGS_XEN_TOOLS and APPEND_{CPPFLAGS,LDFLAGS} during build. ++ * Add support for armhf and arm64. ++ * Update config.{sub,guess}. ++ ++ -- Bastian Blank Sat, 09 Aug 2014 13:09:00 +0200 ++ ++xen (4.3.0-3) unstable; urgency=low ++ ++ * Revive hypervisor on i386. ++ ++ -- Bastian Blank Fri, 18 Oct 2013 00:15:16 +0200 ++ ++xen (4.3.0-2) unstable; urgency=low ++ ++ * Force proper install order. (closes: #721999) ++ ++ -- Bastian Blank Sat, 05 Oct 2013 15:03:36 +0000 ++ ++xen (4.3.0-1) unstable; urgency=low ++ ++ * New upstream release. ++ - Fix HVM PCI passthrough. (closes: #706543) ++ * Call configure with proper arguments. ++ * Remove now empty xen-docs package. ++ * Disable external code retrieval. ++ * Drop all i386 hypervisor packages. ++ * Drop complete blktap support. ++ * Create /run/xen. ++ * Make xen-utils recommend qemu-system-x86. (closes: #688311) ++ - This version comes with audio support. (closes: #635166) ++ * Make libxenlight and libxlutil public. (closes: #644390) ++ - Set versioned ABI name. ++ - Install headers. ++ - Move libs into normal library path. ++ * Use build flags in the tools build. ++ - Fix fallout from harderning flags. ++ * Update Standards-Version to 3.9.4. No changes. ++ ++ -- Bastian Blank Thu, 05 Sep 2013 13:54:03 +0200 ++ ++xen (4.2.2-1) unstable; urgency=low ++ ++ * New upstream release. ++ - Fix build with gcc 4.8. (closes: #712376) ++ * Build-depend on libssl-dev. (closes: #712366) ++ * Enable hardening as much as possible. ++ * Re-enable ocaml build fixes. (closes: #695176) ++ * Check for out-of-bound values in CPU affinity setup. ++ CVE-2013-2072 ++ * Fix information leak on AMD CPUs. ++ CVE-2013-2076 ++ * Recover from faults on XRSTOR. ++ CVE-2013-2077 ++ * Properly check guest input to XSETBV. ++ CVE-2013-2078 ++ ++ -- Bastian Blank Thu, 11 Jul 2013 00:28:24 +0200 ++ ++xen (4.2.1-2) unstable; urgency=low ++ ++ * Actually upload to unstable. ++ ++ -- Bastian Blank Sun, 12 May 2013 00:20:58 +0200 ++ ++xen (4.2.1-1) experimental; urgency=low ++ ++ * New upstream release. ++ * Enable usage of seabios. ++ * Fix some toolchain issues. ++ ++ -- Bastian Blank Sat, 11 May 2013 23:55:46 +0200 ++ ++xen (4.2.0-2) experimental; urgency=low ++ ++ * Support JSON output in domain init script helper. ++ ++ -- Bastian Blank Mon, 01 Oct 2012 15:11:30 +0200 ++ ++xen (4.2.0-1) experimental; urgency=low ++ ++ * New upstream release. ++ ++ -- Bastian Blank Tue, 18 Sep 2012 13:54:30 +0200 ++ ++xen (4.2.0~rc3-1) experimental; urgency=low ++ ++ * New upstream snapshot. ++ ++ -- Bastian Blank Fri, 07 Sep 2012 20:28:46 +0200 ++ ++xen (4.2.0~rc2-1) experimental; urgency=low ++ ++ * New upstream snapshot. ++ * Build-depend against libglib2.0-dev and libyajl-dev. ++ * Disable seabios build for now. ++ * Remove support for Lenny and earlier. ++ * Support build-arch and build-indep make targets. ++ ++ -- Bastian Blank Sun, 13 May 2012 12:21:10 +0000 ++ ++xen (4.1.4-4) unstable; urgency=high ++ ++ * Make several long runing operations preemptible. ++ CVE-2013-1918 ++ * Fix source validation for VT-d interrupt remapping. ++ CVE-2013-1952 ++ ++ -- Bastian Blank Thu, 02 May 2013 14:30:29 +0200 ++ ++xen (4.1.4-3) unstable; urgency=high ++ ++ * Fix return from SYSENTER. ++ CVE-2013-1917 ++ * Fix various problems with guest interrupt handling. ++ CVE-2013-1919 ++ * Only save pointer after access checks. ++ CVE-2013-1920 ++ * Fix domain locking for transitive grants. ++ CVE-2013-1964 ++ ++ -- Bastian Blank Fri, 19 Apr 2013 13:01:57 +0200 ++ ++xen (4.1.4-2) unstable; urgency=low ++ ++ * Use pre-device interrupt remapping mode per default. Fix removing old ++ remappings. ++ CVE-2013-0153 ++ ++ -- Bastian Blank Wed, 06 Feb 2013 13:04:52 +0100 ++ ++xen (4.1.4-1) unstable; urgency=low ++ ++ * New upstream release. ++ - Disable process-context identifier support in newer CPUs for all ++ domains. ++ - Add workarounds for AMD errata. ++ - Don't allow any non-canonical addresses. ++ - Use Multiboot memory map if BIOS emulation does not provide one. ++ - Fix several problems in tmem. ++ CVE-2012-3497 ++ - Fix error handling in domain creation. ++ - Adjust locking and interrupt handling during S3 resume. ++ - Tighten more resource and memory range checks. ++ - Reset performance counters. (closes: #698651) ++ - Remove special-case for first IO-APIC. ++ - Fix MSI handling for HVM domains. (closes: #695123) ++ - Revert cache value of disks in HVM domains. ++ ++ -- Bastian Blank Thu, 31 Jan 2013 15:44:50 +0100 ++ ++xen (4.1.3-8) unstable; urgency=high ++ ++ * Fix error in VT-d interrupt remapping source validation. ++ CVE-2012-5634 ++ * Fix buffer overflow in qemu e1000 emulation. ++ CVE-2012-6075 ++ * Update patch, mention second CVE. ++ CVE-2012-5511, CVE-2012-6333 ++ ++ -- Bastian Blank Sat, 19 Jan 2013 13:55:07 +0100 ++ ++xen (4.1.3-7) unstable; urgency=low ++ ++ * Fix clock jump due to incorrect annotated inline assembler. ++ (closes: #599161) ++ * Add support for XZ compressed Linux kernels to hypervisor and userspace ++ based loaders, it is needed for any Linux kernels newer then Wheezy. ++ (closes: #695056) ++ ++ -- Bastian Blank Tue, 11 Dec 2012 18:54:59 +0100 ++ ++xen (4.1.3-6) unstable; urgency=high ++ ++ * Fix error handling in physical to machine memory mapping. ++ CVE-2012-5514 ++ ++ -- Bastian Blank Tue, 04 Dec 2012 10:51:43 +0100 ++ ++xen (4.1.3-5) unstable; urgency=high ++ ++ * Fix state corruption due to incomplete grant table switch. ++ CVE-2012-5510 ++ * Check range of arguments to several HVM operations. ++ CVE-2012-5511, CVE-2012-6333 ++ * Check array index before using it in HVM memory operation. ++ CVE-2012-5512 ++ * Check memory range in memory exchange operation. ++ CVE-2012-5513 ++ * Don't allow too large memory size and avoid busy looping. ++ CVE-2012-5515 ++ ++ -- Bastian Blank Mon, 03 Dec 2012 19:37:38 +0100 ++ ++xen (4.1.3-4) unstable; urgency=high ++ ++ * Use linux 3.2.0-4 stuff. ++ * Fix overflow in timer calculations. ++ CVE-2012-4535 ++ * Check value of physical interrupts parameter before using it. ++ CVE-2012-4536 ++ * Error out on incorrect memory mapping updates. ++ CVE-2012-4537 ++ * Check if toplevel page tables are present. ++ CVE-2012-4538 ++ * Fix infinite loop in compatibility code. ++ CVE-2012-4539 ++ * Limit maximum kernel and ramdisk size. ++ CVE-2012-2625, CVE-2012-4544 ++ ++ -- Bastian Blank Tue, 20 Nov 2012 15:51:01 +0100 ++ ++xen (4.1.3-3) unstable; urgency=low ++ ++ * Xen domain init script: ++ - Make sure Open vSwitch is started before any domain. ++ - Properly handle and show output of failed migration and save. ++ - Ask all domains to shut down before checking them. ++ ++ -- Bastian Blank Tue, 18 Sep 2012 13:26:32 +0200 ++ ++xen (4.1.3-2) unstable; urgency=medium ++ ++ * Don't allow writing reserved bits in debug register. ++ CVE-2012-3494 ++ * Fix error handling in interrupt assignment. ++ CVE-2012-3495 ++ * Don't trigger bug messages on invalid flags. ++ CVE-2012-3496 ++ * Check array bounds in interrupt assignment. ++ CVE-2012-3498 ++ * Properly check bounds while setting the cursor in qemu. ++ CVE-2012-3515 ++ * Disable monitor in qemu by default. ++ CVE-2012-4411 ++ ++ -- Bastian Blank Fri, 07 Sep 2012 19:41:46 +0200 ++ ++xen (4.1.3-1) unstable; urgency=medium ++ ++ * New upstream release: (closes: #683286) ++ - Don't leave the x86 emulation in a bad state. (closes: #683279) ++ CVE-2012-3432 ++ - Only check for shared pages while any exist on teardown. ++ CVE-2012-3433 ++ - Fix error handling for unexpected conditions. ++ - Update CPUID masking to latest Intel spec. ++ - Allow large ACPI ids. ++ - Fix IOMMU support for PCI-to-PCIe bridges. ++ - Disallow access to some sensitive IO-ports. ++ - Fix wrong address in IOTLB. ++ - Fix deadlock on CPUs without working cpufreq driver. ++ - Use uncached disk access in qemu. ++ - Fix buffer size on emulated e1000 device in qemu. ++ * Fixup broken and remove applied patches. ++ ++ -- Bastian Blank Fri, 17 Aug 2012 11:25:02 +0200 ++ ++xen (4.1.3~rc1+hg-20120614.a9c0a89c08f2-5) unstable; urgency=low ++ ++ [ Ian Campbell ] ++ * Set tap device MAC addresses to fe:ff:ff:ff:ff:ff (Closes: #671018) ++ * Only run xendomains initscript if toolstack is xl or xm (Closes: #680528) ++ ++ [ Bastian Blank ] ++ * Actually build-depend on new enough version of dpkg-dev. ++ * Add xen-sytem-* meta-packages. We are finally in a position to do ++ automatic upgrades and this package is missing. (closes: #681376) ++ ++ -- Bastian Blank Sat, 28 Jul 2012 10:23:26 +0200 ++ ++xen (4.1.3~rc1+hg-20120614.a9c0a89c08f2-4) unstable; urgency=low ++ ++ * Add Build-Using info to xen-utils package. ++ * Fix build-arch target. ++ ++ -- Bastian Blank Sun, 01 Jul 2012 19:52:30 +0200 ++ ++xen (4.1.3~rc1+hg-20120614.a9c0a89c08f2-3) unstable; urgency=low ++ ++ * Remove /usr/lib/xen-default. It breaks systems if xenstored is not ++ compatible. ++ * Fix init script usage. ++ * Fix udev rules for emulated network devices: ++ - Force names of emulated network devices to a predictable name. ++ ++ -- Bastian Blank Sun, 01 Jul 2012 16:59:04 +0200 ++ ++xen (4.1.3~rc1+hg-20120614.a9c0a89c08f2-2) unstable; urgency=low ++ ++ * Fix pointer missmatch in interrupt functions. Fixes build on i386. ++ ++ -- Bastian Blank Fri, 15 Jun 2012 18:00:51 +0200 ++ ++xen (4.1.3~rc1+hg-20120614.a9c0a89c08f2-1) unstable; urgency=low ++ ++ * New upstream snapshot. ++ - Fix privilege escalation and syscall/sysenter DoS while using ++ non-canonical addresses by untrusted PV guests. (closes: #677221) ++ CVE-2012-0217 ++ CVE-2012-0218 ++ - Disable Xen on CPUs affected by AMD Erratum #121. PV guests can ++ cause a DoS of the host. ++ CVE-2012-2934 ++ * Don't fail if standard toolstacks are not available. (closes: #677244) ++ ++ -- Bastian Blank Thu, 14 Jun 2012 17:06:25 +0200 ++ ++xen (4.1.2-7) unstable; urgency=low ++ ++ * Really use ucf. ++ * Update init script dependencies: ++ - Start $syslog before xen. ++ - Start drbd and iscsi before xendomains. (closes: #626356) ++ - Start corosync and heartbeat after xendomains. ++ * Remove /var/log/xen on purge. (closes: #656216) ++ ++ -- Bastian Blank Tue, 22 May 2012 10:44:41 +0200 ++ ++xen (4.1.2-6) unstable; urgency=low ++ ++ * Fix generation of architectures for hypervisor packages. ++ * Remove information about loop devices, it is incorrect. (closes: #503044) ++ * Update xendomains init script: ++ - Create directory for domain images only root readable. (closes: #596048) ++ - Add missing sanity checks for variables. (closes: #671750) ++ - Remove not longer supported config options. ++ - Don't fail if no config is available. ++ - Remove extra output if domain was restored. ++ ++ -- Bastian Blank Sun, 06 May 2012 20:07:41 +0200 ++ ++xen (4.1.2-5) unstable; urgency=low ++ ++ * Actually force init script rename. (closes: #669341) ++ * Fix long output from xl. ++ * Move complete init script setup. ++ * Rewrite xendomains init script: ++ - Use LSB output functions. ++ - Make output more clear. ++ - Use xen toolstack wrapper. ++ - Use a python script to properly read domain details. ++ * Set name for Domain-0. ++ ++ -- Bastian Blank Mon, 23 Apr 2012 11:56:45 +0200 ++ ++xen (4.1.2-4) unstable; urgency=low ++ ++ [ Bastian Blank ] ++ * Build-depend on ipxe-qemu instead of ipxe. (closes: #665070) ++ * Don't longer use a4wide latex package. ++ * Use ucf for /etc/default/xen. ++ * Remove handling for old udev rules link and xenstored directory. ++ * Rename xend init script to xen. ++ ++ [ Lionel Elie Mamane ] ++ * Fix toolstack script to work with old dash. (closes: #648029) ++ ++ -- Bastian Blank Mon, 16 Apr 2012 08:47:29 +0000 ++ ++xen (4.1.2-3) unstable; urgency=low ++ ++ * Merge xen-common source package. ++ * Remove xend wrapper, it should not be called by users. ++ * Support xl in init script. ++ * Restart xen daemons on upgrade. ++ * Restart and stop xenconsoled in init script. ++ * Load xen-gntdev module. ++ * Create /var/lib/xen. (closes: #658101) ++ * Cleanup udev rules. (closes: #657745) ++ ++ -- Bastian Blank Wed, 01 Feb 2012 19:28:28 +0100 ++ ++xen (4.1.2-2) unstable; urgency=low ++ ++ [ Jon Ludlam ] ++ * Import (partially reworked) upstream changes for OCaml support. ++ - Rename the ocamlfind packages. ++ - Remove uuid and log libraries. ++ - Fix 2 bit-twiddling bugs and an off-by-one ++ * Fix build of OCaml libraries. ++ * Add OCaml library and development package. ++ * Include some missing headers. ++ ++ -- Bastian Blank Sat, 10 Dec 2011 19:13:25 +0000 ++ ++xen (4.1.2-1) unstable; urgency=low ++ ++ * New upstream release. ++ * Build-depend on pkg-config. ++ * Add package libxen-4.1. Includes some shared libs. ++ ++ -- Bastian Blank Sat, 26 Nov 2011 18:28:06 +0100 ++ ++xen (4.1.1-3) unstable; urgency=low ++ ++ [ Julien Danjou ] ++ * Remove Julien Danjou from the Uploaders field. (closes: #590439) ++ ++ [ Bastian Blank ] ++ * Use current version of python. (closes: #646660) ++ * Build-depend against liblzma-dev, it is used if available. ++ (closes: #646694) ++ * Update Standards-Version to 3.9.2. No changes. ++ * Don't use brace-expansion in debhelper install files. ++ ++ -- Bastian Blank Wed, 26 Oct 2011 14:42:33 +0200 ++ ++xen (4.1.1-2) unstable; urgency=low ++ ++ * Fix hvmloader with gcc 4.6. ++ ++ -- Bastian Blank Fri, 05 Aug 2011 23:58:36 +0200 ++ ++xen (4.1.1-1) unstable; urgency=low ++ ++ * New upstream release. ++ * Don't use qemu-dm if it is not needed. (Backport from xen-unstable.) ++ * Use dh_python2. ++ ++ -- Bastian Blank Mon, 18 Jul 2011 19:38:38 +0200 ++ ++xen (4.1.0-3) unstable; urgency=low ++ ++ * Add ghostscript to build-deps. ++ * Enable qemu-dm build. ++ - Add qemu as another orig tar. ++ - Remove blktap1, bluetooth and sdl support from qemu. ++ - Recommend qemu-keymaps and qemu-utils. ++ ++ -- Bastian Blank Thu, 28 Apr 2011 15:20:45 +0200 ++ ++xen (4.1.0-2) unstable; urgency=low ++ ++ * Re-enable hvmloader: ++ - Use packaged ipxe. ++ * Workaround incompatibility with xenstored of Xen 4.0. ++ ++ -- Bastian Blank Fri, 15 Apr 2011 11:38:25 +0200 ++ ++xen (4.1.0-1) unstable; urgency=low ++ ++ * New upstream release. ++ ++ -- Bastian Blank Sun, 27 Mar 2011 18:09:28 +0000 ++ ++xen (4.1.0~rc6-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ * Build documentation using pdflatex. ++ * Use python 2.6. (closes: #596545) ++ * Fix lintian override. ++ * Install new tools: xl, xenpaging. ++ * Enable blktap2. ++ - Use own md5 implementation. ++ - Fix includes. ++ - Fix linking of blktap2 binaries. ++ - Remove optimization setting. ++ * Temporarily disable hvmloader, wants to download ipxe. ++ * Remove xenstored pid check from xl. ++ ++ -- Bastian Blank Thu, 17 Mar 2011 16:12:45 +0100 ++ ++xen (4.0.1-2) unstable; urgency=low ++ ++ * Fix races in memory management. ++ * Make sure that frame-table compression leaves enough alligned. ++ * Disable XSAVE support. (closes: #595490) ++ * Check for dying domain instead of raising an assertion. ++ * Add C6 state with EOI errata for Intel. ++ * Make some memory management interrupt safe. Unsure if really needed. ++ * Raise bar for inter-socket migrations on mostly-idle systems. ++ * Fix interrupt handling for legacy routed interrupts. ++ * Allow to set maximal domain memory even during a running change. ++ * Support new partition name in pygrub. (closes: #599243) ++ * Fix some comparisions "< 0" that may be optimized away. ++ * Check for MWAIT support before using it. ++ * Fix endless loop on interrupts on Nehalem cpus. ++ * Don't crash upon direct GDT/LDT access. (closes: #609531) ++ CVE-2010-4255 ++ * Don't loose timer ticks after domain restore. ++ * Reserve some space for IOMMU area in dom0. (closes: #608715) ++ * Fix hypercall arguments after trace callout. ++ * Fix some error paths in vtd support. Memory leak. ++ * Reinstate ACPI DMAR table. ++ ++ -- Bastian Blank Wed, 12 Jan 2011 15:01:40 +0100 ++ ++xen (4.0.1-1) unstable; urgency=low ++ ++ * New upstream release. ++ - Fix IOAPIC S3 with interrupt remapping enabled. ++ ++ -- Bastian Blank Fri, 03 Sep 2010 17:14:28 +0200 ++ ++xen (4.0.1~rc6-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ - Add some missing locks for page table walk. ++ - Fix NMU injection into guest. ++ - Fix ioapic updates for vt-d. ++ - Add check for GRUB2 commandline behaviour. ++ - Fix handling of invalid kernel images. ++ - Allow usage of powernow. ++ * Remove lowlevel python modules usage from pygrub. (closes: #588811) ++ ++ -- Bastian Blank Tue, 17 Aug 2010 23:15:34 +0200 ++ ++xen (4.0.1~rc5-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ ++ -- Bastian Blank Mon, 02 Aug 2010 17:06:27 +0200 ++ ++xen (4.0.1~rc3-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ * Call dh_pyversion with the correct version. ++ * Restart xen daemon on upgrade. ++ ++ -- Bastian Blank Wed, 30 Jun 2010 16:30:47 +0200 ++ ++xen (4.0.0-2) unstable; urgency=low ++ ++ * Fix python dependency. (closes: #586666) ++ - Use python-support. ++ - Hardcode to use python 2.5 for now. ++ ++ -- Bastian Blank Mon, 21 Jun 2010 17:23:16 +0200 ++ ++xen (4.0.0-1) unstable; urgency=low ++ ++ * Update to unstable. ++ * Fix spelling in README. ++ * Remove unnecessary build-depends. ++ * Fixup xend to use different filename lookup. ++ ++ -- Bastian Blank Thu, 17 Jun 2010 11:16:55 +0200 ++ ++xen (4.0.0-1~experimental.2) experimental; urgency=low ++ ++ * Merge changes from 3.4.3-1. ++ ++ -- Bastian Blank Fri, 28 May 2010 12:58:12 +0200 ++ ++xen (4.0.0-1~experimental.1) experimental; urgency=low ++ ++ * New upstream version. ++ * Rename source package to xen. ++ * Build depend against iasl and uuid-dev. ++ * Disable blktap2 support, it links against OpenSSL. ++ * Update copyright file. ++ ++ -- Bastian Blank Thu, 06 May 2010 15:47:38 +0200 ++ ++xen-3 (3.4.3-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Disable blktap support, it is unusable with current kernels. ++ * Disable libaio, was only used by blktap. ++ * Drop device creation support. (closes: #583283) ++ ++ -- Bastian Blank Fri, 28 May 2010 11:43:18 +0200 ++ ++xen-3 (3.4.3~rc6-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ - Relocate multiboot modules. (closes: #580045) ++ - Support grub2 in pygrub. (closes: #573311) ++ ++ -- Bastian Blank Sat, 08 May 2010 11:32:29 +0200 ++ ++xen-3 (3.4.3~rc3-2) unstable; urgency=low ++ ++ * Again list the complete version in the hypervisor. ++ * Fix path detection for bootloader, document it. (closes: #481105) ++ * Rewrite README. ++ ++ -- Bastian Blank Thu, 08 Apr 2010 16:14:58 +0200 ++ ++xen-3 (3.4.3~rc3-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ * Use 3.0 (quilt) source format. ++ * Always use current python version. ++ ++ -- Bastian Blank Mon, 01 Mar 2010 22:14:22 +0100 ++ ++xen-3 (3.4.2-2) unstable; urgency=low ++ ++ * Remove Jeremy T. Bouse from uploaders. ++ * Export blktap lib and headers. ++ * Build amd64 hypervisor on i386. (closes: #366315) ++ ++ -- Bastian Blank Sun, 22 Nov 2009 16:54:47 +0100 ++ ++xen-3 (3.4.2-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Strip hvmloader by hand. ++ * Remove extra license file from libxen-dev. ++ ++ -- Bastian Blank Mon, 16 Nov 2009 20:57:07 +0100 ++ ++xen-3 (3.4.1-1) unstable; urgency=low ++ ++ * New upstream version. ++ ++ -- Bastian Blank Fri, 21 Aug 2009 21:34:38 +0200 ++ ++xen-3 (3.4.0-2) unstable; urgency=low ++ ++ * Add symbols file for libxenstore3.0. (closes: #536173) ++ * Document that ioemu is currently unsupported. (closes: #536175) ++ * Fix location of fsimage plugins. (closes: #536174) ++ ++ -- Bastian Blank Sat, 18 Jul 2009 18:05:35 +0200 ++ ++xen-3 (3.4.0-1) unstable; urgency=low ++ ++ [ Bastian Blank ] ++ * New upstream version. ++ * Remove ioemu for now. (closes: #490409, #496367) ++ * Remove non-pae hypervisor. ++ * Use debhelper compat level 7. ++ * Make the init script start all daemons. ++ ++ -- Bastian Blank Tue, 30 Jun 2009 22:33:22 +0200 ++ ++xen-3 (3.2.1-2) unstable; urgency=low ++ ++ * Use e2fslibs based ext2 support for pygrub. (closes: #476366) ++ * Fix missing checks in pvfb code. ++ See CVE-2008-1952. (closes: #487095) ++ * Add support for loading bzImage files. (closes: #474509) ++ * Enable TLS support in ioemu code. ++ * Drop libcrypto usage because of GPL-incompatibility. ++ * Remove AES code from blktap drivers. Considered broken. ++ ++ -- Bastian Blank Sat, 28 Jun 2008 11:30:43 +0200 ++ ++xen-3 (3.2.1-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Set rpath relative to ${ORIGIN}. ++ * Add lintian override to xen-utils package. ++ ++ -- Bastian Blank Thu, 22 May 2008 14:01:47 +0200 ++ ++xen-3 (3.2.0-5) unstable; urgency=low ++ ++ * Provide correct directory to dh_pycentral. ++ ++ -- Bastian Blank Mon, 14 Apr 2008 21:43:49 +0200 ++ ++xen-3 (3.2.0-4) unstable; urgency=low ++ ++ * Pull in newer xen-utils-common. ++ * Fix missing size checks in the ioemu block driver. (closes: #469654) ++ See: CVE-2008-0928 ++ ++ -- Bastian Blank Fri, 07 Mar 2008 14:21:38 +0100 ++ ++xen-3 (3.2.0-3) unstable; urgency=low ++ ++ * Clean environment for build. ++ * Add packages libxenstore3.0 and xenstore-utils. ++ * Move docs package in docs section to match overwrites. ++ * Make the hypervisor only recommend the utils. ++ * Cleanup installation. (closes: #462989) ++ ++ -- Bastian Blank Tue, 12 Feb 2008 12:40:56 +0000 ++ ++xen-3 (3.2.0-2) unstable; urgency=low ++ ++ * Fix broken patch. (closes: #462522) ++ ++ -- Bastian Blank Sat, 26 Jan 2008 17:21:52 +0000 ++ ++xen-3 (3.2.0-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Add package libxen-dev. Including public headers and static libs. ++ (closes: #402249) ++ * Don't longer install xenfb, removed upstream. ++ ++ -- Bastian Blank Tue, 22 Jan 2008 12:51:49 +0000 ++ ++xen-3 (3.1.2-2) unstable; urgency=low ++ ++ * Add missing rpath definitions. ++ * Fix building of pae version. ++ ++ -- Bastian Blank Sat, 08 Dec 2007 12:07:42 +0000 ++ ++xen-3 (3.1.2-1) unstable; urgency=high ++ ++ * New upstream release: ++ - Move shared file into /var/run. (closes: #447795) ++ See CVE-2007-3919. ++ - x86: Fix various problems with debug-register handling. (closes: #451626) ++ See CVE-2007-5906. ++ ++ -- Bastian Blank Sat, 24 Nov 2007 13:24:45 +0000 ++ ++xen-3 (3.1.1-1) unstable; urgency=low ++ ++ * New upstream release: ++ - Don't use exec with untrusted values in pygrub. (closes: #444430) ++ See CVE-2007-4993. ++ ++ -- Bastian Blank Fri, 19 Oct 2007 16:02:37 +0000 ++ ++xen-3 (3.1.0-2) unstable; urgency=low ++ ++ * Switch to texlive for documentation. ++ * Drop unused transfig. ++ * Drop unused latex features from documentation. ++ * Build depend against gcc-multilib for amd64. (closes: #439662) ++ ++ -- Bastian Blank Fri, 31 Aug 2007 08:15:50 +0000 ++ ++xen-3 (3.1.0-1) unstable; urgency=low ++ ++ [ Julien Danjou ] ++ * New upstream version. ++ ++ [ Ralph Passgang ] ++ * Added graphviz to Build-Indeps ++ ++ [ Bastian Blank ] ++ * Upstream removed one part of the version. Do it also. ++ * Merge utils packages. ++ * Install blktap support. ++ * Install pygrub. ++ * Install xenfb tools. ++ * xenconsoled startup is racy, wait a little bit. ++ ++ -- Bastian Blank Mon, 20 Aug 2007 15:05:08 +0000 ++ ++xen-3.0 (3.0.4-1-1) unstable; urgency=low ++ ++ [ Bastian Blank ] ++ * New upstream version (closes: #394411) ++ ++ [ Guido Trotter ] ++ * Actually try to build and release xen 3.0.4 ++ * Update build dependencies ++ ++ -- Guido Trotter Wed, 23 May 2007 11:57:29 +0100 ++ ++xen-3.0 (3.0.3-0-2) unstable; urgency=medium ++ ++ [Bastian Blank] ++ * Remove device recreate code. ++ * Remove build dependency on linux-support-X ++ ++ [ Guido Trotter ] ++ * Add missing build dependency on zlib1g-dev (closes: #396557) ++ * Add missing build dependencies on libncurses5-dev and x11proto-core-dev ++ (closes: #396561, #396567) ++ ++ -- Guido Trotter Thu, 2 Nov 2006 16:38:02 +0000 ++ ++xen-3.0 (3.0.3-0-1) unstable; urgency=low ++ ++ * New upstream version. ++ ++ -- Bastian Blank Fri, 20 Oct 2006 11:04:35 +0000 ++ ++xen-3.0 (3.0.3~rc4+hg11760-1) unstable; urgency=low ++ ++ * New upstream snapshot. ++ * Ignore update-grub errors. (closes: #392534) ++ ++ -- Bastian Blank Sat, 14 Oct 2006 13:09:53 +0000 ++ ++xen-3.0 (3.0.3~rc1+hg11686-1) unstable; urgency=low ++ ++ * New upstream snapshot. ++ * Rename ioemu package to include the complete version. ++ * Fix name of hypervisor. (closes: #391771) ++ ++ -- Bastian Blank Mon, 9 Oct 2006 12:48:13 +0000 ++ ++xen-3.0 (3.0.2-3+hg9762-1) unstable; urgency=low ++ ++ * New upstream snapshot. ++ * Rename hypervisor and utils packages to include the complete version. ++ * Redo build environment. ++ ++ -- Bastian Blank Mon, 4 Sep 2006 18:43:12 +0000 ++ ++xen-3.0 (3.0.2+hg9697-2) unstable; urgency=low ++ ++ [ Guido Trotter ] ++ * Update xen-utils' README.Debian (closes: #372524) ++ ++ [ Bastian Blank ] ++ * Adopt new python policy. (closes: #380990) ++ * Add patch to make new kernels working on the hypervisor. ++ ++ -- Bastian Blank Tue, 15 Aug 2006 19:20:08 +0000 ++ ++xen-3.0 (3.0.2+hg9697-1) unstable; urgency=low ++ ++ [ Guido Trotter ] ++ * Update Standards Version ++ * Merge upstream fixes trunk (upstream 3.0.2-3 + a couple of fixes) ++ ++ [ Bastian Blank ] ++ * Add xen-ioemu-3.0 package to support HVM guests (closes: #368496) ++ ++ -- Guido Trotter Wed, 31 May 2006 10:50:05 +0200 ++ ++xen-3.0 (3.0.2+hg9681-1) unstable; urgency=low ++ ++ * Update xen-hypervisor-3.0-i386 and xen-hypervisor-3.0-i386-pae ++ descriptions, specifying what the difference between the two packages is ++ (closes: #366019) ++ * Merge upstream fixes trunk ++ ++ -- Guido Trotter Thu, 18 May 2006 15:25:02 +0200 ++ ++xen-3.0 (3.0.2+hg9656-1) unstable; urgency=low ++ ++ * Merge upstream fixes trunk ++ - This includes a fix for CVE-2006-1056 ++ ++ -- Guido Trotter Thu, 27 Apr 2006 17:34:03 +0200 ++ ++xen-3.0 (3.0.2+hg9651-1) unstable; urgency=low ++ ++ * Merge upstream fixes trunk ++ * Fix PAE disabled in pae build (Closes: #364875) ++ ++ -- Julien Danjou Wed, 26 Apr 2006 13:19:39 +0200 ++ ++xen-3.0 (3.0.2+hg9646-1) unstable; urgency=low ++ ++ [ Guido Trotter ] ++ * Merge upstream fixes trunk ++ ++ [ Bastian Blank ] ++ * debian/patches/libdir.dpatch: Update to make xm save work ++ ++ -- Julien Danjou Mon, 24 Apr 2006 18:02:07 +0200 ++ ++xen-3.0 (3.0.2+hg9611-1) unstable; urgency=low ++ ++ * Merge upstream bug fixes ++ * Fix bug with xend init.d script ++ ++ -- Julien Danjou Wed, 12 Apr 2006 17:35:35 +0200 ++ ++xen-3.0 (3.0.2+hg9598-1) unstable; urgency=low ++ ++ * New upstream release ++ * Fix copyright file ++ ++ -- Julien Danjou Mon, 10 Apr 2006 17:02:55 +0200 ++ ++xen-3.0 (3.0.1+hg8762-1) unstable; urgency=low ++ ++ * The "preserve our homes" release ++ * Now cooperatively maintained by the Debian Xen Team ++ * New upstream release (closes: #327493, #342249) ++ * Build depend on transfig (closes: #321157) ++ * Use gcc rather than gcc-3.4 to compile (closes: #323698) ++ * Split xen-hypervisor-3.0 and xen-utils-3.0 ++ * Build both normal and pae hypervisor packages ++ * Change maintainer and add uploaders field ++ * Add force-reload support for init script xendomains ++ * Remove dependency against bash ++ * Bump standards version to 3.6.2.2 ++ * xen-utils-3.0 conflicts and replaces xen ++ * Add dpatch structure to the package ++ * Remove build-dependency on gcc (it's build essential anyway) ++ * Make SrvServer.py not executable ++ * Create NEWS.Debian file with important upgrade notices ++ * Update copyright file ++ * Remove the linux-patch-xen package ++ * Removed useless build-dependencies: libncurses5-dev, wget ++ * Changed xendomains config path to /etc/default ++ * xen-utils-3.0 now provides xen-utils and xen-hypervisor-3.0-i386 & ++ xen-hypervisor-3.0-i386-pae & xen-hypervizor-amd64 now provide ++ xen-hypervisor ++ * Made xen-utils-3.0.postinst more fault-tolerant, so that upgrading ++ xen2 -> xen3 don't fail because of a running xen2 hypervisor ++ * Updated the "Replaces & Conflicts" ++ * Install only and correctly udev files ++ * Compile date is no more in current locale ++ * Add patch which add the debian version and maintainer in the version ++ string and removes the banner. ++ * Don't install unusable cruft in xen-utils ++ * Remove libxen packages (no stable API/ABI) ++ ++ -- Julien Danjou Wed, 5 Apr 2006 16:05:07 +0200 ++ ++xen (2.0.6-1) unstable; urgency=low ++ ++ * Patches applied upstream: non-xen-init-exit.patch, add-build.patch, ++ python-install.patch, disable-html-docs.patch. ++ * New upstream released. Closes: #311336. ++ * Remove comparison to UML from xen short description. Closes: #317066. ++ * Make packages conflicts with 1.2 doc debs. Closes: #304285. ++ * Add iproute to xen depends, as it uses /bin/ip. Closes: #300488, ++ #317468. ++ ++ -- Adam Heath Wed, 06 Jul 2005 12:35:50 -0500 ++ ++xen (2.0.5-3) experimental; urgency=low ++ ++ * Change priority/section to match the overrides file. ++ ++ -- Adam Heath Fri, 18 Mar 2005 12:43:50 -0600 ++ ++xen (2.0.5-2) experimental; urgency=low ++ ++ * Mike McCallister , ++ Tommi Virtanen , Tom Hibbert : ++ Fix missing '.' in update-rc.d call in xen.postinst. Closes: #299384 ++ ++ -- Adam Heath Fri, 18 Mar 2005 11:39:56 -0600 ++ ++xen (2.0.5-1) experimental; urgency=low ++ ++ * New upstream. ++ * Remove pic-lib.patch, tools-misc-TARGETS.patch, and clean-mttr.patch ++ as they have been applied upstream(in various forms). ++ * xend now starts at priority 20, stops at 21, while xendomains starts ++ at 21, and stops at 20. ++ ++ -- Adam Heath Fri, 11 Mar 2005 14:33:33 -0600 ++ ++xen (2.0.4-4) experimental; urgency=low ++ ++ * Bah, major booboo. Add /boot to debian/xen.install, so xen.gz will ++ get shipped. Reported by Clint Adams . ++ ++ -- Adam Heath Tue, 15 Feb 2005 13:00:57 -0600 ++ ++xen (2.0.4-3) experimental; urgency=low ++ ++ * Fix file overlap(/usr/share/doc/xen/examples/*) between xen and ++ xen-docs. Reported by Tupshin Harper . ++ ++ -- Adam Heath Sun, 06 Feb 2005 01:22:45 -0600 ++ ++xen (2.0.4-2) experimental; urgency=low ++ ++ * Fix kernel patch generation. It was broken when I integrated with ++ debian's kernel source. I used a symlink, and diff doesn't follow ++ those. ++ ++ -- Adam Heath Sat, 05 Feb 2005 18:16:35 -0600 ++ ++xen (2.0.4-1) experimental; urgency=low ++ ++ * New upstream. ++ * xen.deb can now install on a plain kernel; that is, the init scripts ++ exit successfully if /proc/xen/privcmd doesn't exist. This allows ++ for dual-boot setups. ++ * Manpages do not yet exist xend, xenperf, xensv, xfrd, nor xm. xend ++ xfrd are daemons, and take little if any options. I've not had a need ++ to use xenperf nor xensv yet. xm has nice built in help(xm help). ++ * Upstream now requires either linux 2.4.29, or 2.6.10. Since 2.4.29 is ++ not yet in debian, disable the 2.4 patch generation. Closes: #271245. ++ * Not certain how the kernel-patch-xen was empty. It's not now, with ++ the repackaging. Closes: #272299. ++ * Xen no longer produces kernel images, so problems about missing features ++ are no longer valid. Closes: #253924. ++ * Acknowledge nmu bugs: ++ * No longer build-depend on gcc 3.3, as the default gcc works. Closes: ++ #243048. ++ ++ -- Adam Heath Sat, 05 Feb 2005 18:04:27 -0600 ++ ++xen (2.0.3-0.1) unstable; urgency=low ++ ++ * Changes from Tommi Virtanen: ++ * Added dh-kpatches and libcurl3-dev to Build-Depends. ++ * Add /etc/xen/sv/params.py and /etc/xen/xend/params.py. ++ * Add xmexample1 and xmexample2 to xen/doc/examples. ++ ++ -- Adam Heath Wed, 26 Jan 2005 10:55:07 -0600 ++ ++xen (2.0.3-0) unstable; urgency=low ++ ++ * New upstream. Closes: #280733. ++ * Repackaged from scratch. ++ * Using unreleased patch management system. See debian/README.build. ++ * After extracting the .dsc, there are no special steps needed ++ * Those wanting to change the source, use the normal procedures for ++ any package, including using interdiff(or other tool) to send a ++ patch to me or the bts. ++ * No longer try to do anything fancy with regard to the layout of the ++ built kernels. Now, only patches are distributed. Please make use of ++ the xen support in kernel-package. ++ * Early preview release to #debian-devel. ++ ++ -- Adam Heath Tue, 25 Jan 2005 13:24:54 -0600 ++ ++xen (1.2-4.1) unstable; urgency=high ++ ++ * NMU ++ * Remove gcc-3.2 from Build-Depends as isn't used during build ++ (Closes: #243048) ++ ++ -- Frank Lichtenheld Sat, 21 Aug 2004 17:42:28 +0200 ++ ++xen (1.2-4) unstable; urgency=low ++ ++ * Added xen-docs.README.Debian, which explains the kernel image layout, ++ and contains references on the locations differ from what is mentioned ++ by the upstream documentation. Closes: #230345. ++ ++ -- Adam Heath Fri, 26 Mar 2004 17:36:41 -0600 ++ ++xen (1.2-3) unstable; urgency=low ++ ++ * Add kernel-source-2.4.25 and kernel-patch-debian-2.4.25 to ++ Build-Depends-Indep. ++ ++ -- Adam Heath Tue, 23 Mar 2004 20:14:39 -0600 ++ ++xen (1.2-2) unstable; urgency=low ++ ++ * xen: moved /boot/xen.gz to /usr/lib/kernels/xen-i386/images/vmlinuz ++ * kernel-image, kernel-modules: swapped i386/xeno to xeno/i386 in ++ /usr/lib/kernels. ++ * Add kernel-patch-nfs-swap deb. ++ * Apply additional patches to kernel-image-xen: ++ * nfs-group ++ * nfs-swap ++ ++ -- Adam Heath Thu, 04 Mar 2004 12:47:47 -0600 ++ ++xen (1.2-1) unstable; urgency=low ++ ++ * Initial version. ++ ++ -- Adam Heath Tue, 02 Mar 2004 13:21:52 -0600 diff --cc debian/compat index 0000000000,0000000000..ec635144f6 new file mode 100644 --- /dev/null +++ b/debian/compat @@@ -1,0 -1,0 +1,1 @@@ ++9 diff --cc debian/control index 0000000000,0000000000..528ffcbb16 new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,155 @@@ ++Source: xen ++Section: kernel ++Priority: optional ++Maintainer: Debian Xen Team ++Uploaders: Guido Trotter , Bastian Blank , Ian Jackson ++Standards-Version: 3.9.4 ++Build-Depends: autotools-dev, debhelper (>> 9), dpkg-dev (>= 1.16.0~), lsb-release, python-dev, bcc [i386 amd64], gcc-multilib [i386 amd64], e2fslibs-dev, iasl, seabios (>= 1.7.4-2~) [i386 amd64], libaio-dev, libfdt-dev [armhf arm64], libglib2.0-dev, liblzma-dev, libncurses5-dev, libpixman-1-dev, libyajl-dev, pkg-config, uuid-dev, zlib1g-dev ++XS-Python-Version: current ++ ++Package: libxen-4.8 ++Architecture: amd64 arm64 armhf i386 ++Section: libs ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Description: Public libs for Xen ++ This package contains the shared toolstack libraries for Xen. ++Multi-Arch: same ++ ++Package: libxenstore3.0 ++Architecture: amd64 arm64 armhf i386 ++Section: libs ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Description: Xenstore communications library for Xen ++ This package contains the client library interface to XenStore. . ++Multi-Arch: same ++ ++Package: libxen-dev ++Architecture: amd64 arm64 armhf i386 ++Section: libdevel ++Depends: libxen-4.8 (= ${binary:Version}), libxenstore3.0 (= ${binary:Version}), ${misc:Depends} ++Description: Public headers and libs for Xen ++ This package contains the public headers and static libraries for Xen. ++ . ++ The libxenlight library is intended as a common base for all Xen toolstack ++ developers. The libxlutil library contains additional helpers which may ++ be useful to toolstack developers. ++ . ++ The libxenstore library allows userspace processes to interact with the ++ XenStore database. XenStore is a shared database used for interdomain ++ communication of configuration and status information. It is accessible ++ to all domains running on the same Xen host. See ++ http://wiki.xen.org/wiki/XenStore for more information. ++ . ++ The libxenctrl and libxenguest libraries are internal libraries intended ++ for use by the Xen toolstack and are not intended to be used directly. ++ Toolstack authors should use libxenlight. ++Multi-Arch: same ++ ++Package: xenstore-utils ++Architecture: amd64 arm64 armhf i386 ++Section: admin ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Replaces: xen-utils-common (<= 3.1.0-1) ++Conflicts: xen-utils-common (<= 3.1.0-1) ++Description: Xenstore command line utilities for Xen ++ This package contains command line utilities for interacting with ++ XenStore. ++ . ++ XenStore is a shared database used for interdomain communication of ++ configuration and status information. It is accessible to all domains ++ running on the same Xen host. See http://wiki.xen.org/wiki/XenStore for ++ more information. ++ . ++ In the common case these tools are used by the Xen toolstack running in ++ domain0 (or a driver domain) however they may also be used in a guest ++ domain to support local scripting which wants to communicate via XenStore. ++ ++Package: xen-utils-common ++Architecture: all ++Depends: lsb-base, python, udev, xenstore-utils, ${misc:Depends} ++Description: Xen administrative tools - common files ++ The userspace tools to manage a system virtualized through the Xen virtual ++ machine monitor. ++ . ++ This package is only required on the host system (Domain 0) and not on the ++ virtual guest systems (Domain U). ++ ++Package: xen-utils-4.8 ++Architecture: amd64 arm64 armhf i386 ++Provides: xen-utils ++Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, xen-utils-common (>= ${source:Version}) ++Recommends: bridge-utils, libc6-xen [i386], xen-hypervisor-4.8, qemu-system-x86, grub-xen-host [i386 amd64] ++Suggests: qemu-utils [i386 amd64], seabios [i386 amd64] ++Description: XEN administrative tools ++ The userspace tools to manage a system virtualized through the XEN virtual ++ machine monitor. ++ . ++ qemu-utils and seabios are neded for "Xen HVM" (amd64 and i386) ++Built-Using: ${misc:Built-Using} ++ ++Package: xen-hypervisor-4.8-amd64 ++Architecture: amd64 i386 ++Provides: xen-hypervisor, xen-hypervisor-4.8, xen-hypervisor-amd64 ++Depends: ${misc:Depends} ++Recommends: xen-utils-4.8 ++Description: Xen Hypervisor on AMD64 ++ The hypervisor is the "core" for XEN itself. It gets booted by the boot ++ loader and controls cpu and memory, sharing them between your ++ administrative domain (Domain 0) and the virtual guest systems. ++ . ++ In order to boot a XEN system along with this package you also need a ++ kernel specifically crafted to work as the Domain 0, mediating hardware ++ access for XEN itself. ++ ++Package: xen-system-amd64 ++Architecture: amd64 i386 ++Provides: xen-system ++Depends: xen-hypervisor-4.8-amd64, xen-utils-4.8, ${misc:Depends} ++Description: Xen System on AMD64 (meta-package) ++ This package depends on the latest Xen hypervisor for use on AMD64 and the ++ Xen utils. ++ ++Package: xen-hypervisor-4.8-arm64 ++Architecture: arm64 ++Provides: xen-hypervisor, xen-hypervisor-4.8, xen-hypervisor-arm64 ++Depends: ${misc:Depends} ++Recommends: xen-utils-4.8 ++Description: Xen Hypervisor on ARM64 ++ The hypervisor is the "core" for XEN itself. It gets booted by the boot ++ loader and controls cpu and memory, sharing them between your ++ administrative domain (Domain 0) and the virtual guest systems. ++ . ++ In order to boot a XEN system along with this package you also need a ++ kernel specifically crafted to work as the Domain 0, mediating hardware ++ access for XEN itself. ++ ++Package: xen-system-arm64 ++Architecture: arm64 ++Provides: xen-system ++Depends: xen-hypervisor-4.8-arm64, xen-utils-4.8, ${misc:Depends} ++Description: Xen System on ARM64 (meta-package) ++ This package depends on the latest Xen hypervisor for use on ARM64 and the ++ Xen utils. ++ ++Package: xen-hypervisor-4.8-armhf ++Architecture: armhf ++Provides: xen-hypervisor, xen-hypervisor-4.8, xen-hypervisor-armhf ++Depends: ${misc:Depends} ++Recommends: xen-utils-4.8 ++Description: Xen Hypervisor on ARMHF ++ The hypervisor is the "core" for XEN itself. It gets booted by the boot ++ loader and controls cpu and memory, sharing them between your ++ administrative domain (Domain 0) and the virtual guest systems. ++ . ++ In order to boot a XEN system along with this package you also need a ++ kernel specifically crafted to work as the Domain 0, mediating hardware ++ access for XEN itself. ++ ++Package: xen-system-armhf ++Architecture: armhf ++Provides: xen-system ++Depends: xen-hypervisor-4.8-armhf, xen-utils-4.8, ${misc:Depends} ++Description: Xen System on ARMHF (meta-package) ++ This package depends on the latest Xen hypervisor for use on ARMHF and the ++ Xen utils. ++ diff --cc debian/control.md5sum index 0000000000,0000000000..d1cbe5166e new file mode 100644 --- /dev/null +++ b/debian/control.md5sum @@@ -1,0 -1,0 +1,17 @@@ ++fd4431defc3dba21534e5c87b6a54a0e debian/changelog ++dc7b5d9f0538e3180af4e9aff9b0bd57 debian/bin/gencontrol.py ++20e336dbea44b1641802eff0dde9569b debian/templates/control.main.in ++a15fa64ce6deead28d33c1581b14dba7 debian/templates/xen-hypervisor.postinst.in ++fe9f3e8a9c9b716f7b4c5b7d7aec3128 debian/templates/control.system.latest.in ++03f63e67cf2d915bfbb535f8c9d9e2e4 debian/templates/xen-utils.postinst.in ++63ad8a975156f7bf2327f0e1dc7fc9e2 debian/templates/control.source.in ++a4fad0ec66d977759a362165bf8aa31d debian/templates/control.hypervisor.in ++22492e0565a4754b5e008ca7cac871da debian/templates/xen-hypervisor.postrm.in ++df5a318ff90cd0ca3ac7f1a8976bae39 debian/templates/control.utils.in ++dcabf82578122540e0534f72750698d5 debian/templates/xen-utils.lintian-overrides.in ++b6acd21c3924e6ec6f9c547afbbc7d9e debian/templates/xen-utils.prerm.in ++f48f31b0af755ff8b08b4575e94d6390 debian/arch/defines ++bda767ffd62b57de88b50731794f1374 debian/arch/i386/defines ++06efb201e83233c4607b13c8dad5c031 debian/arch/armhf/defines ++afd11afd204a8929340d194894572353 debian/arch/amd64/defines ++b6a35272efc8545fafab547e1cf492cb debian/arch/arm64/defines diff --cc debian/copyright index 0000000000,0000000000..9a0736c277 new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,307 @@@ ++This work was downloaded from ++ ++ http://xenbits.xensource.com/ ++ ++Copyright: ++ ++ Copyright (C) 1998-2005 Hewlett-Packard Co ++ 1999-2006 Silicon Graphics, Inc ++ 2001-2006 IBM Corporation ++ 2005-2006 XenSource Inc ++ 2006-2010 Citrix Systems Inc. ++ and many others ++ ++License: ++ ++ This package is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 as ++ published by the Free Software Foundation. ++ ++ This package is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see ++ ++On Debian systems, the complete text of the GNU General ++Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". ++ ++The bundled qemu is: ++ ++ Copyright (C) 2007 Alexander Graf ++ 2005,2007 Alex Beregszaszi ++ 2005-2008 Andrzej Zaborowski ++ 2005-2007 Anthony Liguori ++ 2004 Antony T Curtis ++ 2007 Arastra, Inc. ++ 2007 Armin Kuster or ++ 1999 AT&T Laboratories Cambridge ++ 2006,2007 Aurelien Jarno ++ 2007-2008 AXIS Communications AB ++ 2007-2008 Bull S.A.S. ++ 2006 Christian Limpach ++ 2008 Citrix Systems, Inc. ++ 2005-2008 CodeSourcery ++ 2007 Dan Aloni ++ 1995,1996 Danny Gasparovski ++ 2000-2003 David McCullough ++ 2008 Dmitry Baryshkov ++ 2007-2009 Edgar E. Iglesias, Axis Communications AB. ++ 1996-1999 Eduardo Horvath ++ 1998,2003-2008 Fabrice Bellard ++ 2005 Filip Navara ++ 2006 Frederick Reeve ++ 2009 Freescale Semiconductor ++ 1986-2007 Free Software Foundation, Inc. ++ 2004 Gianni Tedesco ++ 2008 Gleb Natapov ++ 2002 Greg Ungerer ++ 2007-2009 Hervé Poussineau ++ 2005,2007,2008 IBM Corporation ++ 2008 IBM Corporation ++ 2006 Igor Kovalenko ++ 2006 InnoTek Systemberatung GmbH ++ 1999-2008 Intel Corporation ++ 2009 Isaku Yamahata ++ 2003-2004 James Yonan ++ 2008 Jan Kiszka ++ 2006 Joachim Henke ++ 2003-2007 Jocelyn Mayer ++ 2004,2005 Johannes E. Schindelin ++ 2005 Julian Chesterfield and Andrew Warfield. ++ 2008 Kamala Narasimhan ++ 1998 Kenneth Albanowski ++ 2008 Kevin Wolf ++ 2009 Kevin Wolf ++ 2009 Laurent Vivier ++ 2007-2008 Lauro Ramos Venancio ++ 2000,2001 Lineo, by David McCullough ++ 1991,1992,1996 Linus Torvalds ++ 2006 Lonnie Mendez ++ 2008 Lubomir Rintel ++ 2004,2007 Magnus Damm ++ 2004 Makoto Suzuki (suzu) ++ 2002-2006 Marcel Holtmann ++ 2006 Marius Groeger (FPU operations) ++ 2007 Marko Kohtala ++ 2002-2003 Maxim Krasnyansky ++ 2008 Max Krasnyansky ++ 2005,2008 Mike Kronenberg ++ 2007 MontaVista Software, Inc ++ 2007 Neocleus Corporation. ++ 2007-2008 Nokia Corporation ++ 2001 OKTET Ltd., St.-Petersburg, Russia ++ 2006-2008 Openedhand Ltd. ++ 2007-2008 OpenMoko, Inc. ++ 1996 Paul Mackerras. ++ 2008 Paul Mundt ++ 2006 Pierre d'Herbemont ++ 2000-2001 Qualcomm Incorporated ++ 2006-2008 Qumranet Technologies ++ 1997-1999,2001,2009 Red Hat, Inc. ++ 1988,1989,1990,1991,1992 Richard Outerbridge ++ 2007 Robert Reif ++ 1998-2004 Samuel Rydh (samuel@ibrium.se) ++ 2005 Samuel Tardieu ++ 2007,2008 Samuel Thibault ++ 2008 Semihalf ++ 2008 Shin-ichiro KAWASAKI ++ 2002 SnapGear, by Paul Dale ++ 2006-2007 Stefan Weil ++ 2008 Takashi YOSHII ++ 1999,2000 Tatsuyuki Satoh , MultiArcadeMachineEmurator development ++ 1993 Theodore Ts'o ++ 2006,2007 Thiemo Seufer ++ 2003 Thomas M. Ogrisegg ++ 2006 Thomas Sailer ++ 1998-2001,2003 Thomas Sailer (t.sailer@alumni.ethz.ch) ++ 2006,2007 Thorsten Zitterell ++ 2000-2007 Tibor "TS" Schütz ++ 2008 TJ ++ 2002-2005 Vassili Karpov (malc) ++ 2005 Vassili Karpov (malc) ++ 2007 Vladimir Ananiev ++ 2006 XenSource ++ ++The Debian packaging is: ++ ++ Copyright (C) 2008-2010 Bastian Blank ++ ++you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 2 of the License, or ++(at your option) any later version. ++ ++The following parts are subject of a different license: ++* tools/firmware/vgabios ++* tools/libaio ++* tools/libxen ++* tools/xenstat/libxenstat ++* tools/xenstore ++ ++ This package is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ This package is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see . ++ ++On Debian systems, the complete text of the GNU Lesser General ++Public License can be found in "/usr/share/common-licenses/LGPL-2". ++ ++Files in xen/include/public are subject to the following license: ++ ++ Permission is hereby granted, free of charge, to any person obtaining a ++ copy of this software and associated documentation files (the "Software"), ++ to deal in the Software without restriction, including without limitation ++ the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ and/or sell copies of the Software, and to permit persons to whom the ++ Software is furnished to do so, subject to the following conditions: ++ ++ The above copyright notice and this permission notice shall be included in ++ all copies or substantial portions of the Software. ++ ++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++ DEALINGS IN THE SOFTWARE. ++ ++Files in extra/mini-os are subject to the following license: ++ ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions are met: ++ 1. Redistributions of source code must retain the above copyright notice, ++ this list of conditions and the following disclaimer. ++ 2. Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in the ++ documentation and/or other materials provided with the distribution. ++ ++ THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND ++ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++ ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE ++ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++ SUCH DAMAGE. ++ ++Files in tools/vtpm_manager are subject to the following license: ++ ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions ++ are met: ++ ++ * Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++ * Redistributions in binary form must reproduce the above ++ copyright notice, this list of conditions and the following ++ disclaimer in the documentation and/or other materials provided ++ with the distribution. ++ * Neither the name of Intel Corporation nor the names of its ++ contributors may be used to endorse or promote products derived ++ from this software without specific prior written permission. ++ ++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS ++ FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ++ COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, ++ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ++ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR ++ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ++ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ++ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED ++ OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++File tools/python/test.py is subject to the following license: ++ ++ This software is Copyright (c) Zope Corporation (tm) and ++ Contributors. All rights reserved. ++ ++ This license has been certified as open source. It has also ++ been designated as GPL compatible by the Free Software ++ Foundation (FSF). ++ ++ Redistribution and use in source and binary forms, with or ++ without modification, are permitted provided that the ++ following conditions are met: ++ ++ 1. Redistributions in source code must retain the above ++ copyright notice, this list of conditions, and the following ++ disclaimer. ++ ++ 2. Redistributions in binary form must reproduce the above ++ copyright notice, this list of conditions, and the following ++ disclaimer in the documentation and/or other materials ++ provided with the distribution. ++ ++ 3. The name Zope Corporation (tm) must not be used to ++ endorse or promote products derived from this software ++ without prior written permission from Zope Corporation. ++ ++ 4. The right to distribute this software or to use it for ++ any purpose does not give you the right to use Servicemarks ++ (sm) or Trademarks (tm) of Zope Corporation. Use of them is ++ covered in a separate agreement (see ++ http://www.zope.com/Marks). ++ ++ 5. If any files are modified, you must cause the modified ++ files to carry prominent notices stating that you changed ++ the files and the date of any change. ++ ++ Disclaimer ++ ++ THIS SOFTWARE IS PROVIDED BY ZOPE CORPORATION ``AS IS'' ++ AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT ++ NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY ++ AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN ++ NO EVENT SHALL ZOPE CORPORATION OR ITS CONTRIBUTORS BE ++ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ++ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; ++ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN ++ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE ++ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH ++ DAMAGE. ++ ++ This software consists of contributions made by Zope ++ Corporation and many individuals on behalf of Zope ++ Corporation. Specific attributions are listed in the ++ accompanying credits file. ++ ++Files in tools/python/logging are subject to the following license: ++ ++ Copyright (C) 2001-2004 by Vinay Sajip. All Rights Reserved. ++ ++ Permission to use, copy, modify, and distribute this software and its ++ documentation for any purpose and without fee is hereby granted, ++ provided that the above copyright notice appear in all copies and that ++ both that copyright notice and this permission notice appear in ++ supporting documentation, and that the name of Vinay Sajip ++ not be used in advertising or publicity pertaining to distribution ++ of the software without specific, written prior permission. ++ ++ VINAY SAJIP DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ++ ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ++ VINAY SAJIP BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ++ ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ++ AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR ++ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ diff --cc debian/lib/python/debian_xen/__init__.py index 0000000000,0000000000..5ef35f95dd new file mode 100644 --- /dev/null +++ b/debian/lib/python/debian_xen/__init__.py @@@ -1,0 -1,0 +1,19 @@@ ++def _setup(): ++ import os.path, sys ++ version = None ++ rules = os.path.join(__path__[0], "../../../rules.defs") ++ f = open(rules) ++ for l in f: ++ l = l.strip().split() ++ if l[0] == 'KERNELVERSION': ++ version = l[-1] ++ f.close() ++ if version is None: ++ raise RuntimeError("Can't find KERNELVERSION setting") ++ global support ++ support = '/usr/src/linux-support-%s' % version ++ if not os.path.exists(support): ++ raise RuntimeError("Can't find %s, please install the linux-support-%s package" % (support, version)) ++ sys.path.append('%s/lib/python' % support) ++ ++_setup() diff --cc debian/lib/python/debian_xen/debian.py index 0000000000,0000000000..f541494e9a new file mode 100644 --- /dev/null +++ b/debian/lib/python/debian_xen/debian.py @@@ -1,0 -1,0 +1,38 @@@ ++import re ++from debian_linux.debian import Version ++ ++ ++class VersionXen(Version): ++ _version_xen_rules = r""" ++^ ++(?P ++ \d+\.\d+ ++) ++(?: ++ \.\d+ ++ (?: ++ ~rc\d+ ++ )? ++ (?: ++ \+hg-\d+.[a-z0-9]+ ++ )? ++ (?: ++ ~pre\.\d{4,}\.\d{2}\.\d{2}(?:\b[-+0-9a-z])? ++ )? ++ | ++ ~hg-\d+.[a-z0-9]+ ++) ++- ++(?:[^-]+) ++$ ++""" ++ _version_xen_re = re.compile(_version_xen_rules, re.X) ++ ++ def __init__(self, version): ++ super(VersionXen, self).__init__(version) ++ match = self._version_xen_re.match(version) ++ if match is None: ++ raise ValueError("Invalid debian xen version") ++ d = match.groupdict() ++ self.xen_version = d['version'] ++ diff --cc debian/libxen-dev.install index 0000000000,0000000000..df5b859e4d new file mode 100644 --- /dev/null +++ b/debian/libxen-dev.install @@@ -1,0 -1,0 +1,40 @@@ ++usr/lib/*/libxenctrl.a ++usr/lib/*/libxenctrl.so ++usr/lib/*/libxenguest.a ++usr/lib/*/libxenguest.so ++usr/lib/*/libxenlight.a ++usr/lib/*/libxenlight.so ++usr/lib/*/libxenstore.a ++usr/lib/*/libxenstore.so ++usr/lib/*/libxlutil.a ++usr/lib/*/libxlutil.so ++usr/lib/*/libxencall.a ++usr/lib/*/libxencall.so ++usr/lib/*/libxenevtchn.a ++usr/lib/*/libxenevtchn.so ++usr/lib/*/libxenforeignmemory.a ++usr/lib/*/libxenforeignmemory.so ++usr/lib/*/libxengnttab.a ++usr/lib/*/libxengnttab.so ++usr/lib/*/libxentoollog.a ++usr/lib/*/libxentoollog.so ++usr/include/_libxl*.h ++usr/include/libxl*.h ++usr/include/xenctrl.h ++usr/include/xenguest.h ++usr/include/xenstore*.h ++usr/include/xenstore-compat/xs* usr/include ++usr/include/xentoollog.h ++usr/include/xen ++usr/lib/*/pkgconfig/*.pc ++# New headers in xen-4.8 ++#usr/include/fsimage_grub.h ++#usr/include/fsimage.h ++#usr/include/fsimage_plugin.h ++#usr/include/libxenvchan.h ++usr/include/xencall.h ++usr/include/xenctrl_compat.h ++usr/include/xenevtchn.h ++usr/include/xenforeignmemory.h ++usr/include/xengnttab.h ++usr/include/xenstat.h diff --cc debian/libxenstore3.0.install index 0000000000,0000000000..b0eecf5d65 new file mode 100644 --- /dev/null +++ b/debian/libxenstore3.0.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/*/libxenstore.so.* diff --cc debian/libxenstore3.0.symbols index 0000000000,0000000000..5b60ffdac6 new file mode 100644 --- /dev/null +++ b/debian/libxenstore3.0.symbols @@@ -1,0 -1,0 +1,46 @@@ ++libxenstore.so.3.0 libxenstore3.0 #MINVER# ++ expanding_buffer_ensure@Base 3.2.0 ++ sanitise_value@Base 3.2.0 ++ unsanitise_value@Base 3.2.0 ++ xprintf@Base 3.2.0 ++ xs_check_watch@Base 4.2~ ++ xs_close@Base 4.1.0~rc6 ++ xs_count_strings@Base 3.2.0 ++ xs_daemon_close@Base 3.2.0 ++ xs_daemon_destroy_postfork@Base 4.0.1~rc4 ++ xs_daemon_open@Base 3.2.0 ++ xs_daemon_open_readonly@Base 3.2.0 ++ xs_daemon_rootdir@Base 3.2.0 ++ xs_daemon_rundir@Base 3.2.0 ++ xs_daemon_socket@Base 3.2.0 ++ xs_daemon_socket_ro@Base 3.2.0 ++ xs_daemon_tdb@Base 3.2.0 ++ xs_debug_command@Base 3.2.0 ++ xs_directory@Base 3.2.0 ++ xs_domain_dev@Base 3.2.0 ++ xs_domain_open@Base 3.2.0 ++ xs_fileno@Base 3.2.0 ++ xs_get_domain_path@Base 3.2.0 ++ xs_get_permissions@Base 3.2.0 ++ xs_introduce_domain@Base 3.2.0 ++ xs_is_domain_introduced@Base 3.2.0 ++ xs_mkdir@Base 3.2.0 ++ xs_open@Base 4.1.0~rc6 ++ xs_path_is_subpath@Base 4.2~ ++ xs_perm_to_string@Base 3.2.0 ++ xs_read@Base 3.2.0 ++ xs_read_watch@Base 3.2.0 ++ xs_release_domain@Base 3.2.0 ++ xs_restrict@Base 4.1.0~rc6 ++ xs_resume_domain@Base 3.2.0 ++ xs_rm@Base 3.2.0 ++ xs_set_permissions@Base 3.2.0 ++ xs_set_target@Base 3.4.0 ++ xs_strings_to_perms@Base 3.2.0 ++ xs_suspend_evtchn_port@Base 3.4.0 ++ xs_transaction_end@Base 3.2.0 ++ xs_transaction_start@Base 3.2.0 ++ xs_unwatch@Base 3.2.0 ++ xs_watch@Base 3.2.0 ++ xs_write@Base 3.2.0 ++ xs_write_all@Base 3.2.0 diff --cc debian/patches/armv6.diff index 0000000000,0000000000..4c0f303a44 new file mode 100644 --- /dev/null +++ b/debian/patches/armv6.diff @@@ -1,0 -1,0 +1,20 @@@ ++Description: replace "dmb" with "mcr p15, #0, r0, c7, c10, #5" for armv6 ++Author: Peter Michael Green ++ ++Index: xen-4.6.0/tools/libxc/include/xenctrl.h ++=================================================================== ++--- xen-4.6.0.orig/tools/libxc/include/xenctrl.h +++++ xen-4.6.0/tools/libxc/include/xenctrl.h ++@@ -78,9 +78,9 @@ ++ #define xen_rmb() xen_barrier() ++ #define xen_wmb() xen_barrier() ++ #elif defined(__arm__) ++-#define xen_mb() asm volatile ("dmb" : : : "memory") ++-#define xen_rmb() asm volatile ("dmb" : : : "memory") ++-#define xen_wmb() asm volatile ("dmb" : : : "memory") +++#define xen_mb() asm volatile ("mcr p15, #0, r0, c7, c10, #5" : : : "memory") +++#define xen_rmb() asm volatile ("mcr p15, #0, r0, c7, c10, #5" : : : "memory") +++#define xen_wmb() asm volatile ("mcr p15, #0, r0, c7, c10, #5" : : : "memory") ++ #elif defined(__aarch64__) ++ #define xen_mb() asm volatile ("dmb sy" : : : "memory") ++ #define xen_rmb() asm volatile ("dmb sy" : : : "memory") diff --cc debian/patches/config-prefix.diff index 0000000000,0000000000..7891592f57 new file mode 100644 --- /dev/null +++ b/debian/patches/config-prefix.diff @@@ -1,0 -1,0 +1,30 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:45 +0200 ++X-Dgit-Generated: 4.8.1-1 a376dc60f2926c349685de141c3993c7d791a494 ++Subject: config-prefix.diff ++ ++Patch-Name: config-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/Config.mk +++++ xen-4.8.1/Config.mk ++@@ -82,7 +82,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 ++--- xen-4.8.1.orig/config/Paths.mk.in +++++ xen-4.8.1/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@ diff --cc debian/patches/rerun-autogen.sh-stretch index 0000000000,0000000000..a6507dcf9c new file mode 100644 --- /dev/null +++ b/debian/patches/rerun-autogen.sh-stretch @@@ -1,0 -1,0 +1,215 @@@ ++From: Ian Jackson ++Date: Fri, 28 Oct 2016 14:52:13 +0100 ++X-Dgit-Generated: 4.8.1-1 b1ceff30c4420ee49c49761e183b4ee2a66e3ed4 ++Subject: Rerun autogen.sh (stretch) ++ ++Using autoconf 2.69-10 (amd64) ++ ++Signed-off-by: Ian Jackson ++ ++--- ++ ++--- xen-4.8.1.orig/configure +++++ xen-4.8.1/configure ++@@ -641,6 +641,7 @@ infodir ++ docdir ++ oldincludedir ++ includedir +++runstatedir ++ localstatedir ++ sharedstatedir ++ sysconfdir ++@@ -717,6 +718,7 @@ datadir='${datarootdir}' ++ sysconfdir='${prefix}/etc' ++ sharedstatedir='${prefix}/com' ++ localstatedir='${prefix}/var' +++runstatedir='${localstatedir}/run' ++ includedir='${prefix}/include' ++ oldincludedir='/usr/include' ++ docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' ++@@ -969,6 +971,15 @@ do ++ | -silent | --silent | --silen | --sile | --sil) ++ silent=yes ;; ++ +++ -runstatedir | --runstatedir | --runstatedi | --runstated \ +++ | --runstate | --runstat | --runsta | --runst | --runs \ +++ | --run | --ru | --r) +++ ac_prev=runstatedir ;; +++ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ +++ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ +++ | --run=* | --ru=* | --r=*) +++ runstatedir=$ac_optarg ;; +++ ++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ++ ac_prev=sbindir ;; ++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ ++@@ -1106,7 +1117,7 @@ fi ++ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ ++ datadir sysconfdir sharedstatedir localstatedir includedir \ ++ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ ++- libdir localedir mandir +++ libdir localedir mandir runstatedir ++ do ++ eval ac_val=\$$ac_var ++ # Remove trailing slashes. ++@@ -1259,6 +1270,7 @@ Fine tuning of the installation director ++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data [PREFIX/var] +++ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] ++ --libdir=DIR object code libraries [EPREFIX/lib] ++ --includedir=DIR C header files [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc [/usr/include] ++--- xen-4.8.1.orig/docs/configure +++++ xen-4.8.1/docs/configure ++@@ -632,6 +632,7 @@ infodir ++ docdir ++ oldincludedir ++ includedir +++runstatedir ++ localstatedir ++ sharedstatedir ++ sysconfdir ++@@ -707,6 +708,7 @@ datadir='${datarootdir}' ++ sysconfdir='${prefix}/etc' ++ sharedstatedir='${prefix}/com' ++ localstatedir='${prefix}/var' +++runstatedir='${localstatedir}/run' ++ includedir='${prefix}/include' ++ oldincludedir='/usr/include' ++ docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' ++@@ -959,6 +961,15 @@ do ++ | -silent | --silent | --silen | --sile | --sil) ++ silent=yes ;; ++ +++ -runstatedir | --runstatedir | --runstatedi | --runstated \ +++ | --runstate | --runstat | --runsta | --runst | --runs \ +++ | --run | --ru | --r) +++ ac_prev=runstatedir ;; +++ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ +++ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ +++ | --run=* | --ru=* | --r=*) +++ runstatedir=$ac_optarg ;; +++ ++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ++ ac_prev=sbindir ;; ++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ ++@@ -1096,7 +1107,7 @@ fi ++ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ ++ datadir sysconfdir sharedstatedir localstatedir includedir \ ++ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ ++- libdir localedir mandir +++ libdir localedir mandir runstatedir ++ do ++ eval ac_val=\$$ac_var ++ # Remove trailing slashes. ++@@ -1249,6 +1260,7 @@ Fine tuning of the installation director ++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data [PREFIX/var] +++ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] ++ --libdir=DIR object code libraries [EPREFIX/lib] ++ --includedir=DIR C header files [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc [/usr/include] ++--- xen-4.8.1.orig/stubdom/configure +++++ xen-4.8.1/stubdom/configure ++@@ -659,6 +659,7 @@ infodir ++ docdir ++ oldincludedir ++ includedir +++runstatedir ++ localstatedir ++ sharedstatedir ++ sysconfdir ++@@ -748,6 +749,7 @@ datadir='${datarootdir}' ++ sysconfdir='${prefix}/etc' ++ sharedstatedir='${prefix}/com' ++ localstatedir='${prefix}/var' +++runstatedir='${localstatedir}/run' ++ includedir='${prefix}/include' ++ oldincludedir='/usr/include' ++ docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' ++@@ -1000,6 +1002,15 @@ do ++ | -silent | --silent | --silen | --sile | --sil) ++ silent=yes ;; ++ +++ -runstatedir | --runstatedir | --runstatedi | --runstated \ +++ | --runstate | --runstat | --runsta | --runst | --runs \ +++ | --run | --ru | --r) +++ ac_prev=runstatedir ;; +++ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ +++ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ +++ | --run=* | --ru=* | --r=*) +++ runstatedir=$ac_optarg ;; +++ ++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ++ ac_prev=sbindir ;; ++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ ++@@ -1137,7 +1148,7 @@ fi ++ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ ++ datadir sysconfdir sharedstatedir localstatedir includedir \ ++ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ ++- libdir localedir mandir +++ libdir localedir mandir runstatedir ++ do ++ eval ac_val=\$$ac_var ++ # Remove trailing slashes. ++@@ -1290,6 +1301,7 @@ Fine tuning of the installation director ++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data [PREFIX/var] +++ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] ++ --libdir=DIR object code libraries [EPREFIX/lib] ++ --includedir=DIR C header files [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc [/usr/include] ++--- xen-4.8.1.orig/tools/configure +++++ xen-4.8.1/tools/configure ++@@ -767,6 +767,7 @@ infodir ++ docdir ++ oldincludedir ++ includedir +++runstatedir ++ localstatedir ++ sharedstatedir ++ sysconfdir ++@@ -889,6 +890,7 @@ datadir='${datarootdir}' ++ sysconfdir='${prefix}/etc' ++ sharedstatedir='${prefix}/com' ++ localstatedir='${prefix}/var' +++runstatedir='${localstatedir}/run' ++ includedir='${prefix}/include' ++ oldincludedir='/usr/include' ++ docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' ++@@ -1141,6 +1143,15 @@ do ++ | -silent | --silent | --silen | --sile | --sil) ++ silent=yes ;; ++ +++ -runstatedir | --runstatedir | --runstatedi | --runstated \ +++ | --runstate | --runstat | --runsta | --runst | --runs \ +++ | --run | --ru | --r) +++ ac_prev=runstatedir ;; +++ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ +++ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ +++ | --run=* | --ru=* | --r=*) +++ runstatedir=$ac_optarg ;; +++ ++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ++ ac_prev=sbindir ;; ++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ ++@@ -1278,7 +1289,7 @@ fi ++ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ ++ datadir sysconfdir sharedstatedir localstatedir includedir \ ++ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ ++- libdir localedir mandir +++ libdir localedir mandir runstatedir ++ do ++ eval ac_val=\$$ac_var ++ # Remove trailing slashes. ++@@ -1431,6 +1442,7 @@ Fine tuning of the installation director ++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data [PREFIX/var] +++ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] ++ --libdir=DIR object code libraries [EPREFIX/lib] ++ --includedir=DIR C header files [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc [/usr/include] diff --cc debian/patches/series index 0000000000,0000000000..3ac225f567 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,29 @@@ ++rerun-autogen.sh-stretch ++version.diff ++config-prefix.diff ++tools-libfsimage-abiname.diff ++tools-libxc-abiname.diff ++tools-libxl-abiname.diff ++tools-xenstat-abiname.diff ++tools-rpath.diff ++tools-blktap2-prefix.diff ++tools-console-prefix.diff ++tools-libfsimage-prefix.diff ++tools-libxl-prefix.diff ++tools-misc-prefix.diff ++tools-pygrub-prefix.diff ++tools-python-prefix.diff ++tools-xcutils-rpath.diff ++tools-xenmon-prefix.diff ++tools-xenpaging-prefix.diff ++tools-xenpmd-prefix.diff ++tools-xenstat-prefix.diff ++tools-xenstore-prefix.diff ++tools-xentrace-prefix.diff ++tools-pygrub-remove-static-solaris-support ++tools-include-install.diff ++tools-xenmon-install.diff ++tools-xenstore-compatibility.diff ++ubuntu-tools-libs-abiname.diff ++toolstestsx86_emulator-pass--no-pie--fno ++armv6.diff diff --cc debian/patches/tools-blktap2-prefix.diff index 0000000000,0000000000..ebe8d8d9e7 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-blktap2-prefix.diff @@@ -1,0 -1,0 +1,145 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:53 +0200 ++X-Dgit-Generated: 4.8.1-1 ad82a5763c9d4ebeb72fa838c4abc77b72596370 ++Subject: tools-blktap2-prefix.diff ++ ++Patch-Name: tools-blktap2-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/blktap2/control/Makefile +++++ xen-4.8.1/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,39 +35,32 @@ OBJS = $(CTL_OBJS) tap-ctl.o ++ PICS = $(CTL_PICS) ++ ++ LIB_STATIC = $(LIBNAME).a ++-LIB_SHARED = $(LIBSONAME).$(MINOR) +++LIB_SHARED = $(LIBNAME).so ++ IBIN = tap-ctl ++ ++ all: build ++ ++ build: $(IBIN) $(LIB_STATIC) $(LIB_SHARED) ++ ++-$(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: $(IBIN) $(LIB_STATIC) $(LIB_SHARED) ++- $(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) ++ ++ clean: ++ rm -f $(OBJS) $(PICS) $(DEPS) $(IBIN) $(LIB_STATIC) $(LIB_SHARED) ++- rm -f $(LIBNAME).so $(LIBSONAME) ++ rm -f *~ ++ ++ distclean: clean ++--- xen-4.8.1.orig/tools/blktap2/vhd/Makefile +++++ xen-4.8.1/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 ++--- xen-4.8.1.orig/tools/blktap2/vhd/lib/Makefile +++++ xen-4.8.1/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,27 +44,22 @@ 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) ++ ++ clean: ++ rm -rf *.a *.so* *.o *.opic *~ $(DEPS) $(LIBVHD) diff --cc debian/patches/tools-console-prefix.diff index 0000000000,0000000000..2fd4b701c3 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-console-prefix.diff @@@ -1,0 -1,0 +1,30 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:54 +0200 ++X-Dgit-Generated: 4.8.1-1 54721627e1abd8f67827b3383ddfa6c174b572b9 ++Subject: tools-console-prefix.diff ++ ++Patch-Name: tools-console-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/console/Makefile +++++ xen-4.8.1/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 ++@@ -44,9 +45,7 @@ $(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) xenconsole xenconsoled $(DESTDIR)$(LIBEXEC_BIN) ++ ++ -include $(DEPS) diff --cc debian/patches/tools-include-install.diff index 0000000000,0000000000..c9ac375843 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-include-install.diff @@@ -1,0 -1,0 +1,27 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:30 +0200 ++X-Dgit-Generated: 4.8.1-1 732acd91e545566bca164b886afa82027df7c463 ++Subject: tools-include-install.diff ++ ++Patch-Name: tools-include-install.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/include/Makefile +++++ xen-4.8.1/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 diff --cc debian/patches/tools-libfsimage-abiname.diff index 0000000000,0000000000..58ee97bde3 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-libfsimage-abiname.diff @@@ -1,0 -1,0 +1,57 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:47 +0200 ++X-Dgit-Generated: 4.8.1-1 2a020aa59aec69c1d00f3fb8c86b188873e802ea ++Subject: tools-libfsimage-abiname.diff ++ ++Patch-Name: tools-libfsimage-abiname.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libfsimage/common/Makefile +++++ xen-4.8.1/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 ++ ++ 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) ++@@ -34,13 +29,8 @@ install: all ++ 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) ++ diff --cc debian/patches/tools-libfsimage-prefix.diff index 0000000000,0000000000..ff18e0f2fe new file mode 100644 --- /dev/null +++ b/debian/patches/tools-libfsimage-prefix.diff @@@ -1,0 -1,0 +1,47 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:55 +0200 ++X-Dgit-Generated: 4.8.1-1 0fc6ef9d31deed6668d7f18924664cbde155ea85 ++Subject: tools-libfsimage-prefix.diff ++ ++Patch-Name: tools-libfsimage-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libfsimage/Rules.mk +++++ xen-4.8.1/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 ++ ++--- xen-4.8.1.orig/tools/libfsimage/common/Makefile +++++ xen-4.8.1/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) diff --cc debian/patches/tools-libxc-abiname.diff index 0000000000,0000000000..d187292495 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-libxc-abiname.diff @@@ -1,0 -1,0 +1,96 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:48 +0200 ++X-Dgit-Generated: 4.8.1-1 45ad000e7e61a57a78bca482c464c78badbfeab5 ++Subject: tools-libxc-abiname.diff ++ ++Patch-Name: tools-libxc-abiname.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libxc/Makefile +++++ xen-4.8.1/tools/libxc/Makefile ++@@ -1,9 +1,6 @@ ++ XEN_ROOT = $(CURDIR)/../.. ++ include $(XEN_ROOT)/tools/Rules.mk ++ ++-MAJOR = 4.8 ++-MINOR = 0 ++- ++ ifeq ($(CONFIG_LIBXC_MINIOS),y) ++ # Save/restore of a domain is currently incompatible with a stubdom environment ++ override CONFIG_MIGRATE := n ++@@ -132,12 +129,12 @@ $(CTRL_LIB_OBJS) $(CTRL_PIC_OBJS): CFLAG ++ ++ 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) ++@@ -171,15 +168,13 @@ libs: $(LIB) ++ 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) ++ ++ .PHONY: TAGS ++@@ -211,22 +206,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_libxengntshr) $(LDLIBS_libxencall) $(LDLIBS_libxenforeignmemory) $(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_libxengntshr) $(LDLIBS_libxencall) $(LDLIBS_libxenforeignmemory) $(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) ++@@ -238,9 +229,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 = $(call zlib-options,l) +++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) ++ diff --cc debian/patches/tools-libxl-abiname.diff index 0000000000,0000000000..28e71f97b2 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-libxl-abiname.diff @@@ -1,0 -1,0 +1,88 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:49 +0200 ++X-Dgit-Generated: 4.8.1-1 b6860f8b5e4980eedd3e75e5e81be73343d92558 ++Subject: tools-libxl-abiname.diff ++ ++Patch-Name: tools-libxl-abiname.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libxl/Makefile +++++ xen-4.8.1/tools/libxl/Makefile ++@@ -5,12 +5,6 @@ ++ XEN_ROOT = $(CURDIR)/../.. ++ include $(XEN_ROOT)/tools/Rules.mk ++ ++-MAJOR = 4.8 ++-MINOR = 0 ++- ++-XLUMAJOR = 4.8 ++-XLUMINOR = 0 ++- ++ CFLAGS += -Werror -Wno-format-zero-length -Wmissing-declarations \ ++ -Wno-declaration-after-statement -Wformat-nonliteral ++ CFLAGS += -I. -fPIC ++@@ -258,29 +252,23 @@ _libxl_type%.h _libxl_type%_json.h _libx ++ $(call move-if-changed,__libxl_type$*_json.h,_libxl_type$*_json.h) ++ $(call move-if-changed,__libxl_type$*.c,_libxl_type$*.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 $^ ++@@ -298,7 +286,7 @@ testidl: testidl.o libxlutil.so libxenli ++ $(CC) $(LDFLAGS) -o $@ testidl.o libxlutil.so $(LDLIBS_libxenlight) $(LDLIBS_libxentoollog) $(APPEND_LDFLAGS) ++ ++ $(PKG_CONFIG): % : %.in Makefile ++- @sed -e 's/@@version@@/$(MAJOR).$(MINOR)/g' < $< > $@.new +++ @sed -e 's/@@version@@/$(PACKAGE_VERSION)/g' < $< > $@.new ++ @mv -f $@.new $@ ++ ++ .PHONY: install ++@@ -311,13 +299,11 @@ install: all ++ $(INSTALL_DIR) $(DESTDIR)$(PKG_INSTALLDIR) ++ $(INSTALL_PROG) xl $(DESTDIR)$(sbindir) ++ $(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) bash-completion $(DESTDIR)$(BASH_COMPLETION_DIR)/xl.sh diff --cc debian/patches/tools-libxl-prefix.diff index 0000000000,0000000000..a9d1639eb6 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-libxl-prefix.diff @@@ -1,0 -1,0 +1,53 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:57 +0200 ++X-Dgit-Generated: 4.8.1-1 0c590f711182ecc6c0aaee5fc0bf89f384c98fce ++Subject: tools-libxl-prefix.diff ++ ++Patch-Name: tools-libxl-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libxl/Makefile +++++ xen-4.8.1/tools/libxl/Makefile ++@@ -12,6 +12,8 @@ CFLAGS += -I. -fPIC ++ 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) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS) ++@@ -256,7 +258,7 @@ libxenlight.so: libxenlight-$(PACKAGE_VE ++ $(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) ++@@ -274,7 +276,7 @@ libxlutil.a: $(LIBXLU_OBJS) ++ $(AR) rcs libxlutil.a $^ ++ ++ xl: $(XL_OBJS) libxlutil.so libxenlight.so ++- $(CC) $(LDFLAGS) -o $@ $(XL_OBJS) libxlutil.so $(LDLIBS_libxenlight) $(LDLIBS_libxentoollog) -lyajl $(APPEND_LDFLAGS) +++ $(CC) $(LDFLAGS) $(LDFLAGS_XL) -o $@ $(XL_OBJS) libxlutil.so $(LDLIBS_libxenlight) $(LDLIBS_libxentoollog) -lyajl $(APPEND_LDFLAGS) ++ ++ test_%: test_%.o test_common.o libxlutil.so libxenlight_test.so ++ $(CC) $(LDFLAGS) -o $@ $^ $(filter-out %libxenlight.so, $(LDLIBS_libxenlight)) $(LDLIBS_libxentoollog) -lyajl $(APPEND_LDFLAGS) ++@@ -291,13 +293,12 @@ $(PKG_CONFIG): % : %.in Makefile ++ ++ .PHONY: install ++ install: all ++- $(INSTALL_DIR) $(DESTDIR)$(sbindir) ++ $(INSTALL_DIR) $(DESTDIR)$(libdir) ++ $(INSTALL_DIR) $(DESTDIR)$(includedir) ++ $(INSTALL_DIR) $(DESTDIR)$(BASH_COMPLETION_DIR) ++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN) ++ $(INSTALL_DIR) $(DESTDIR)$(PKG_INSTALLDIR) ++- $(INSTALL_PROG) xl $(DESTDIR)$(sbindir) +++ $(INSTALL_PROG) xl $(DESTDIR)$(LIBEXEC_BIN) ++ $(INSTALL_PROG) libxl-save-helper $(DESTDIR)$(LIBEXEC_BIN) ++ $(INSTALL_SHLIB) libxenlight-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir) ++ $(SYMLINK_SHLIB) libxenlight-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libxenlight.so diff --cc debian/patches/tools-misc-prefix.diff index 0000000000,0000000000..9666c00e7c new file mode 100644 --- /dev/null +++ b/debian/patches/tools-misc-prefix.diff @@@ -1,0 -1,0 +1,25 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:59 +0200 ++X-Dgit-Generated: 4.8.1-1 92bd9e6a61c01d45b42463d3097f87935167e731 ++Subject: tools-misc-prefix.diff ++ ++Patch-Name: tools-misc-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/misc/Makefile +++++ xen-4.8.1/tools/misc/Makefile ++@@ -54,12 +54,8 @@ 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_PRIVBIN) $(DESTDIR)$(LIBEXEC_BIN) +++ $(INSTALL_PYTHON_PROG) $(INSTALL_BIN) $(INSTALL_SBIN) $(INSTALL_PRIVBIN) $(DESTDIR)$(LIBEXEC_BIN) ++ ++ .PHONY: clean ++ clean: diff --cc debian/patches/tools-pygrub-prefix.diff index 0000000000,0000000000..4d6302a690 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-pygrub-prefix.diff @@@ -1,0 -1,0 +1,50 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:01 +0200 ++X-Dgit-Generated: 4.8.1-1 e11fc351a6d75288200f781c656599ec3547c484 ++Subject: tools-pygrub-prefix.diff ++ ++Patch-Name: tools-pygrub-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/pygrub/Makefile +++++ xen-4.8.1/tools/pygrub/Makefile ++@@ -16,11 +16,6 @@ install: all ++ CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \ ++ setup.py install $(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: clean ++ clean: ++--- xen-4.8.1.orig/tools/pygrub/setup.py +++++ xen-4.8.1/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"], ++--- xen-4.8.1.orig/tools/pygrub/src/pygrub +++++ xen-4.8.1/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 diff --cc debian/patches/tools-pygrub-remove-static-solaris-support index 0000000000,0000000000..a54cb9bd9c new file mode 100644 --- /dev/null +++ b/debian/patches/tools-pygrub-remove-static-solaris-support @@@ -1,0 -1,0 +1,83 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:29 +0200 ++X-Dgit-Generated: 4.8.1-1 00315ed8c451173d0d212d55a831023166f3b212 ++Subject: Remove static solaris support from pygrub ++ ++Patch-Name: tools-pygrub-remove-static-solaris-support ++ ++--- ++ ++--- xen-4.8.1.orig/tools/pygrub/src/pygrub +++++ xen-4.8.1/tools/pygrub/src/pygrub ++@@ -16,7 +16,6 @@ import os, sys, string, struct, tempfile ++ 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"]) diff --cc debian/patches/tools-python-prefix.diff index 0000000000,0000000000..7ff9212584 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-python-prefix.diff @@@ -1,0 -1,0 +1,33 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:02 +0200 ++X-Dgit-Generated: 4.8.1-1 5ea3aead5ce755e99c1e811dc3bdf74cec9e991f ++Subject: tools-python-prefix.diff ++ ++Patch-Name: tools-python-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/python/setup.py +++++ xen-4.8.1/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" ], diff --cc debian/patches/tools-rpath.diff index 0000000000,0000000000..34e0de218f new file mode 100644 --- /dev/null +++ b/debian/patches/tools-rpath.diff @@@ -1,0 -1,0 +1,20 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:51 +0200 ++X-Dgit-Generated: 4.8.1-1 31f508fde90e729a0f734dc00d0c75213f075a2e ++Subject: tools-rpath.diff ++ ++Patch-Name: tools-rpath.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/Rules.mk +++++ xen-4.8.1/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_LIBXENTOOLLOG = $(XEN_ROOT)/tools/libs/toollog ++ XEN_LIBXENEVTCHN = $(XEN_ROOT)/tools/libs/evtchn diff --cc debian/patches/tools-xcutils-rpath.diff index 0000000000,0000000000..3bf35f2c8e new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xcutils-rpath.diff @@@ -1,0 -1,0 +1,20 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:05 +0200 ++X-Dgit-Generated: 4.8.1-1 845c9126f103d039326ba1cc06575de8a2d32d39 ++Subject: tools-xcutils-rpath.diff ++ ++Patch-Name: tools-xcutils-rpath.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xcutils/Makefile +++++ xen-4.8.1/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 ++ diff --cc debian/patches/tools-xenmon-install.diff index 0000000000,0000000000..c915d96eff new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenmon-install.diff @@@ -1,0 -1,0 +1,22 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:31 +0200 ++X-Dgit-Generated: 4.8.1-1 75dded97d0701561959c2fab12f0328058078b40 ++Subject: tools-xenmon-install.diff ++ ++Patch-Name: tools-xenmon-install.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenmon/Makefile +++++ xen-4.8.1/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) diff --cc debian/patches/tools-xenmon-prefix.diff index 0000000000,0000000000..c9473e1147 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenmon-prefix.diff @@@ -1,0 -1,0 +1,34 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:06 +0200 ++X-Dgit-Generated: 4.8.1-1 3c1dc49f92bcdb9e031a419f3c0014b57fcb96a9 ++Subject: tools-xenmon-prefix.diff ++ ++Patch-Name: tools-xenmon-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenmon/Makefile +++++ xen-4.8.1/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,10 +30,10 @@ 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: clean ++ clean: diff --cc debian/patches/tools-xenpaging-prefix.diff index 0000000000,0000000000..9b3c12d1b8 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenpaging-prefix.diff @@@ -1,0 -1,0 +1,20 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:08 +0200 ++X-Dgit-Generated: 4.8.1-1 6b66a39ea6db832a88d94c4d8e256f77e08fe1a3 ++Subject: tools-xenpaging-prefix.diff ++ ++Patch-Name: tools-xenpaging-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenpaging/Makefile +++++ xen-4.8.1/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 ++ diff --cc debian/patches/tools-xenpmd-prefix.diff index 0000000000,0000000000..61fb3f4c2c new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenpmd-prefix.diff @@@ -1,0 -1,0 +1,22 @@@ ++From: Bastian Blank ++Date: Sat, 13 Dec 2014 19:37:02 +0100 ++X-Dgit-Generated: 4.8.1-1 abbd6a5b077ff2f14d6e715c7f342f02f3b78ef8 ++Subject: tools-xenpmd-prefix.diff ++ ++Patch-Name: tools-xenpmd-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenpmd/Makefile +++++ xen-4.8.1/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: diff --cc debian/patches/tools-xenstat-abiname.diff index 0000000000,0000000000..9bc647a4bc new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenstat-abiname.diff @@@ -1,0 -1,0 +1,63 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:50 +0200 ++X-Dgit-Generated: 4.8.1-1 a968429393f380a5bf1eab604bd1720f31369fcd ++Subject: tools-xenstat-abiname.diff ++ ++Patch-Name: tools-xenstat-abiname.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenstat/libxenstat/Makefile +++++ xen-4.8.1/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) $(LDLIB ++ LDLIBS-$(CONFIG_SunOS) += -lkstat ++ ++ .PHONY: all ++-all: $(LIB) $(SHLIB) $(SHLIB_LINKS) +++all: $(LIB) $(SHLIB) ++ ++ $(OBJECTS-y): src/_paths.h ++ ++@@ -50,19 +46,11 @@ $(SHLIB): $(OBJECTS-y) ++ $(CC) $(LDFLAGS) $(SONAME_FLAGS) $(SHLIB_LDFLAGS) -o $@ \ ++ $(OBJECTS-y) $(LDLIBS-y) $(APPEND_LDFLAGS) ++ ++-src/libxenstat.so.$(MAJOR): $(SHLIB) ++- $(MAKE_LINK) $( ++Date: Sat, 5 Jul 2014 11:47:09 +0200 ++X-Dgit-Generated: 4.8.1-1 fa062a38ebfa9a8d1e52ee698c72aff4cb39e969 ++Subject: tools-xenstat-prefix.diff ++ ++Patch-Name: tools-xenstat-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenstat/libxenstat/Makefile +++++ xen-4.8.1/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 ++@@ -48,9 +48,11 @@ $(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) ++ ++ PYLIB=bindings/swig/python/_xenstat.so ++ PYMOD=bindings/swig/python/xenstat.py ++--- xen-4.8.1.orig/tools/xenstat/xentop/Makefile +++++ xen-4.8.1/tools/xenstat/xentop/Makefile ++@@ -19,7 +19,9 @@ all install xentop: ++ else ++ ++ CFLAGS += -DGCC_PRINTF -Werror $(CFLAGS_libxenstat) +++LDFLAGS += $(call LDFLAGS_RPATH,../lib) ++ LDLIBS += $(LDLIBS_libxenstat) $(CURSES_LIBS) $(TINFO_LIBS) $(SOCKET_LIBS) -lm -lyajl +++LDLIBS += $(LDLIBS_libxenctrl) $(LDLIBS_libxenstore) ++ CFLAGS += -DHOST_$(XEN_OS) ++ ++ # Include configure output (config.h) ++@@ -31,8 +33,8 @@ 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 ++ ++ endif ++ diff --cc debian/patches/tools-xenstore-compatibility.diff index 0000000000,0000000000..fceb2c8b26 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenstore-compatibility.diff @@@ -1,0 -1,0 +1,53 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:36 +0200 ++X-Dgit-Generated: 4.8.1-1 e0deca5e873be2aeb99ad58aed95eaa9c7c8ce35 ++Subject: tools-xenstore-compatibility.diff ++ ++Patch-Name: tools-xenstore-compatibility.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xenstore/include/xenstore.h +++++ xen-4.8.1/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 ++--- xen-4.8.1.orig/tools/xenstore/xenstore_client.c +++++ xen-4.8.1/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: ++--- xen-4.8.1.orig/tools/xenstore/xs.c +++++ xen-4.8.1/tools/xenstore/xs.c ++@@ -281,17 +281,19 @@ struct xs_handle *xs_daemon_open_readonl ++ ++ 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()); diff --cc debian/patches/tools-xenstore-prefix.diff index 0000000000,0000000000..58d211b9c5 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xenstore-prefix.diff @@@ -1,0 -1,0 +1,57 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:12 +0200 ++X-Dgit-Generated: 4.8.1-1 dda6e65fe8f36391534f781ebdf0bc9f9e58192a ++Subject: tools-xenstore-prefix.diff ++ ++Patch-Name: tools-xenstore-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/helpers/Makefile +++++ xen-4.8.1/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 ++--- xen-4.8.1.orig/tools/xenstore/Makefile +++++ xen-4.8.1/tools/xenstore/Makefile ++@@ -20,6 +20,8 @@ LDFLAGS-$(CONFIG_SYSTEMD) += $(SYSTEMD_L ++ 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 ++ ++@@ -74,7 +76,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) $(SOCKET_LIBS) $(LDLIBS_xenstored) $(call LDFLAGS_RPATH,../lib) -o $@ $(APPEND_LDFLAGS) ++ ++ xenstored.a: $(XENSTORED_OBJS) ++ $(AR) cr $@ $^ ++@@ -127,13 +129,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} ; \ diff --cc debian/patches/tools-xentrace-prefix.diff index 0000000000,0000000000..cb9e178ec8 new file mode 100644 --- /dev/null +++ b/debian/patches/tools-xentrace-prefix.diff @@@ -1,0 -1,0 +1,38 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:47:14 +0200 ++X-Dgit-Generated: 4.8.1-1 bded2269fb168938a662711d0a632d9d644bfc30 ++Subject: tools-xentrace-prefix.diff ++ ++Patch-Name: tools-xentrace-prefix.diff ++ ++--- ++ ++--- xen-4.8.1.orig/tools/xentrace/Makefile +++++ xen-4.8.1/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,15 +24,9 @@ build: $(BIN) $(SBIN) $(LIBBIN) ++ ++ .PHONY: install ++ install: build ++- $(INSTALL_DIR) $(DESTDIR)$(bindir) ++- $(INSTALL_DIR) $(DESTDIR)$(sbindir) ++- [ -z "$(LIBBIN)" ] || $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN) ++-ifneq ($(BIN),) ++- $(INSTALL_PROG) $(BIN) $(DESTDIR)$(bindir) ++-endif ++- $(INSTALL_PROG) $(SBIN) $(DESTDIR)$(sbindir) ++- $(INSTALL_PYTHON_PROG) $(SCRIPTS) $(DESTDIR)$(bindir) ++- [ -z "$(LIBBIN)" ] || $(INSTALL_PROG) $(LIBBIN) $(DESTDIR)$(LIBEXEC_BIN) +++ $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN) +++ $(INSTALL_PROG) $(BIN) $(SBIN) $(LIBBIN) $(DESTDIR)$(LIBEXEC_BIN) +++ $(INSTALL_PYTHON_PROG) $(SCRIPTS) $(DESTDIR)$(LIBEXEC_BIN) ++ ++ .PHONY: clean ++ clean: diff --cc debian/patches/toolstestsx86_emulator-pass--no-pie--fno index 0000000000,0000000000..2cf58b506f new file mode 100644 --- /dev/null +++ b/debian/patches/toolstestsx86_emulator-pass--no-pie--fno @@@ -1,0 -1,0 +1,48 @@@ ++From: Ian Jackson ++Date: Tue, 1 Nov 2016 16:20:27 +0000 ++X-Dgit-Generated: 4.8.1-1 0b669a48e4ac450fded811b1ea297d644044d179 ++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 ++CC: Jan Beulich ++CC: Andrew Cooper ++ ++squash! tools/tests/x86_emulator: Pass -no-pie -fno-pic to gcc ++ ++Signed-off-by: Ian Jackson ++ ++--- ++ ++--- xen-4.8.1.orig/tools/tests/x86_emulator/Makefile +++++ xen-4.8.1/tools/tests/x86_emulator/Makefile ++@@ -45,6 +45,10 @@ x86_emulate/x86_emulate.c x86_emulate/x8 ++ ++ HOSTCFLAGS += $(CFLAGS_xeninclude) ++ +++ifeq ($(XEN_TARGET_ARCH),x86_32) +++HOSTCFLAGS += -no-pie -fno-pic +++endif +++ ++ x86_emulate.o: x86_emulate.c x86_emulate/x86_emulate.c x86_emulate/x86_emulate.h ++ $(HOSTCC) $(HOSTCFLAGS) -c -g -o $@ $< ++ diff --cc debian/patches/ubuntu-tools-libs-abiname.diff index 0000000000,0000000000..b992641bcd new file mode 100644 --- /dev/null +++ b/debian/patches/ubuntu-tools-libs-abiname.diff @@@ -1,0 -1,0 +1,213 @@@ ++From: Ubuntu Developers ++Date: Thu, 6 Oct 2016 14:24:46 +0100 ++X-Dgit-Generated: 4.8.1-1 a80895b1222bf96c423953a78171ca38ee847a9f ++Subject: ubuntu-tools-libs-abiname ++ ++ ++--- ++ ++--- xen-4.8.1.orig/tools/libs/call/Makefile +++++ xen-4.8.1/tools/libs/call/Makefile ++@@ -39,22 +39,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) $(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) $(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) ++ ++ .PHONY: TAGS ++@@ -64,7 +64,7 @@ TAGS: ++ .PHONY: clean ++ clean: ++ rm -rf *.rpm $(LIB) *~ $(DEPS) $(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 ++ ++ .PHONY: distclean ++--- xen-4.8.1.orig/tools/libs/evtchn/Makefile +++++ xen-4.8.1/tools/libs/evtchn/Makefile ++@@ -39,22 +39,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) $(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) $(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) ++ ++ .PHONY: TAGS ++@@ -64,7 +64,7 @@ TAGS: ++ .PHONY: clean ++ clean: ++ rm -rf *.rpm $(LIB) *~ $(DEPS) $(LIB_OBJS) $(PIC_OBJS) ++- rm -f libxenevtchn.so.$(MAJOR).$(MINOR) libxenevtchn.so.$(MAJOR) +++ rm -f libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR).$(MINOR) libxenevtchn-$(PACKAGE_VERSION).so.$(MAJOR) ++ rm -f headers.chk ++ ++ .PHONY: distclean ++--- xen-4.8.1.orig/tools/libs/foreignmemory/Makefile +++++ xen-4.8.1/tools/libs/foreignmemory/Makefile ++@@ -39,22 +39,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) $(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) $(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) ++ ++ .PHONY: TAGS ++@@ -64,7 +64,7 @@ TAGS: ++ .PHONY: clean ++ clean: ++ rm -rf *.rpm $(LIB) *~ $(DEPS) $(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 ++ ++ .PHONY: distclean ++--- xen-4.8.1.orig/tools/libs/gnttab/Makefile +++++ xen-4.8.1/tools/libs/gnttab/Makefile ++@@ -41,22 +41,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) $(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) $(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) ++ ++ .PHONY: TAGS ++@@ -66,7 +66,7 @@ TAGS: ++ .PHONY: clean ++ clean: ++ rm -rf *.rpm $(LIB) *~ $(DEPS) $(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 ++ ++ .PHONY: distclean ++--- xen-4.8.1.orig/tools/libs/toollog/Makefile +++++ xen-4.8.1/tools/libs/toollog/Makefile ++@@ -34,22 +34,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) ++ ++ .PHONY: TAGS ++@@ -59,7 +59,7 @@ TAGS: ++ .PHONY: clean ++ clean: ++ rm -rf *.rpm $(LIB) *~ $(DEPS) $(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 ++ ++ .PHONY: distclean diff --cc debian/patches/version.diff index 0000000000,0000000000..40b6015358 new file mode 100644 --- /dev/null +++ b/debian/patches/version.diff @@@ -1,0 -1,0 +1,148 @@@ ++From: Bastian Blank ++Date: Sat, 5 Jul 2014 11:46:43 +0200 ++X-Dgit-Generated: 4.8.1-1 adc50830f6c334569f54255310fc489d139d542f ++Subject: version ++ ++Patch-Name: version.diff ++ ++--- ++ ++--- xen-4.8.1.orig/xen/Makefile +++++ xen-4.8.1/xen/Makefile ++@@ -160,7 +160,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' \ ++@@ -171,9 +171,11 @@ include/xen/compile.h: include/xen/compi ++ -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 ++--- xen-4.8.1.orig/xen/common/kernel.c +++++ xen-4.8.1/xen/common/kernel.c ++@@ -252,8 +252,8 @@ DO(xen_version)(int cmd, XEN_GUEST_HANDL ++ ++ 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; ++--- xen-4.8.1.orig/xen/common/version.c +++++ xen-4.8.1/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 ""; ++--- xen-4.8.1.orig/xen/drivers/char/console.c +++++ xen-4.8.1/xen/drivers/char/console.c ++@@ -732,14 +732,11 @@ void __init console_init_preirq(void) ++ serial_set_rx_handler(sercon_handle, 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 ) ++ { ++--- xen-4.8.1.orig/xen/include/xen/compile.h.in +++++ xen-4.8.1/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 \ ++--- xen-4.8.1.orig/xen/include/xen/version.h +++++ xen-4.8.1/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); diff --cc debian/pycompat index 0000000000,0000000000..0cfbf08886 new file mode 100644 --- /dev/null +++ b/debian/pycompat @@@ -1,0 -1,0 +1,1 @@@ ++2 diff --cc debian/rules index 0000000000,0000000000..08c6f19c62 new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,70 @@@ ++#!/usr/bin/make -f ++ ++# Uncomment this to turn on verbose mode. ++#export DH_VERBOSE=1 ++ ++include /usr/share/dpkg/default.mk ++ ++SOURCE := $(shell dpkg-parsechangelog | sed -ne 's,^Source: *\(.*\)$$,\1,p') ++VERSION_BINNMU := $(shell echo "$(DEB_VERSION)" | sed -ne 's,.*\+b\(.*\)$$,\1,p') ++ ++include debian/rules.defs ++ ++setup: debian/control ++ dh_testdir ++ $(MAKE) -f debian/rules.gen setup_$(DEB_HOST_ARCH) ++ ++build: build-arch build-indep ++ ++build-arch: setup ++ dh_testdir ++ $(MAKE) -f debian/rules.gen build-arch_$(DEB_HOST_ARCH) ++ ++build-indep: setup ++ dh_testdir ++ $(MAKE) -f debian/rules.gen build-indep ++ ++maintainerclean: ++ rm -f debian/control* debian/rules.gen debian/xen-hypervisor-* debian/xen-utils-[0-9]* ++ ++clean: debian/control ++ dh_testdir ++ rm -rf $(BUILD_DIR) $(STAMPS_DIR) debian/lib/python/debian_xen/__pycache__ ++ dh_clean ++ ++binary-indep: ++ dh_testdir ++ $(MAKE) -f debian/rules.gen binary-indep ++ ++binary-arch: ++ dh_testdir ++ $(MAKE) -f debian/rules.gen binary-arch_$(DEB_HOST_ARCH) ++ ++binary: binary-indep binary-arch ++ ++CONTROL_FILES += debian/changelog debian/bin/gencontrol.py $(wildcard debian/templates/*.in) ++CONTROL_FILES += $(wildcard debian/arch/defines) $(wildcard debian/arch/*/defines) ++GENCONTROL = $(__MODULES_DIR)gencontrol.py ++debian/control debian/rules.gen: $(CONTROL_FILES) ++ifeq ($(wildcard debian/control.md5sum),) ++ $(MAKE) -f debian/rules debian/control-real ++else ifeq ($(VERSION_BINNMU),) ++ md5sum --check debian/control.md5sum --status || \ ++ $(MAKE) -f debian/rules debian/control-real ++else ++ grep -v debian/changelog debian/control.md5sum | md5sum --check - --status || \ ++ $(MAKE) -f debian/rules debian/control-real ++endif ++ ++debian/control-real: $(CONTROL_FILES) ++ debian/bin/gencontrol.py ++ md5sum $^ > debian/control.md5sum ++ @echo ++ @echo This target is made to fail intentionally, to make sure ++ @echo that it is NEVER run during the automated build. Please ++ @echo ignore the following error, the debian/control file has ++ @echo been generated SUCCESSFULLY. ++ @echo ++ exit 1 ++ ++.PHONY: clean build binary-indep binary-arch binary diff --cc debian/rules.defs index 0000000000,0000000000..830873ec06 new file mode 100644 --- /dev/null +++ b/debian/rules.defs @@@ -1,0 -1,0 +1,4 @@@ ++KERNELVERSION := 3.18.0-trunk ++BUILD_DIR = debian/build ++STAMPS_DIR = debian/stamps ++TEMPLATES_DIR = debian/templates diff --cc debian/rules.gen index 0000000000,0000000000..e6afd7f4fc new file mode 100644 --- /dev/null +++ b/debian/rules.gen @@@ -1,0 -1,0 +1,120 @@@ ++.NOTPARALLEL: ++binary-arch: binary-arch_amd64 binary-arch_arm64 binary-arch_armhf binary-arch_i386 ++binary-arch_amd64: binary-arch_amd64_none binary-arch_amd64_real ++binary-arch_amd64_none: binary-arch_amd64_none_amd64 binary-arch_amd64_none_real ++binary-arch_amd64_none_amd64:: binary-arch_amd64_none_amd64_real ++binary-arch_amd64_none_amd64:: ++ $(MAKE) -f debian/rules.real binary-arch-flavour ARCH='amd64' FEATURESET='none' FLAVOUR='amd64' IMAGE_SUFFIX='.gz' VERSION='4.8' XEN_ARCH='x86_64' ++ $(MAKE) -f debian/rules.real install-dummy DH_OPTIONS='-pxen-system-amd64' ARCH='amd64' FEATURESET='none' FLAVOUR='amd64' IMAGE_SUFFIX='.gz' VERSION='4.8' XEN_ARCH='x86_64' ++binary-arch_amd64_none_amd64_real: ++binary-arch_amd64_none_real: ++binary-arch_amd64_real:: ++ $(MAKE) -f debian/rules.real binary-arch-arch ARCH='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++binary-arch_arm64: binary-arch_arm64_none binary-arch_arm64_real ++binary-arch_arm64_none: binary-arch_arm64_none_arm64 binary-arch_arm64_none_real ++binary-arch_arm64_none_arm64:: binary-arch_arm64_none_arm64_real ++binary-arch_arm64_none_arm64:: ++ $(MAKE) -f debian/rules.real binary-arch-flavour ARCH='arm64' FEATURESET='none' FLAVOUR='arm64' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm64' ++ $(MAKE) -f debian/rules.real install-dummy DH_OPTIONS='-pxen-system-arm64' ARCH='arm64' FEATURESET='none' FLAVOUR='arm64' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm64' ++binary-arch_arm64_none_arm64_real: ++binary-arch_arm64_none_real: ++binary-arch_arm64_real:: ++ $(MAKE) -f debian/rules.real binary-arch-arch ARCH='arm64' VERSION='4.8' XEN_ARCH='arm64' ++binary-arch_armhf: binary-arch_armhf_none binary-arch_armhf_real ++binary-arch_armhf_none: binary-arch_armhf_none_armhf binary-arch_armhf_none_real ++binary-arch_armhf_none_armhf:: binary-arch_armhf_none_armhf_real ++binary-arch_armhf_none_armhf:: ++ $(MAKE) -f debian/rules.real binary-arch-flavour ARCH='armhf' FEATURESET='none' FLAVOUR='armhf' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm32' ++ $(MAKE) -f debian/rules.real install-dummy DH_OPTIONS='-pxen-system-armhf' ARCH='armhf' FEATURESET='none' FLAVOUR='armhf' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm32' ++binary-arch_armhf_none_armhf_real: ++binary-arch_armhf_none_real: ++binary-arch_armhf_real:: ++ $(MAKE) -f debian/rules.real binary-arch-arch ARCH='armhf' VERSION='4.8' XEN_ARCH='arm32' ++binary-arch_i386: binary-arch_i386_none binary-arch_i386_real ++binary-arch_i386_none: binary-arch_i386_none_amd64 binary-arch_i386_none_real ++binary-arch_i386_none_amd64:: binary-arch_i386_none_amd64_real ++binary-arch_i386_none_amd64:: ++ $(MAKE) -f debian/rules.real binary-arch-flavour ARCH='i386' FEATURESET='none' FLAVOUR='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++ $(MAKE) -f debian/rules.real install-dummy DH_OPTIONS='-pxen-system-amd64' ARCH='i386' FEATURESET='none' FLAVOUR='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++binary-arch_i386_none_amd64_real: ++binary-arch_i386_none_real: ++binary-arch_i386_real:: ++ $(MAKE) -f debian/rules.real binary-arch-arch ARCH='i386' VERSION='4.8' XEN_ARCH='x86_32' ++binary-indep:: ++ $(MAKE) -f debian/rules.real binary-indep VERSION='4.8' ++build-arch: build-arch_amd64 build-arch_arm64 build-arch_armhf build-arch_i386 ++build-arch_amd64: build-arch_amd64_none build-arch_amd64_real ++build-arch_amd64_none: build-arch_amd64_none_amd64 build-arch_amd64_none_real ++build-arch_amd64_none_amd64:: build-arch_amd64_none_amd64_real ++build-arch_amd64_none_amd64:: ++ $(MAKE) -f debian/rules.real build-arch-flavour ARCH='amd64' FEATURESET='none' FLAVOUR='amd64' IMAGE_SUFFIX='.gz' VERSION='4.8' XEN_ARCH='x86_64' ++build-arch_amd64_none_amd64_real: ++build-arch_amd64_none_real: ++build-arch_amd64_real:: ++ $(MAKE) -f debian/rules.real build-arch-arch ARCH='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++build-arch_arm64: build-arch_arm64_none build-arch_arm64_real ++build-arch_arm64_none: build-arch_arm64_none_arm64 build-arch_arm64_none_real ++build-arch_arm64_none_arm64:: build-arch_arm64_none_arm64_real ++build-arch_arm64_none_arm64:: ++ $(MAKE) -f debian/rules.real build-arch-flavour ARCH='arm64' FEATURESET='none' FLAVOUR='arm64' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm64' ++build-arch_arm64_none_arm64_real: ++build-arch_arm64_none_real: ++build-arch_arm64_real:: ++ $(MAKE) -f debian/rules.real build-arch-arch ARCH='arm64' VERSION='4.8' XEN_ARCH='arm64' ++build-arch_armhf: build-arch_armhf_none build-arch_armhf_real ++build-arch_armhf_none: build-arch_armhf_none_armhf build-arch_armhf_none_real ++build-arch_armhf_none_armhf:: build-arch_armhf_none_armhf_real ++build-arch_armhf_none_armhf:: ++ $(MAKE) -f debian/rules.real build-arch-flavour ARCH='armhf' FEATURESET='none' FLAVOUR='armhf' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm32' ++build-arch_armhf_none_armhf_real: ++build-arch_armhf_none_real: ++build-arch_armhf_real:: ++ $(MAKE) -f debian/rules.real build-arch-arch ARCH='armhf' VERSION='4.8' XEN_ARCH='arm32' ++build-arch_i386: build-arch_i386_none build-arch_i386_real ++build-arch_i386_none: build-arch_i386_none_amd64 build-arch_i386_none_real ++build-arch_i386_none_amd64:: build-arch_i386_none_amd64_real ++build-arch_i386_none_amd64:: ++ $(MAKE) -f debian/rules.real build-arch-flavour ARCH='i386' FEATURESET='none' FLAVOUR='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++build-arch_i386_none_amd64_real: ++build-arch_i386_none_real: ++build-arch_i386_real:: ++ $(MAKE) -f debian/rules.real build-arch-arch ARCH='i386' VERSION='4.8' XEN_ARCH='x86_32' ++build-indep:: ++ $(MAKE) -f debian/rules.real build-indep VERSION='4.8' ++setup: setup_amd64 setup_arm64 setup_armhf setup_i386 ++setup_amd64: setup_amd64_none setup_amd64_real ++setup_amd64_none: setup_amd64_none_amd64 setup_amd64_none_real ++setup_amd64_none_amd64:: setup_amd64_none_amd64_real ++setup_amd64_none_amd64:: ++ $(MAKE) -f debian/rules.real setup-flavour ARCH='amd64' FEATURESET='none' FLAVOUR='amd64' IMAGE_SUFFIX='.gz' VERSION='4.8' XEN_ARCH='x86_64' ++setup_amd64_none_amd64_real: ++setup_amd64_none_real: ++setup_amd64_real:: ++ $(MAKE) -f debian/rules.real setup-arch ARCH='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++setup_arm64: setup_arm64_none setup_arm64_real ++setup_arm64_none: setup_arm64_none_arm64 setup_arm64_none_real ++setup_arm64_none_arm64:: setup_arm64_none_arm64_real ++setup_arm64_none_arm64:: ++ $(MAKE) -f debian/rules.real setup-flavour ARCH='arm64' FEATURESET='none' FLAVOUR='arm64' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm64' ++setup_arm64_none_arm64_real: ++setup_arm64_none_real: ++setup_arm64_real:: ++ $(MAKE) -f debian/rules.real setup-arch ARCH='arm64' VERSION='4.8' XEN_ARCH='arm64' ++setup_armhf: setup_armhf_none setup_armhf_real ++setup_armhf_none: setup_armhf_none_armhf setup_armhf_none_real ++setup_armhf_none_armhf:: setup_armhf_none_armhf_real ++setup_armhf_none_armhf:: ++ $(MAKE) -f debian/rules.real setup-flavour ARCH='armhf' FEATURESET='none' FLAVOUR='armhf' IMAGE_SUFFIX='' VERSION='4.8' XEN_ARCH='arm32' ++setup_armhf_none_armhf_real: ++setup_armhf_none_real: ++setup_armhf_real:: ++ $(MAKE) -f debian/rules.real setup-arch ARCH='armhf' VERSION='4.8' XEN_ARCH='arm32' ++setup_i386: setup_i386_none setup_i386_real ++setup_i386_none: setup_i386_none_amd64 setup_i386_none_real ++setup_i386_none_amd64:: setup_i386_none_amd64_real ++setup_i386_none_amd64:: ++ $(MAKE) -f debian/rules.real setup-flavour ARCH='i386' FEATURESET='none' FLAVOUR='amd64' VERSION='4.8' XEN_ARCH='x86_64' ++setup_i386_none_amd64_real: ++setup_i386_none_real: ++setup_i386_real:: ++ $(MAKE) -f debian/rules.real setup-arch ARCH='i386' VERSION='4.8' XEN_ARCH='x86_32' diff --cc debian/rules.real index 0000000000,0000000000..1ed72005b2 new file mode 100644 --- /dev/null +++ b/debian/rules.real @@@ -1,0 -1,0 +1,268 @@@ ++include /usr/share/dpkg/default.mk ++ ++export DH_OPTIONS ++ ++setup_env := env -u ARCH -u FLAVOUR -u VERSION -u MAKEFLAGS ++ ++MAKE_CLEAN = $(setup_env) $(MAKE) V=1 ++MAKE_SELF = $(MAKE) -f debian/rules.real ++ ++include debian/rules.defs ++ ++stamp = [ -d $(dir $@) ] || mkdir $(dir $@); touch $@ ++ ++binary-arch-arch: install-libxen_$(ARCH) ++binary-arch-arch: install-libxen-dev_$(ARCH) ++binary-arch-arch: install-libxenstore_$(ARCH) ++binary-arch-arch: install-utils_$(ARCH) ++binary-arch-arch: install-xenstore-utils_$(ARCH) ++binary-arch-flavour: install-hypervisor_$(ARCH)_$(FLAVOUR) ++ ++binary-indep: install-utils-common ++ ++build-arch-arch: $(STAMPS_DIR)/build-utils_$(ARCH) ++build-arch-flavour: $(STAMPS_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR) ++ ++build-indep: $(STAMPS_DIR)/build-docs ++ ++setup-arch: $(STAMPS_DIR)/setup-utils_$(ARCH) ++setup-flavour: $(STAMPS_DIR)/setup-hypervisor_$(ARCH)_$(FLAVOUR) ++ ++$(STAMPS_DIR)/setup-docs: SOURCE_FILES = $(filter-out debian, $(wildcard *)) ++$(STAMPS_DIR)/setup-docs: DIR=$(BUILD_DIR)/build-docs ++$(STAMPS_DIR)/setup-docs: ++ @rm -rf $(DIR) ++ mkdir -p $(DIR) ++ cp -al $(SOURCE_FILES) $(DIR) ++ cp --remove-destination /usr/share/misc/config.guess /usr/share/misc/config.sub $(DIR) ++ cd $(DIR); \ ++ WGET=/bin/false \ ++ ./configure --disable-stubdom --disable-xen --prefix=/usr ++ @$(stamp) ++ ++$(STAMPS_DIR)/setup-hypervisor_$(ARCH)_$(FLAVOUR): SOURCE_FILES = $(filter-out debian, $(wildcard *)) ++$(STAMPS_DIR)/setup-hypervisor_$(ARCH)_$(FLAVOUR): DIR=$(BUILD_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR) ++$(STAMPS_DIR)/setup-hypervisor_$(ARCH)_$(FLAVOUR): ++ @rm -rf $(DIR) ++ mkdir -p $(DIR) ++ cp -al $(SOURCE_FILES) $(DIR) ++ echo "XEN_VENDORVERSION := $(EXTRAVERSION)" > $(DIR)/xen/xen-version ++ @$(stamp) ++ ++$(STAMPS_DIR)/setup-utils_$(ARCH): SOURCE_FILES = $(filter-out debian, $(wildcard *)) ++$(STAMPS_DIR)/setup-utils_$(ARCH): DIR=$(BUILD_DIR)/build-utils_$(ARCH) ++$(STAMPS_DIR)/setup-utils_$(ARCH): ++ @rm -rf $(DIR) ++ mkdir -p $(DIR) ++ cp -al $(SOURCE_FILES) $(DIR) ++ cp --remove-destination /usr/share/misc/config.guess /usr/share/misc/config.sub $(DIR) ++ cd $(DIR); \ ++ WGET=/bin/false \ ++ ./configure \ ++ --disable-docs --disable-stubdom --disable-xen \ ++ --prefix=/usr \ ++ --includedir=/usr/include \ ++ --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \ ++ --mandir=/usr/share/man \ ++ --infodir=/usr/share/info \ ++ --sysconfdir=/etc \ ++ --localstatedir=/var \ ++ --with-libexec-leaf-dir=xen-$(VERSION) \ ++ --disable-blktap1 \ ++ --disable-blktap2 \ ++ --disable-ocamltools \ ++ --disable-qemu-traditional --disable-rombios \ ++ --with-system-qemu=/usr/bin/qemu-system-i386 \ ++ --with-system-seabios=/usr/share/seabios/bios-256k.bin ++ @$(stamp) ++ ++$(STAMPS_DIR)/build-docs: DIR=$(BUILD_DIR)/build-docs ++$(STAMPS_DIR)/build-docs: $(STAMPS_DIR)/setup-docs ++ +$(MAKE_CLEAN) -C $(DIR)/docs ++ touch $@ ++ ++# Adding LANG=C.UTF-8 to the build environment to work around a bug in grep ++# which causes it to switch into binary mode in the middle of a file. ++# (see http://bugs.launchpad.net/bugs/1547466) ++ ++$(STAMPS_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR): DIR=$(BUILD_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR) ++$(STAMPS_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR): $(STAMPS_DIR)/setup-hypervisor_$(ARCH)_$(FLAVOUR) ++ +$(MAKE_CLEAN) -C $(DIR)/xen \ ++ XEN_COMPILE_ARCH=$(XEN_ARCH) \ ++ XEN_TARGET_ARCH=$(XEN_ARCH) \ ++ LANG=C.UTF-8 ++ touch $@ ++ ++$(STAMPS_DIR)/build-utils_$(ARCH) \ ++$(STAMPS_DIR)/install-utils_$(ARCH): CONFIG = \ ++ debug=n \ ++ XEN_COMPILE_ARCH=$(XEN_ARCH) \ ++ XEN_TARGET_ARCH=$(XEN_ARCH) \ ++ EXTRA_CFLAGS_XEN_TOOLS="$(CFLAGS)" \ ++ APPEND_CPPFLAGS="$(CPPFLAGS)" \ ++ APPEND_LDFLAGS="$(LDFLAGS)" \ ++ OCAMLDESTDIR=$(CURDIR)/$(BUILD_DIR)/install-utils_$(ARCH)/$(OCAML_STDLIB_DIR) \ ++ PYTHON=$(shell pyversions -r) \ ++ LANG=C.UTF-8 ++ ++$(STAMPS_DIR)/build-utils_$(ARCH): DIR=$(BUILD_DIR)/build-utils_$(ARCH) ++$(STAMPS_DIR)/build-utils_$(ARCH): $(STAMPS_DIR)/setup-utils_$(ARCH) ++ +$(MAKE_CLEAN) -C $(DIR)/tools $(CONFIG) ++ touch $@ ++ ++$(STAMPS_DIR)/install-utils_$(ARCH): DIR = $(BUILD_DIR)/build-utils_$(ARCH) ++$(STAMPS_DIR)/install-utils_$(ARCH): INSTALL_DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++$(STAMPS_DIR)/install-utils_$(ARCH): $(STAMPS_DIR)/build-utils_$(ARCH) ++ @rm -rf $(INSTALL_DIR) ++ mkdir -p $(INSTALL_DIR)/$(OCAML_DLL_DIR) ++ +$(MAKE_CLEAN) -C $(DIR)/tools install DESTDIR=$(CURDIR)/$(INSTALL_DIR) $(CONFIG) ++ifneq ($(filter i386 amd64,$(ARCH)),) ++ # hvmloader ++ strip --remove-section=.comment --remove-section=.note $(INSTALL_DIR)/usr/lib/xen*/boot/* ++endif ++ touch $@ ++ ++$(STAMPS_DIR)/install-utils-common: DIR = $(BUILD_DIR)/build-docs ++$(STAMPS_DIR)/install-utils-common: INSTALL_DIR = $(BUILD_DIR)/install-utils-common ++$(STAMPS_DIR)/install-utils-common: export DESTDIR = $(CURDIR)/$(INSTALL_DIR) ++$(STAMPS_DIR)/install-utils-common: $(STAMPS_DIR)/build-docs ++ @rm -rf $(INSTALL_DIR) ++ +$(MAKE_CLEAN) -C $(SOURCE_DIR)/tools/examples install-configs ++ +$(MAKE_CLEAN) -C $(SOURCE_DIR)/tools/hotplug/common install-scripts ++ +$(MAKE_CLEAN) -C $(SOURCE_DIR)/tools/hotplug/Linux install-scripts ++ +$(MAKE_CLEAN) -C debian/scripts install ++ touch $@ ++ ++install-base: ++ dh_installchangelogs -XChangelog ++ dh_installdirs ++ dh_installdocs ++ dh_installexamples ++ dh_compress ++ dh_fixperms ++ dh_installdeb ++ dh_gencontrol -- $(GENCONTROL_ARGS) ++ dh_md5sums ++ dh_builddeb ++ ++install-dummy: ++ dh_testdir ++ dh_testroot ++ dh_prep ++ +$(MAKE_SELF) install-base ++ ++install-hypervisor_$(ARCH)_$(FLAVOUR): DIR=$(BUILD_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR) ++install-hypervisor_$(ARCH)_$(FLAVOUR): PACKAGE_NAME = xen-hypervisor-$(VERSION)-$(FLAVOUR) ++install-hypervisor_$(ARCH)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-hypervisor_$(ARCH)_$(FLAVOUR): $(STAMPS_DIR)/build-hypervisor_$(ARCH)_$(FLAVOUR) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ dh_installdirs boot ++ # FIXME: Think of better solution (grub used for other arches?) ++ dh_installdirs etc/default/grub.d ++ install -D -m644 debian/xen-hypervisor-$(VERSION).xen.cfg \ ++ debian/$(PACKAGE_NAME)/etc/default/grub.d/xen.cfg ++ dh_install debian/templates/xen-hypervisor.bug/* usr/share/bug/$(PACKAGE_NAME) ++ cp $(DIR)/xen/xen$(IMAGE_SUFFIX) debian/$(PACKAGE_NAME)/boot/xen-$(VERSION)-$(FLAVOUR)$(IMAGE_SUFFIX) ++ifeq ($(ARCH),amd64) ++ cp $(DIR)/xen/xen.efi debian/$(PACKAGE_NAME)/boot/xen-$(VERSION)-$(FLAVOUR).efi ++endif ++ +$(MAKE_SELF) install-base ++ ++install-libxen_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++install-libxen_$(ARCH): PACKAGE_NAME = libxen-$(VERSION) ++install-libxen_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-libxen_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH) install-libxenstore_$(ARCH) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ dh_install --sourcedir=$(DIR) usr/lib/*/lib*-$(VERSION).so* ++ dh_install debian/templates/libxen.bug/* usr/share/bug/$(PACKAGE_NAME) ++ dh_strip ++ dh_makeshlibs -V ++ dh_shlibdeps ++ +$(MAKE_SELF) install-base ++ ++install-libxen-dev_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++install-libxen-dev_$(ARCH): PACKAGE_NAME = libxen-dev ++install-libxen-dev_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-libxen-dev_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ # Move pkgconfig into a multiarch compliant place ++ mv $(DIR)/usr/share/pkgconfig $(DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/ ++ dh_install --sourcedir=$(DIR) ++ dh_strip ++ dh_shlibdeps ++ +$(MAKE_SELF) install-base ++ ++install-libxenstore_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++install-libxenstore_$(ARCH): PACKAGE_NAME = libxenstore3.0 ++install-libxenstore_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-libxenstore_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ dh_install --sourcedir=$(DIR) ++ dh_strip ++ dh_makeshlibs -V ++ dh_shlibdeps ++ +$(MAKE_SELF) install-base ++ ++install-utils_$(ARCH): SOURCE_DIR = $(BUILD_DIR)/build-utils_$(ARCH) ++install-utils_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++install-utils_$(ARCH): PACKAGE_NAME = xen-utils-$(VERSION) ++install-utils_$(ARCH): PACKAGE_DIR = debian/$(PACKAGE_NAME) ++install-utils_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-utils_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH) install-libxen_$(ARCH) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ install -D -m644 debian/xen-utils.NEWS $(PACKAGE_DIR)/usr/share/doc/$(PACKAGE_NAME)/NEWS ++ install -D -m644 debian/xen-utils.README.Debian $(PACKAGE_DIR)/usr/share/doc/$(PACKAGE_NAME)/README.Debian ++ dh_install --sourcedir=$(DIR) usr/lib/xen-$(VERSION) ++ dh_install debian/templates/xen-utils.bug/* usr/share/bug/$(PACKAGE_NAME) ++ dh_lintian ++ ( echo -n "misc:Built-Using="; dpkg-query -f='$${source:Package} (= $${source:Version}), ' -W ipxe-qemu seabios; echo ) >> debian/$(PACKAGE_NAME).substvars ++ dh_python2 -V$(shell pyversions -rv) /usr/lib/xen-$(VERSION) ++ dh_strip ++ dh_makeshlibs -V ++ dh_shlibdeps ++ +$(MAKE_SELF) install-base ++ ++install-utils-common: SOURCE_DIR = $(BUILD_DIR)/build-docs ++install-utils-common: DIR = $(BUILD_DIR)/install-utils-common ++install-utils-common: PACKAGE_NAME = xen-utils-common ++install-utils-common: DH_OPTIONS = -p$(PACKAGE_NAME) ++install-utils-common: $(STAMPS_DIR)/install-utils-common ++ dh_testdir ++ dh_testroot ++ dh_prep ++ dh_install -X .svn --sourcedir=$(DIR) ++ dh_installinit --name xen -- defaults 20 21 ++ dh_installinit --name xend ++ dh_installinit --name xendomains --no-start -- defaults 21 20 ++ dh_installman \ ++ $(SOURCE_DIR)/docs/man1/* \ ++ $(SOURCE_DIR)/docs/man5/* \ ++ $(SOURCE_DIR)/docs/man8/* ++ dh_installdocs $(SOURCE_DIR)/docs/txt/misc ++ dh_link ++ dh_ucf ++ +$(MAKE_SELF) install-base ++ ++install-xenstore-utils_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH) ++install-xenstore-utils_$(ARCH): PACKAGE_NAME = xenstore-utils ++install-xenstore-utils_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME) ++install-xenstore-utils_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH) install-libxenstore_$(ARCH) ++ dh_testdir ++ dh_testroot ++ dh_prep ++ dh_install --sourcedir=$(DIR) ++ dh_strip ++ dh_shlibdeps ++ +$(MAKE_SELF) install-base ++ ++# vim: filetype=make diff --cc debian/scripts/Makefile index 0000000000,0000000000..22d9a8241e new file mode 100644 --- /dev/null +++ b/debian/scripts/Makefile @@@ -1,0 -1,0 +1,52 @@@ ++ETC_SCRIPTS = \ ++ qemu-ifup ++ ++GLOBAL_SCRIPTS = \ ++ xen ++ ++GLOBAL_TOOLSTACK_LINKS = \ ++ xl \ ++ xm ++ ++GLOBAL_TOOLSTACK_WRAPPER = xen-toolstack-wrapper ++ ++GLOBAL_UTILS_LINKS = \ ++ xenperf \ ++ xenpm \ ++ xentop \ ++ xentrace \ ++ xentrace_format \ ++ xentrace_setmask \ ++ xentrace_setsize ++ ++GLOBAL_UTILS_WRAPPER = xen-utils-wrapper ++ ++PRIVATE_SCRIPTS = \ ++ xen-dir \ ++ xen-init-list \ ++ xen-init-name \ ++ xen-toolstack \ ++ xen-version \ ++ $(GLOBAL_TOOLSTACK_WRAPPER) \ ++ $(GLOBAL_UTILS_WRAPPER) ++ ++ETC_SCRIPTS_DIR = /etc/xen/scripts ++GLOBAL_SCRIPTS_DIR = /usr/sbin ++PRIVATE_SCRIPTS_DIR = /usr/lib/xen-common/bin ++ ++install: ++ install -d $(DESTDIR)$(ETC_SCRIPTS_DIR) ++ install $(ETC_SCRIPTS) $(DESTDIR)$(ETC_SCRIPTS_DIR) ++ install -d $(DESTDIR)$(GLOBAL_SCRIPTS_DIR) ++ install $(GLOBAL_SCRIPTS) $(DESTDIR)$(GLOBAL_SCRIPTS_DIR) ++ @for i in $(GLOBAL_TOOLSTACK_LINKS); do \ ++ echo ln -s $(PRIVATE_SCRIPTS_DIR)/$(GLOBAL_TOOLSTACK_WRAPPER) $(DESTDIR)$(GLOBAL_SCRIPTS_DIR)/$$i; \ ++ ln -s $(PRIVATE_SCRIPTS_DIR)/$(GLOBAL_TOOLSTACK_WRAPPER) $(DESTDIR)$(GLOBAL_SCRIPTS_DIR)/$$i || exit 1; \ ++ done ++ @for i in $(GLOBAL_UTILS_LINKS); do \ ++ echo ln -s $(PRIVATE_SCRIPTS_DIR)/$(GLOBAL_UTILS_WRAPPER) $(DESTDIR)$(GLOBAL_SCRIPTS_DIR)/$$i; \ ++ ln -s $(PRIVATE_SCRIPTS_DIR)/$(GLOBAL_UTILS_WRAPPER) $(DESTDIR)$(GLOBAL_SCRIPTS_DIR)/$$i || exit 1; \ ++ done ++ install -d $(DESTDIR)$(PRIVATE_SCRIPTS_DIR) ++ install $(PRIVATE_SCRIPTS) $(DESTDIR)$(PRIVATE_SCRIPTS_DIR) ++ diff --cc debian/scripts/qemu-ifup index 0000000000,0000000000..fce14b53d6 new file mode 100644 --- /dev/null +++ b/debian/scripts/qemu-ifup @@@ -1,0 -1,0 +1,13 @@@ ++#!/bin/sh ++ ++echo -c 'config qemu network with xen bridge for ' ++echo $* ++ ++# Initialise a dummy MAC address. We choose the numerically ++# largest non-broadcast address to prevent the address getting ++# stolen by an Ethernet bridge for STP purposes. ++# (FE:FF:FF:FF:FF:FF) ++ip link set $1 address fe:ff:ff:ff:ff:ff || true ++ ++ifconfig $1 0.0.0.0 up ++brctl addif $2 $1 diff --cc debian/scripts/xen index 0000000000,0000000000..a221e172d5 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen @@@ -1,0 -1,0 +1,6 @@@ ++#!/bin/sh -e ++ ++COMMAND="$(basename $0)" ++TOOLSTACK=$(. /usr/lib/xen-common/bin/xen-toolstack); RET=$?; [ $RET -eq 0 ] || exit $RET ++ ++exec "$TOOLSTACK" "$@" diff --cc debian/scripts/xen-dir index 0000000000,0000000000..32b5776cf3 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-dir @@@ -1,0 -1,0 +1,10 @@@ ++#!/bin/sh -e ++ ++VERSION=$(. /usr/lib/xen-common/bin/xen-version); RET=$?; [ $RET -eq 0 ] || exit $RET ++ ++if [ -d "/usr/lib/xen-$VERSION" ]; then ++ echo "/usr/lib/xen-$VERSION" ++else ++ echo "ERROR: Can't find version $VERSION of xen utils, bailing out!" >&2 ++ exit 127 ++fi diff --cc debian/scripts/xen-init-list index 0000000000,0000000000..99646ce1e5 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-init-list @@@ -1,0 -1,0 +1,73 @@@ ++#!/usr/bin/python ++ ++import json ++import re ++import sys ++import subprocess ++ ++ ++class SXPParser(object): ++ tokenizer_rules = r""" (?P \( ) | (?P \) ) | (?P \s+ ) | [^()^\s]+ """ ++ tokenizer_re = re.compile(tokenizer_rules, re.X) ++ ++ @classmethod ++ def loads(cls, input): ++ data = [] ++ stack = [] ++ for match in cls.tokenizer_re.finditer(input): ++ if match.group('open'): ++ stack.append([]) ++ elif match.group('close'): ++ top = stack.pop() ++ if stack: ++ stack[-1].append(top) ++ else: ++ data.append(top) ++ elif match.group('whitespace'): ++ pass ++ else: ++ if stack: ++ stack[-1].append(match.group()) ++ return data ++ ++ ++class Data(object): ++ def __call__(self, out): ++ for domid, info in sorted(self.data.iteritems(), reverse=True): ++ if domid == 0: ++ continue ++ out.write('{!s} {}\n'.format(domid, *info)) ++ ++ ++class DataJSON(Data): ++ def __init__(self, p): ++ s = json.loads(p) ++ self.data = d = {} ++ for i in s: ++ domid = i['domid'] ++ name = i['config']['c_info']['name'] ++ d[domid] = (name, ) ++ ++ ++class DataSXP(Data): ++ def __init__(self, p): ++ s = SXPParser.loads(p) ++ self.data = d = {} ++ for i in s: ++ if i and i[0] == 'domain': ++ try: ++ data = dict(j for j in i if len(j) == 2) ++ domid = int(data['domid']) ++ name = data['name'] ++ d[domid] = (name, ) ++ except (KeyError, ValueError) as e: ++ pass ++ ++ ++if __name__ == '__main__': ++ p = subprocess.check_output(('xen', 'list', '-l')) ++ if p[0] == '(': ++ d = DataSXP(p) ++ else: ++ d = DataJSON(p) ++ d(sys.stdout) diff --cc debian/scripts/xen-init-name index 0000000000,0000000000..21aad6fd48 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-init-name @@@ -1,0 -1,0 +1,61 @@@ ++#!/usr/bin/python ++ ++import json ++import re ++import sys ++import subprocess ++ ++ ++class SXPParser(object): ++ tokenizer_rules = r""" (?P \( ) | (?P \) ) | (?P \s+ ) | [^()^\s]+ """ ++ tokenizer_re = re.compile(tokenizer_rules, re.X) ++ ++ @classmethod ++ def loads(cls, input): ++ data = [] ++ stack = [] ++ for match in cls.tokenizer_re.finditer(input): ++ if match.group('open'): ++ stack.append([]) ++ elif match.group('close'): ++ top = stack.pop() ++ if stack: ++ stack[-1].append(top) ++ else: ++ data.append(top) ++ elif match.group('whitespace'): ++ pass ++ else: ++ if stack: ++ stack[-1].append(match.group()) ++ return data ++ ++ ++class Data(object): ++ def __call__(self, out): ++ out.write('{}\n'.format(self.name)) ++ ++ ++class DataJSON(Data): ++ def __init__(self, p): ++ s = json.loads(p) ++ self.name = s['c_info']['name'] ++ ++ ++class DataSXP(Data): ++ def __init__(self, p): ++ s = SXPParser.loads(p) ++ for i in s: ++ if i and i[0] == 'domain': ++ data = dict(j for j in i if len(j) == 2) ++ self.name = data['name'] ++ break ++ ++ ++if __name__ == '__main__': ++ p = subprocess.check_output(('xen', 'create', '--quiet', '--dryrun', '--defconfig', sys.argv[1])) ++ if p[0] == '(': ++ d = DataSXP(p) ++ else: ++ d = DataJSON(p) ++ d(sys.stdout) diff --cc debian/scripts/xen-toolstack index 0000000000,0000000000..3a36fd05d6 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-toolstack @@@ -1,0 -1,0 +1,42 @@@ ++#!/bin/sh -e ++ ++configfile=/etc/default/xen ++ ++dir=$(. /usr/lib/xen-common/bin/xen-dir); ret=$?; [ $ret -eq 0 ] || exit $ret ++ ++check() { ++ local PATH ++ if [ "$1" = xm ] || [ "$1" = xl ]; then ++ PATH="$dir/bin" ++ else ++ PATH="$dir/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" ++ fi ++ command -v "$1" || : ++} ++ ++if [ -e $configfile ]; then ++ . $configfile || true ++fi ++ ++if [ "$TOOLSTACK" ]; then ++ cmd=$(check "$TOOLSTACK") ++ if [ "$cmd" ]; then ++ echo "$cmd" ++ else ++ echo "WARING: Can't find toolstack $TOOLSTACK, fallback to default!" >&2 ++ TOOLSTACK= ++ fi ++fi ++ ++if [ -z "$TOOLSTACK" ]; then ++ cmd_xm=$(check xm) ++ cmd_xl=$(check xl) ++ if [ "$cmd_xm" ]; then ++ echo "$cmd_xm" ++ elif [ "$cmd_xl" ]; then ++ echo "$cmd_xl" ++ else ++ echo "ERROR: Toolstack not specifed and nothing detected, bailing out!" >&2 ++ exit 127 ++ fi ++fi diff --cc debian/scripts/xen-toolstack-wrapper index 0000000000,0000000000..f76d2ef4b8 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-toolstack-wrapper @@@ -1,0 -1,0 +1,11 @@@ ++#!/bin/sh -e ++ ++COMMAND="$(basename $0)" ++TOOLSTACK=$(. /usr/lib/xen-common/bin/xen-toolstack); RET=$?; [ $RET -eq 0 ] || exit $RET ++ ++if [ "$(basename "$TOOLSTACK")" != "$COMMAND" ]; then ++ echo "ERROR: A different toolstack ($(basename "$TOOLSTACK")) have been selected!" >&2 ++ exit 1 ++fi ++ ++exec "$TOOLSTACK" "$@" diff --cc debian/scripts/xen-utils-wrapper index 0000000000,0000000000..4d27a62d33 new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-utils-wrapper @@@ -1,0 -1,0 +1,6 @@@ ++#!/bin/sh -e ++ ++COMMAND="$(basename $0)" ++DIR=$(/usr/lib/xen-common/bin/xen-dir) ++ ++exec "$DIR/bin/$COMMAND" "$@" diff --cc debian/scripts/xen-version index 0000000000,0000000000..492070a43b new file mode 100755 --- /dev/null +++ b/debian/scripts/xen-version @@@ -1,0 -1,0 +1,22 @@@ ++#!/bin/sh -e ++ ++error() { ++ echo "ERROR: " "$@" >&2 ++ exit 1 ++} ++ ++if [ -e "/sys/hypervisor/type" ]; then ++ type="$(cat /sys/hypervisor/type)" ++ if [ "$type" = xen ]; then ++ DIR=/sys/hypervisor/version ++ VERSION="$(cat $DIR/major).$(cat $DIR/minor)" ++ elif [ -z "$type" ]; then ++ error "Can't read hypervisor type from sysfs!" ++ else ++ error "Hypervisor is not xen but '$type'!" ++ fi ++else ++ error "Can't find hypervisor information in sysfs!" ++fi ++ ++echo "$VERSION" diff --cc debian/source/format index 0000000000,0000000000..163aaf8d82 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/templates/control.hypervisor.in index 0000000000,0000000000..51a47f100d new file mode 100644 --- /dev/null +++ b/debian/templates/control.hypervisor.in @@@ -1,0 -1,0 +1,15 @@@ ++Package: xen-hypervisor-@version@@localversion@ ++Depends: ${misc:Depends} ++Provides: xen-hypervisor, xen-hypervisor-@version@, xen-hypervisor@localversion@ ++Recommends: xen-utils-@version@ ++Description: Xen Hypervisor on @class@ ++ The hypervisor is the "core" for XEN itself. It gets booted by the boot loader ++ and controls cpu and memory, sharing them between your administrative domain ++ (Domain 0) and the virtual guest systems. ++ . ++ @desc@ ++ . ++ In order to boot a XEN system along with this package you also need a kernel ++ specifically crafted to work as the Domain 0, mediating hardware access for ++ XEN itself. ++ diff --cc debian/templates/control.main.in index 0000000000,0000000000..94f6e49814 new file mode 100644 --- /dev/null +++ b/debian/templates/control.main.in @@@ -1,0 -1,0 +1,61 @@@ ++Package: libxen-@version@ ++Section: libs ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Multi-Arch: same ++Description: Public libs for Xen ++ This package contains the shared toolstack libraries for Xen. ++ ++Package: libxenstore3.0 ++Section: libs ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Multi-Arch: same ++Description: Xenstore communications library for Xen ++ This package contains the client library interface to XenStore. ++ . ++ ++Package: libxen-dev ++Section: libdevel ++Multi-Arch: same ++Depends: libxen-@version@ (= ${binary:Version}), libxenstore3.0 (= ${binary:Version}), ${misc:Depends} ++Description: Public headers and libs for Xen ++ This package contains the public headers and static libraries for Xen. ++ . ++ The libxenlight library is intended as a common base for all Xen toolstack ++ developers. The libxlutil library contains additional helpers which may be ++ useful to toolstack developers. ++ . ++ The libxenstore library allows userspace processes to interact with the ++ XenStore database. XenStore is a shared database used for interdomain ++ communication of configuration and status information. It is accessible to all ++ domains running on the same Xen host. See http://wiki.xen.org/wiki/XenStore ++ for more information. ++ . ++ The libxenctrl and libxenguest libraries are internal libraries intended for ++ use by the Xen toolstack and are not intended to be used directly. Toolstack ++ authors should use libxenlight. ++ ++Package: xenstore-utils ++Section: admin ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Conflicts: xen-utils-common (<= 3.1.0-1) ++Replaces: xen-utils-common (<= 3.1.0-1) ++Description: Xenstore command line utilities for Xen ++ This package contains command line utilities for interacting with XenStore. ++ . ++ XenStore is a shared database used for interdomain communication of ++ configuration and status information. It is accessible to all domains running ++ on the same Xen host. See http://wiki.xen.org/wiki/XenStore for more information. ++ . ++ In the common case these tools are used by the Xen toolstack running in ++ domain0 (or a driver domain) however they may also be used in a guest domain ++ to support local scripting which wants to communicate via XenStore. ++ ++Package: xen-utils-common ++Architecture: all ++Depends: lsb-base, python, udev, xenstore-utils, ${misc:Depends} ++Description: Xen administrative tools - common files ++ The userspace tools to manage a system virtualized through the Xen virtual ++ machine monitor. ++ . ++ This package is only required on the host system (Domain 0) and not on ++ the virtual guest systems (Domain U). diff --cc debian/templates/control.source.in index 0000000000,0000000000..71d92c0b48 new file mode 100644 --- /dev/null +++ b/debian/templates/control.source.in @@@ -1,0 -1,0 +1,28 @@@ ++Section: kernel ++Priority: optional ++Maintainer: Debian Xen Team ++Uploaders: Guido Trotter , Bastian Blank , Ian Jackson ++Build-Depends: ++ autotools-dev, ++ debhelper (>> 9), ++ dpkg-dev (>= 1.16.0~), ++ lsb-release, ++ python-dev, ++ bcc [i386 amd64], ++ gcc-multilib [i386 amd64], ++ e2fslibs-dev, ++ iasl, ++ seabios (>= 1.7.4-2~) [i386 amd64], ++ libaio-dev, ++ libfdt-dev [armhf arm64], ++ libglib2.0-dev, ++ liblzma-dev, ++ libncurses5-dev, ++ libpixman-1-dev, ++ libyajl-dev, ++ pkg-config, ++ uuid-dev, ++ zlib1g-dev, ++Standards-Version: 3.9.4 ++XS-Python-Version: current ++ diff --cc debian/templates/control.system.latest.in index 0000000000,0000000000..730002cc48 new file mode 100644 --- /dev/null +++ b/debian/templates/control.system.latest.in @@@ -1,0 -1,0 +1,8 @@@ ++Package: xen-system@localversion@ ++Depends: xen-hypervisor-@version@@localversion@, xen-utils-@version@, ${misc:Depends} ++Provides: xen-system ++Description: Xen System on @class@ (meta-package) ++ This package depends on the latest Xen hypervisor for use on @class@ and the Xen utils. ++ . ++ @desc@ ++ diff --cc debian/templates/control.utils.in index 0000000000,0000000000..7116a2aa20 new file mode 100644 --- /dev/null +++ b/debian/templates/control.utils.in @@@ -1,0 -1,0 +1,12 @@@ ++Package: xen-utils-@version@ ++Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, xen-utils-common (>= ${source:Version}) ++Recommends: bridge-utils, libc6-xen [i386], xen-hypervisor-@version@, qemu-system-x86, grub-xen-host [i386 amd64] ++Suggests: qemu-utils [i386 amd64], seabios [i386 amd64] ++Provides: xen-utils ++Built-Using: ${misc:Built-Using} ++Description: XEN administrative tools ++ The userspace tools to manage a system virtualized through the XEN virtual ++ machine monitor. ++ . ++ qemu-utils and seabios are neded for "Xen HVM" (amd64 and i386) ++ diff --cc debian/templates/libxen.bug/control index 0000000000,0000000000..3e21b39c90 new file mode 100644 --- /dev/null +++ b/debian/templates/libxen.bug/control @@@ -1,0 -1,0 +1,1 @@@ ++Submit-As: src:xen diff --cc debian/templates/xen-hypervisor.bug/control index 0000000000,0000000000..3e21b39c90 new file mode 100644 --- /dev/null +++ b/debian/templates/xen-hypervisor.bug/control @@@ -1,0 -1,0 +1,1 @@@ ++Submit-As: src:xen diff --cc debian/templates/xen-hypervisor.postinst.in index 0000000000,0000000000..1540842eec new file mode 100644 --- /dev/null +++ b/debian/templates/xen-hypervisor.postinst.in @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ configure) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/templates/xen-hypervisor.postrm.in index 0000000000,0000000000..4833411ab6 new file mode 100644 --- /dev/null +++ b/debian/templates/xen-hypervisor.postrm.in @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ++ ;; ++ ++ *) ++ echo "postrm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/templates/xen-utils.bug/control index 0000000000,0000000000..3e21b39c90 new file mode 100644 --- /dev/null +++ b/debian/templates/xen-utils.bug/control @@@ -1,0 -1,0 +1,1 @@@ ++Submit-As: src:xen diff --cc debian/templates/xen-utils.lintian-overrides.in index 0000000000,0000000000..dabce13989 new file mode 100644 --- /dev/null +++ b/debian/templates/xen-utils.lintian-overrides.in @@@ -1,0 -1,0 +1,1 @@@ ++statically-linked-binary usr/lib/xen-@version@/boot/hvmloader diff --cc debian/templates/xen-utils.postinst.in index 0000000000,0000000000..581327f09f new file mode 100644 --- /dev/null +++ b/debian/templates/xen-utils.postinst.in @@@ -1,0 -1,0 +1,24 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++ configure) ++ update-alternatives --remove xen-default /usr/lib/xen-@version@ ++ if [ -x "/etc/init.d/xen" ]; then ++ invoke-rc.d xen start || exit $? ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/templates/xen-utils.prerm.in index 0000000000,0000000000..1aa2cae65f new file mode 100644 --- /dev/null +++ b/debian/templates/xen-utils.prerm.in @@@ -1,0 -1,0 +1,24 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove|upgrade) ++ update-alternatives --remove xen-default /usr/lib/xen-@version@ ++ if [ -x "/etc/init.d/xen" ]; then ++ invoke-rc.d xen stop || exit $? ++ fi ++ ;; ++ ++ deconfigure|failed-upgrade) ++ ;; ++ ++ *) ++ echo "prerm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/tree/xen-utils-common/etc/xen/xend-config.sxp index 0000000000,0000000000..93a24fd31d new file mode 100644 --- /dev/null +++ b/debian/tree/xen-utils-common/etc/xen/xend-config.sxp @@@ -1,0 -1,0 +1,306 @@@ ++# -*- sh -*- ++ ++# ++# Xend configuration file. ++# ++ ++# This example configuration is appropriate for an installation that ++# utilizes a bridged network configuration. Access to xend via http ++# is disabled. ++ ++# Commented out entries show the default for that entry, unless otherwise ++# specified. ++ ++#(logfile /var/log/xen/xend.log) ++#(loglevel DEBUG) ++ ++# Uncomment the line below. Set the value to flask, acm, or dummy to ++# select a security module. ++ ++#(xsm_module_name dummy) ++ ++# The Xen-API server configuration. ++# ++# This value configures the ports, interfaces, and access controls for the ++# Xen-API server. Each entry in the list starts with either unix, a port ++# number, or an address:port pair. If this is "unix", then a UDP socket is ++# opened, and this entry applies to that. If it is a port, then Xend will ++# listen on all interfaces on that TCP port, and if it is an address:port ++# pair, then Xend will listen on the specified port, using the interface with ++# the specified address. ++# ++# The subsequent string configures the user-based access control for the ++# listener in question. This can be one of "none" or "pam", indicating either ++# that users should be allowed access unconditionally, or that the local ++# Pluggable Authentication Modules configuration should be used. If this ++# string is missing or empty, then "pam" is used. ++# ++# The final string gives the host-based access control for that listener. If ++# this is missing or empty, then all connections are accepted. Otherwise, ++# this should be a space-separated sequence of regular expressions; any host ++# with a fully-qualified domain name or an IP address that matches one of ++# these regular expressions will be accepted. ++# ++# Example: listen on TCP port 9363 on all interfaces, accepting connections ++# only from machines in example.com or localhost, and allow access through ++# the unix domain socket unconditionally: ++# ++# (xen-api-server ((9363 pam '^localhost$ example\\.com$') ++# (unix none))) ++# ++# Optionally, the TCP Xen-API server can use SSL by specifying the private ++# key and certificate location: ++# ++# (9367 pam '' xen-api.key xen-api.crt) ++# ++# Default: ++# (xen-api-server ((unix))) ++ ++ ++#(xend-http-server no) ++#(xend-unix-server no) ++#(xend-tcp-xmlrpc-server no) ++#(xend-unix-xmlrpc-server yes) ++#(xend-relocation-server no) ++#(xend-relocation-ssl-server no) ++#(xend-udev-event-server no) ++ ++#(xend-unix-path /var/lib/xend/xend-socket) ++ ++ ++# Address and port xend should use for the legacy TCP XMLRPC interface, ++# if xend-tcp-xmlrpc-server is set. ++#(xend-tcp-xmlrpc-server-address 'localhost') ++#(xend-tcp-xmlrpc-server-port 8006) ++ ++# SSL key and certificate to use for the legacy TCP XMLRPC interface. ++# Setting these will mean that this port serves only SSL connections as ++# opposed to plaintext ones. ++#(xend-tcp-xmlrpc-server-ssl-key-file xmlrpc.key) ++#(xend-tcp-xmlrpc-server-ssl-cert-file xmlrpc.crt) ++ ++ ++# Port xend should use for the HTTP interface, if xend-http-server is set. ++#(xend-port 8000) ++ ++# Port xend should use for the relocation interface, if xend-relocation-server ++# is set. ++#(xend-relocation-port 8002) ++ ++# Port xend should use for the ssl relocation interface, if ++# xend-relocation-ssl-server is set. ++#(xend-relocation-ssl-port 8003) ++ ++# SSL key and certificate to use for the ssl relocation interface, if ++# xend-relocation-ssl-server is set. ++#(xend-relocation-server-ssl-key-file xmlrpc.key) ++#(xend-relocation-server-ssl-cert-file xmlrpc.crt) ++ ++# Whether to use ssl as default when relocating. ++#(xend-relocation-ssl no) ++ ++# Address xend should listen on for HTTP connections, if xend-http-server is ++# set. ++# Specifying 'localhost' prevents remote connections. ++# Specifying the empty string '' (the default) allows all connections. ++#(xend-address '') ++#(xend-address localhost) ++ ++# Address xend should listen on for relocation-socket connections, if ++# xend-relocation-server is set. ++# Meaning and default as for xend-address above. ++# Also, interface name is allowed (e.g. eth0) there to get the ++# relocation address to be bound on. ++#(xend-relocation-address '') ++ ++# The hosts allowed to talk to the relocation port. If this is empty (the ++# default), then all connections are allowed (assuming that the connection ++# arrives on a port and interface on which we are listening; see ++# xend-relocation-port and xend-relocation-address above). Otherwise, this ++# should be a space-separated sequence of regular expressions. Any host with ++# a fully-qualified domain name or an IP address that matches one of these ++# regular expressions will be accepted. ++# ++# For example: ++# (xend-relocation-hosts-allow '^localhost$ ^.*\\.example\\.org$') ++# ++#(xend-relocation-hosts-allow '') ++ ++# The limit (in kilobytes) on the size of the console buffer ++#(console-limit 1024) ++ ++## ++# NOTE: ++# Please read /usr/share/doc/xen-utils-common/README.Debian for Debian specific ++# informations about the network setup. ++ ++## ++# To bridge network traffic, like this: ++# ++# dom0: ----------------- bridge -> real eth0 -> the network ++# | ++# domU: fake eth0 -> vifN.0 -+ ++# ++# use ++# ++# (network-script network-bridge) ++# ++# Your default ethernet device is used as the outgoing interface, by default. ++# To use a different one (e.g. eth1) use ++# ++# (network-script 'network-bridge netdev=eth1') ++# ++# The bridge is named eth0, by default (yes, really!) ++# ++ ++# It is normally much better to create the bridge yourself in ++# /etc/network/interfaces. network-bridge start does nothing if you ++# already have a bridge, and network-bridge stop does nothing if the ++# default bridge name (normally eth0) is not a bridge. See ++# bridge-utils-interfaces(5) for full information on the syntax in ++# /etc/network/interfaces, but you probably want something like this: ++# iface xenbr0 inet static ++# address [etc] ++# netmask [etc] ++# [etc] ++# bridge_ports eth0 ++# ++# To have network-bridge create a differently-named bridge, use: ++# (network-script 'network-bridge bridge=') ++# ++# It is possible to use the network-bridge script in more complicated ++# scenarios, such as having two outgoing interfaces, with two bridges, and ++# two fake interfaces per guest domain. To do things like this, write ++# yourself a wrapper script, and call network-bridge from it, as appropriate. ++# ++ ++# The script used to control virtual interfaces. This can be overridden on a ++# per-vif basis when creating a domain or a configuring a new vif. The ++# vif-bridge script is designed for use with the network-bridge script, or ++# similar configurations. ++# ++# If you have overridden the bridge name using ++# (network-script 'network-bridge bridge=') then you may wish to do the ++# same here. The bridge name can also be set when creating a domain or ++# configuring a new vif, but a value specified here would act as a default. ++# ++# If you are using only one bridge, the vif-bridge script will discover that, ++# so there is no need to specify it explicitly. The default is to use ++# the bridge which is listed first in the output from brctl. ++# ++(vif-script vif-bridge) ++ ++ ++## Use the following if network traffic is routed, as an alternative to the ++# settings for bridged networking given above. ++#(network-script network-route) ++#(vif-script vif-route) ++ ++ ++## Use the following if network traffic is routed with NAT, as an alternative ++# to the settings for bridged networking given above. ++#(network-script network-nat) ++#(vif-script vif-nat) ++ ++# dom0-min-mem is the lowest permissible memory level (in MB) for dom0. ++# This is a minimum both for auto-ballooning (as enabled by ++# enable-dom0-ballooning below) and for xm mem-set when applied to dom0. ++(dom0-min-mem 196) ++ ++# Whether to enable auto-ballooning of dom0 to allow domUs to be created. ++# If enable-dom0-ballooning = no, dom0 will never balloon out. ++(enable-dom0-ballooning yes) ++ ++# 32-bit paravirtual domains can only consume physical ++# memory below 168GB. On systems with memory beyond that address, ++# they'll be confined to memory below 128GB. ++# Using total_available_memory (in GB) to specify the amount of memory reserved ++# in the memory pool exclusively for 32-bit paravirtual domains. ++# Additionally you should use dom0_mem = <-Value> as a parameter in ++# xen kernel to reserve the memory for 32-bit paravirtual domains, default ++# is "0" (0GB). ++(total_available_memory 0) ++ ++# In SMP system, dom0 will use dom0-cpus # of CPUS ++# If dom0-cpus = 0, dom0 will take all cpus available ++(dom0-cpus 0) ++ ++# Whether to enable core-dumps when domains crash. ++#(enable-dump no) ++ ++# The tool used for initiating virtual TPM migration ++#(external-migration-tool '') ++ ++# The interface for VNC servers to listen on. Defaults ++# to 127.0.0.1 To restore old 'listen everywhere' behaviour ++# set this to 0.0.0.0 ++#(vnc-listen '127.0.0.1') ++ ++# The default password for VNC console on HVM domain. ++# Empty string is no authentication. ++(vncpasswd '') ++ ++# The VNC server can be told to negotiate a TLS session ++# to encryption all traffic, and provide x509 cert to ++# clients enabling them to verify server identity. The ++# GTK-VNC widget, virt-viewer, virt-manager and VeNCrypt ++# all support the VNC extension for TLS used in QEMU. The ++# TightVNC/RealVNC/UltraVNC clients do not. ++# ++# To enable this create x509 certificates / keys in the ++# directory ${XEN_CONFIG_DIR} + vnc ++# ++# ca-cert.pem - The CA certificate ++# server-cert.pem - The Server certificate signed by the CA ++# server-key.pem - The server private key ++# ++# and then uncomment this next line ++# (vnc-tls 1) ++ ++# The certificate dir can be pointed elsewhere.. ++# ++# (vnc-x509-cert-dir vnc) ++ ++# The server can be told to request & validate an x509 ++# certificate from the client. Only clients with a cert ++# signed by the trusted CA will be able to connect. This ++# is more secure the password auth alone. Passwd auth can ++# used at the same time if desired. To enable client cert ++# checking uncomment this: ++# ++# (vnc-x509-verify 1) ++ ++# The default keymap to use for the VM's virtual keyboard ++# when not specififed in VM's configuration ++#(keymap 'en-us') ++ ++# Script to run when the label of a resource has changed. ++#(resource-label-change-script '') ++ ++# Rotation count of qemu-dm log file. ++#(qemu-dm-logrotate-count 10) ++ ++# Path where persistent domain configuration is stored. ++# Default is /var/lib/xend/domains/ ++#(xend-domains-path /var/lib/xend/domains) ++ ++# Number of seconds xend will wait for device creation and ++# destruction ++#(device-create-timeout 100) ++#(device-destroy-timeout 100) ++ ++# When assigning device to HVM guest, we use the strict check for HVM guest by ++# default. (For PV guest, we use loose check automatically if necessary.) ++# When we assign device to HVM guest, if we meet with the co-assignment ++# issues or the ACS issue, we could try changing the option to 'no' -- however, ++# we have to realize this may incur security issue and we can't make sure the ++# device assignment could really work properly even after we do this. ++#(pci-passthrough-strict-check yes) ++ ++# If we have a very big scsi device configuration, start of xend is slow, ++# because xend scans all the device paths to build its internal PSCSI device ++# list. If we need only a few devices for assigning to a guest, we can reduce ++# the scan to this device. Set list list of device paths in same syntax like in ++# command lsscsi, e.g. ('16:0:0:0' '15:0') ++# (pscsi-device-mask ('*')) ++ diff --cc debian/tree/xen-utils-common/etc/xen/xend-pci-permissive.sxp index 0000000000,0000000000..1a3fb90a04 new file mode 100644 --- /dev/null +++ b/debian/tree/xen-utils-common/etc/xen/xend-pci-permissive.sxp @@@ -1,0 -1,0 +1,27 @@@ ++############################################################################### ++# Configuration file for granting quiry PCI devices full write access to their ++# configuration space. This file should only be used when you are unable to ++# determine the exact registers required by your device. Even so, it should ++# be used only temporarily. ++# ++# SEND A MESSAGE TO xen-devel@lists.xensource.com IF YOU USE THIS FILE. ++# ++# Using this file should NOT be necessary. If you must use it to make some ++# device work, send a message to the above list with as much information about ++# your device as possible so the developers can make accomodations for it. ++# Once developers make the necessary updates you can remove the corresponding ++# entry for your device. ++############################################################################### ++# Entries are formated as follows: :[::] ++# ++# Example: Appending to an existing list ++# ++# (unconstrained_dev_ids ++# ('XXXX:XXXX:XXXX:XXXX' # existing entry ++# 'YYYY:YYYY:YYYY:YYYY' # new entry 1 ++# 'ZZZZ:ZZZZ') # new entry 2 ++# ) ++############################################################################### ++(unconstrained_dev_ids ++ #('0123:4567:89AB:CDEF') ++) diff --cc debian/tree/xen-utils-common/etc/xen/xend-pci-quirks.sxp index 0000000000,0000000000..6bce4b8a78 new file mode 100644 --- /dev/null +++ b/debian/tree/xen-utils-common/etc/xen/xend-pci-quirks.sxp @@@ -1,0 -1,0 +1,96 @@@ ++############################################################################### ++# Configuration file for quirky PCI devices that require write-access to ++# parts of the configuration space. Use this file to specific PCI device ++# IDs and the configuration space fields to which those devices must be ++# able to write. ++# ++# Length is important, so be sure to match new entries with the ++# lengths of comparable existing entries. ++# ++# Additions to this file take effect as soon as a new domain with a ++# matching device is started. However, to remove a field that was ++# previously applied to a device you must unbind the device from ++# pciback. ++############################################################################### ++# This is a bogus entry to show how a new device would be added to the list ++# ++# (new_quirky_dev_name ++# (pci_ids ++# ('0123:4567:890A:BCEF') ++# ) ++# ++# (pci_config_space_fields ++# ('12345678:1:00000000') ++# ) ++# ) ++############################################################################### ++ ++(tg3 ++ (pci_ids ++ # Entries are formated as follows: ++ # :[::] ++ ('14e4:1644' # Broadcom Tigon3 5700 ++ '14e4:1645' # Broadcom Tigon3 5701 ++ '14e4:1646' # Broadcom Tigon3 5702 ++ '14e4:1647' # Broadcom Tigon3 5703 ++ '14e4:1648' # Broadcom Tigon3 5704 ++ '14e4:164d' # Broadcom Tigon3 5702FE ++ '14e4:1653' # Broadcom Tigon3 5705 ++ '14e4:1654' # Broadcom Tigon3 5705_2 ++ '14e4:165d' # Broadcom Tigon3 5705M ++ '14e4:165e' # Broadcom Tigon3 5705M_2 ++ '14e4:16a6' # Broadcom Tigon3 5702X ++ '14e4:16a7' # Broadcom Tigon3 5703X ++ '14e4:16a8' # Broadcom Tigon3 5704S ++ '14e4:16c6' # Broadcom Tigon3 5702A3 ++ '14e4:16c7' # Broadcom Tigon3 5703A3 ++ '14e4:1696' # Broadcom Tigon3 5782 ++ '14e4:169c' # Broadcom Tigon3 5788 ++ '14e4:169d' # Broadcom Tigon3 5789 ++ '14e4:170d' # Broadcom Tigon3 5901 ++ '14e4:1649' # Broadcom Tigon3 5704S_2 ++ '14e4:166e' # Broadcom Tigon3 5705F ++ '14e4:1658' # Broadcom Tigon3 5720 ++ '14e4:1659' # Broadcom Tigon3 5721 ++ '14e4:1676' # Broadcom Tigon3 5750 ++ '14e4:1677' # Broadcom Tigon3 5751 ++ '14e4:167c' # Broadcom Tigon3 5750M ++ '14e4:167d' # Broadcom Tigon3 5751M ++ '14e4:167e' # Broadcom Tigon3 5751F ++ '14e4:1600' # Broadcom Tigon3 5752 ++ '14e4:1601' # Broadcom Tigon3 5752M ++ '14e4:16f7' # Broadcom Tigon3 5753 ++ '14e4:16fd' # Broadcom Tigon3 5753M ++ '14e4:16fe' # Broadcom Tigon3 5753F ++ '14e4:1668' # Broadcom Tigon3 5714 ++ '14e4:1678' # Broadcom Tigon3 5715 ++ '14e4:166a' # Broadcom Tigon3 5780 ++ '14e4:166b' # Broadcom Tigon3 5780S ++ '14e4:16dd' # Broadcom Tigon3 5781 ++ '1148:4400' # Syskonnect 9DXX ++ '1148:4500' # Syskonnect 9MXX ++ '173b:03e8' # Altima AC1000 ++ '173b:03e9' # Altima AC1001 ++ '173b:03eb' # Altima AC1003 ++ '173b:03ea' # Altima AC9100 ++ '106b:1645') # Apple Tigon3 ++ ) ++ ++ (pci_config_space_fields ++ # Entries are formated as follows: ++ # :: ++ # size is measured in bytes (1,2,4 are valid sizes) ++ # mask is currently unused; use all zero's ++ ('00000078:4:00000000' # TG3PCI_REG_BASE_ADDR ++ '0000007c:4:00000000' # TG3PCI_MEM_WIN_BASE_ADDR ++ '00000080:4:00000000' # TG3PCI_REG_DATA ++ '00000084:4:00000000' # TG3PCI_MEM_WIN_DATA ++ '00000090:4:00000000' # TG3PCI_MISC_LOCAL_CTRL ++ '00000068:4:00000000' # TG3PCI_MISC_HOST_CTRL ++ '0000009C:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_LOW ++ '00000098:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_HIGH ++ '000000a4:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_LOW ++ '000000a0:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_HIGH ++ '00000070:4:00000000') # TG3PCI_PCISTATE ++ ) ++) diff --cc debian/tree/xen-utils-common/usr/share/xen-utils-common/default.xen index 0000000000,0000000000..87a35f3a11 new file mode 100644 --- /dev/null +++ b/debian/tree/xen-utils-common/usr/share/xen-utils-common/default.xen @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration for Xen system ++# ---------------------------- ++ ++# There exists several tool stacks to configure a Xen system. ++# xl: This is the new toolstack using libxenlight/libxl (default) ++# xm: Was the old toolstack (xend) which is no longer supported! ++# ++# Attention: You need to reboot after changing this! ++TOOLSTACK= diff --cc debian/xen-hypervisor-4.8-amd64.postinst index 0000000000,0000000000..1540842eec new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-amd64.postinst @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ configure) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8-amd64.postrm index 0000000000,0000000000..4833411ab6 new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-amd64.postrm @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ++ ;; ++ ++ *) ++ echo "postrm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8-arm64.postinst index 0000000000,0000000000..1540842eec new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-arm64.postinst @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ configure) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8-arm64.postrm index 0000000000,0000000000..4833411ab6 new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-arm64.postrm @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ++ ;; ++ ++ *) ++ echo "postrm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8-armhf.postinst index 0000000000,0000000000..1540842eec new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-armhf.postinst @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ configure) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8-armhf.postrm index 0000000000,0000000000..4833411ab6 new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8-armhf.postrm @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove) ++ if command -v update-grub > /dev/null && [ -d /boot/grub ]; then ++ update-grub || : ++ fi ++ ;; ++ ++ purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ++ ;; ++ ++ *) ++ echo "postrm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-hypervisor-4.8.xen.cfg index 0000000000,0000000000..b2d2f6ee93 new file mode 100644 --- /dev/null +++ b/debian/xen-hypervisor-4.8.xen.cfg @@@ -1,0 -1,0 +1,54 @@@ ++# ++# Uncomment the following variable and set to 0 or 1 to avoid warning. ++# ++#XEN_OVERRIDE_GRUB_DEFAULT=0 ++ ++echo "Including Xen overrides from /etc/default/grub.d/xen.cfg" ++ ++# ++# When running update-grub with the Xen hypervisor installed, there are ++# some additional variables that can be used to pass options to the ++# hypervisor or the dom0 kernel. ++ ++# The following two are used to generate arguments for the hypervisor: ++# ++#GRUB_CMDLINE_XEN_DEFAULT="" ++#GRUB_CMDLINE_XEN="" ++# ++# For example: ++# ++# dom0_mem=[M]:max=[M] ++# Sets the amount of memory dom0 uses (max prevents balloning for more) ++# com[12]=, ++# Initialize a serial console from in the hypervisor (eg. 115200,8n1) ++# Note that com1 would be ttyS0 in Linux. ++# console=[, ...] ++# Redirects Xen hypervisor console (eg. com1,vga) ++ ++# ++# The next two lines are used for creating kernel arguments for the dom0 ++# kernel. This allows to have different options for the same kernel used ++# natively or as dom0 kernel. ++# ++#GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT" ++#GRUB_CMDLINE_LINUX_XEN_REPLACE="$GRUB_CMDLINE_LINUX" ++# ++# For example: ++# ++# earlyprintk=xenboot ++# Allows to send early printk messages to the Xen hypervisor console ++# console=hvc0 ++# Redirects the Linux console to the hypervisor console ++ ++# ++# Make booting into Xen the default if not changed above. Finding the ++# current string for it always has been a problem. ++# ++if [ "$XEN_OVERRIDE_GRUB_DEFAULT" = "" ]; then ++ echo "WARNING: GRUB_DEFAULT changed to boot into Xen by default!" ++ echo " Edit /etc/default/grub.d/xen.cfg to avoid this warning." ++ XEN_OVERRIDE_GRUB_DEFAULT=1 ++fi ++if [ "$XEN_OVERRIDE_GRUB_DEFAULT" = "1" ]; then ++ GRUB_DEFAULT="Debian GNU/Linux, with Xen hypervisor" ++fi diff --cc debian/xen-utils-4.8.lintian-overrides index 0000000000,0000000000..d4a6caff65 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-4.8.lintian-overrides @@@ -1,0 -1,0 +1,1 @@@ ++statically-linked-binary usr/lib/xen-4.8/boot/hvmloader diff --cc debian/xen-utils-4.8.postinst index 0000000000,0000000000..2a4049b32f new file mode 100644 --- /dev/null +++ b/debian/xen-utils-4.8.postinst @@@ -1,0 -1,0 +1,24 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++ configure) ++ update-alternatives --remove xen-default /usr/lib/xen-4.8 ++ if [ -x "/etc/init.d/xen" ]; then ++ invoke-rc.d xen start || exit $? ++ fi ++ ;; ++ ++ abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-utils-4.8.prerm index 0000000000,0000000000..e467e77fab new file mode 100644 --- /dev/null +++ b/debian/xen-utils-4.8.prerm @@@ -1,0 -1,0 +1,24 @@@ ++#!/bin/bash ++ ++set -e ++ ++case "$1" in ++ remove|upgrade) ++ update-alternatives --remove xen-default /usr/lib/xen-4.8 ++ if [ -x "/etc/init.d/xen" ]; then ++ invoke-rc.d xen stop || exit $? ++ fi ++ ;; ++ ++ deconfigure|failed-upgrade) ++ ;; ++ ++ *) ++ echo "prerm called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-utils-common.README.Debian index 0000000000,0000000000..873a9d3fc9 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.README.Debian @@@ -1,0 -1,0 +1,29 @@@ ++Xen for Debian ++============== ++ ++Config behaviour ++---------------- ++ ++The Debian packages changes the behaviour of some config options. ++ ++The options "kernel", "initrd" and "loader" searches in the Xen private boot ++directory (/usr/lib/xen-$version/boot) first. "bootloader" and "device_model" ++also searches the Xen private bin directory (/usr/lib/xen-$version/bin). This ++means that the following entries will properly find anything: ++ loader = 'hvmloader' ++ bootloader = 'pygrub' ++ ++Network setup ++------------- ++ ++The Debian package of Xen don't change the network setup in any way. This ++differs from the upstream version, which overwrites the main network card ++(eth0) with a bridge setup and may break the network at this point.. ++ ++To setup a bridge please follow the instructions in the manpage for ++bridge-utils-interfaces(5). ++ ++You can also change the /etc/xen/xend-config.sxp file and re-enable the Xen ++included network setup by adding ++ (network-script network-bridge) ++to the file. But please note that this may or may not work. diff --cc debian/xen-utils-common.dirs index 0000000000,0000000000..c745c087a3 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.dirs @@@ -1,0 -1,0 +1,1 @@@ ++var/lib/xen diff --cc debian/xen-utils-common.examples index 0000000000,0000000000..50cee55177 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.examples @@@ -1,0 -1,0 +1,2 @@@ ++debian/tmp/etc/xen/cpupool* ++debian/tmp/etc/xen/xm* diff --cc debian/xen-utils-common.install index 0000000000,0000000000..d919badd3a new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.install @@@ -1,0 -1,0 +1,5 @@@ ++etc/xen/scripts ++etc/xen/xl* ++usr/lib/xen-common ++usr/sbin ++../../tree/xen-utils-common/* / diff --cc debian/xen-utils-common.postinst index 0000000000,0000000000..f719731aff new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.postinst @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++configure) ++ install -d -m 2750 -g adm /var/log/xen ++ ;; ++ ++abort-upgrade|abort-remove|abort-deconfigure) ++ ;; ++ ++*) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++dpkg-maintscript-helper mv_conffile /etc/init.d/xend /etc/init.d/xen 4.1.2-4~ -- "$@" ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-utils-common.postrm index 0000000000,0000000000..48b57ead0c new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.postrm @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++purge) ++ rmdir --ignore-fail-on-non-empty /var/log/xen ++ ;; ++ ++remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ++ ;; ++ ++*) ++ echo "postrm called with unknown argument \`$1'" >&2 ++ exit ++ ;; ++esac ++ ++dpkg-maintscript-helper mv_conffile /etc/init.d/xend /etc/init.d/xen 4.1.2-4~ -- "$@" ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-utils-common.preinst index 0000000000,0000000000..5f9c729374 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.preinst @@@ -1,0 -1,0 +1,23 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++install|upgrade) ++ ;; ++ ++abort-upgrade) ++ ;; ++ ++*) ++ echo "preinst called with unknown argument \`$1'" >&2 ++ exit 1 ++ ;; ++esac ++ ++dpkg-maintscript-helper mv_conffile /etc/init.d/xend /etc/init.d/xen 4.1.2-4~ -- "$@" ++update-rc.d -f xend remove >/dev/null ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/xen-utils-common.ucf index 0000000000,0000000000..b32b91d1d9 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.ucf @@@ -1,0 -1,0 +1,1 @@@ ++/usr/share/xen-utils-common/default.xen /etc/default/xen diff --cc debian/xen-utils-common.xen.init index 0000000000,0000000000..a153885073 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.xen.init @@@ -1,0 -1,0 +1,380 @@@ ++#!/bin/sh ++### BEGIN INIT INFO ++# Provides: xen xend ++# Required-Start: $syslog $remote_fs ++# Required-Stop: $syslog $remote_fs ++# Default-Start: 2 3 4 5 ++# Default-Stop: 0 1 6 ++# Short-Description: Xen daemons ++# Description: Xen daemons ++### END INIT INFO ++ ++. /lib/init/vars.sh ++. /lib/lsb/init-functions ++ ++# Default variables ++XENSTORED_DIR="/var/run/xenstored" ++ ++[ -r /etc/default/xen ] && . /etc/default/xen ++[ -r /etc/default/xend ] && . /etc/default/xend ++ ++PATH=/sbin:/bin:/usr/sbin:/usr/bin ++DESC="Xen daemons" ++ ++ROOT=$(/usr/lib/xen-common/bin/xen-dir 2>/dev/null) ++if [ $? -ne 0 ]; then ++ log_warning_msg "Not running within Xen or no compatible utils" ++ exit 0 ++fi ++TOOLSTACK=$(/usr/lib/xen-common/bin/xen-toolstack 2>/dev/null) ++if [ $? -ne 0 ]; then ++ log_warning_msg "No usable Xen toolstack selected" ++ exit 0 ++fi ++ ++[ -e "$ROOT"/bin/xend ] && XEND="$ROOT"/bin/xend ++XENCONSOLED="$ROOT"/bin/xenconsoled ++XENCONSOLED_PIDFILE="/var/run/xenconsoled.pid" ++XENSTORED="$ROOT"/bin/xenstored ++XENSTORED_PIDFILE="/var/run/xenstore.pid" ++QEMU=/usr/bin/qemu-system-i386 ++QEMU_PIDFILE="/var/run/qemu-dom0.pid" ++QEMU_ARGS="-xen-domid 0 -xen-attach -name dom0 -nographic -M xenpv -daemonize -monitor /dev/null -serial /dev/null -parallel /dev/null" ++ ++modules_setup() ++{ ++ modprobe xenfs 2>/dev/null ++ modprobe xen-evtchn 2>/dev/null ++ modprobe xen-gntdev 2>/dev/null ++} ++ ++xenfs_setup() ++{ ++ [ -e "/proc/xen/capabilities" ] && return 0 ++ log_progress_msg "xenfs" ++ [ -d "/proc/xen" ] || return 1 ++ mount -t xenfs xenfs /proc/xen || return 1 ++ return 0 ++} ++ ++capability_check() ++{ ++ [ -e "/proc/xen/capabilities" ] || return 1 ++ grep -q "control_d" /proc/xen/capabilities || return 1 ++ return 0 ++} ++ ++env_setup() ++{ ++ [ -d /run/xen ] && return 0 ++ ++ mkdir -m 700 /run/xen ++ [ -x /sbin/restorecon ] && /sbin/restorecon /run/xen ++} ++ ++xend_start() ++{ ++ if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then ++ return 0 ++ fi ++ ++ log_progress_msg "xend" ++ xend_start_real ++ return $? ++} ++ ++xend_stop() ++{ ++ if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then ++ return 0 ++ fi ++ ++ log_progress_msg "xend" ++ xend_stop_real ++ return $? ++} ++ ++xend_restart() ++{ ++ if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then ++ return 0 ++ fi ++ ++ log_progress_msg "xend" ++ xend_stop_real ++ case "$?" in ++ 0|1) ++ xend_start_real ++ case "$?" in ++ 0) ;; ++ *) return 2 ;; ++ esac ++ ;; ++ *) return 2 ;; ++ esac ++ return 0 ++} ++ ++xend_start_real() ++{ ++ $XEND status && return 1 ++ $XEND start || return 2 ++ ++ i=0 ++ while [ $i -lt 10 ]; do ++ $XEND status && return 0 || true ++ i=$(($i + 1)) ++ sleep 1 ++ done ++ return 2 ++} ++ ++xend_stop_real() ++{ ++ log_progress_msg "xend" ++ $XEND status || return 0 ++ $XEND stop || return 1 ++} ++ ++xenconsoled_start() ++{ ++ log_progress_msg "xenconsoled" ++ xenconsoled_start_real ++ return $? ++} ++ ++xenconsoled_stop() ++{ ++ log_progress_msg "xenconsoled" ++ xenconsoled_stop_real ++ return $? ++} ++ ++xenconsoled_restart() ++{ ++ log_progress_msg "xenconsoled" ++ xenconsoled_stop_real ++ case "$?" in ++ 0|1) ++ xenconsoled_start_real ++ case "$?" in ++ 0) ;; ++ *) return 2 ;; ++ esac ++ ;; ++ *) return 2 ;; ++ esac ++ return 0 ++} ++ ++xenconsoled_start_real() ++{ ++ start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" --test > /dev/null \ ++ || return 1 ++ start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" -- \ ++ $XENCONSOLED_ARGS --pid-file="$XENCONSOLED_PIDFILE" \ ++ || return 2 ++} ++ ++xenconsoled_stop_real() ++{ ++ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$XENCONSOLED_PIDFILE" --name xenconsoled ++ RETVAL="$?" ++ [ "$RETVAL" = 2 ] && return 2 ++ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec "$XENCONSOLED" ++ [ "$?" = 2 ] && return 2 ++ rm -f $XENCONSOLED_PIDFILE ++ return "$RETVAL" ++} ++ ++qemu_start() ++{ ++ [ -x $QEMU ] || return 0 ++ log_progress_msg "qemu" ++ qemu_start_real ++ return $? ++} ++ ++qemu_stop() ++{ ++ [ -x $QEMU ] || return 0 ++ log_progress_msg "qemu" ++ qemu_stop_real ++ return $? ++} ++ ++qemu_restart() ++{ ++ [ -x $QEMU ] || return 0 ++ log_progress_msg "qemu" ++ qemu_stop_real ++ case "$?" in ++ 0|1) ++ qemu_start_real ++ case "$?" in ++ 0) ;; ++ *) return 2 ;; ++ esac ++ ;; ++ *) return 2 ;; ++ esac ++ return 0 ++} ++ ++qemu_start_real() ++{ ++ start-stop-daemon --start --quiet --pidfile "$QEMU_PIDFILE" --exec "$QEMU" --test > /dev/null \ ++ || return 1 ++ start-stop-daemon --start --quiet --pidfile "$QEMU_PIDFILE" --exec "$QEMU" -- \ ++ $QEMU_ARGS -pidfile "$QEMU_PIDFILE" \ ++ || return 2 ++} ++ ++qemu_stop_real() ++{ ++ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$QEMU_PIDFILE" --exec "$QEMU" ++ RETVAL="$?" ++ [ "$RETVAL" = 2 ] && return 2 ++ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec "$QEMU" ++ [ "$?" = 2 ] && return 2 ++ rm -f $QEMU_PIDFILE ++ return "$RETVAL" ++} ++ ++ ++xenstored_start() ++{ ++ log_progress_msg "xenstored" ++ start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" --test > /dev/null \ ++ || return 1 ++ [ -d "$XENSTORED_DIR" ] || mkdir -p "$XENSTORED_DIR" ++ [ -x /sbin/restorecon ] && /sbin/restorecon "$XENSTORED_DIR" ++ export XENSTORED_ROOTDIR="$XENSTORED_DIR" ++ start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" -- \ ++ $XENSTORED_ARGS --pid-file="$XENSTORED_PIDFILE" \ ++ || return 2 ++ ++ # Wait for xenstored to actually come up, timing out after 30 seconds ++ local time=0 ++ local timeout=30 ++ while [ $time -lt $timeout ] && ! `xenstore-read -s / >/dev/null 2>&1` ; do ++ time=$(( $time+1 )) ++ sleep 1 ++ done ++ ++ # Exit if we timed out ++ if ! [ $time -lt $timeout ] ; then ++ return 2 ++ fi ++} ++ ++init_dom0() ++{ ++ log_progress_msg "init-dom0" ++ if [ -e $ROOT/bin/xen-init-dom0 ] ; then ++ $ROOT/bin/xen-init-dom0 > /dev/null ++ else ++ xenstore-write "/local/domain/0/name" "Domain-0" ++ xenstore-write "/local/domain/0/domid" "0" ++ fi ++} ++ ++case "$1" in ++ start) ++ log_daemon_msg "Starting $DESC" ++ modules_setup ++ xenfs_setup ++ case "$?" in ++ 0) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ capability_check ++ case "$?" in ++ 0) ;; ++ *) log_end_msg 255; exit ;; ++ esac ++ env_setup ++ xenstored_start ++ case "$?" in ++ 0|1) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ xenconsoled_start ++ case "$?" in ++ 0|1) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ xend_start ++ case "$?" in ++ 0|1) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ init_dom0 ++ case "$?" in ++ 0|1) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ qemu_start ++ case "$?" in ++ 0|1) ;; ++ *) log_end_msg 1; exit ;; ++ esac ++ log_end_msg 0 ++ ;; ++ stop) ++ capability_check ++ case "$?" in ++ 0) ;; ++ *) exit ;; ++ esac ++ log_daemon_msg "Stopping $DESC" ++ ret=0 ++ qemu_stop ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ xend_stop ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ xenconsoled_stop ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ log_end_msg $ret ++ ;; ++ restart|force-reload) ++ capability_check ++ case "$?" in ++ 0) ;; ++ *) exit ;; ++ esac ++ log_daemon_msg "Restarting $DESC" ++ ret=0 ++ qemu_restart ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ xend_restart ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ xenconsoled_restart ++ case "$?" in ++ 0|1) ;; ++ *) ret=1 ;; ++ esac ++ log_end_msg $ret ++ ;; ++ *) ++ echo "Usage: $0 {start|stop|restart|force-reload}" >&2 ++ exit 3 ++ ;; ++esac ++ ++exit 0 diff --cc debian/xen-utils-common.xend.default index 0000000000,0000000000..589da356ad new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.xend.default @@@ -1,0 -1,0 +1,2 @@@ ++XENCONSOLED_ARGS= ++XENSTORED_ARGS= diff --cc debian/xen-utils-common.xendomains.default index 0000000000,0000000000..34aeb12502 new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.xendomains.default @@@ -1,0 -1,0 +1,60 @@@ ++# The xendomains script can send SysRq requests to domains on shutdown. ++# If you don't want to MIGRATE, SAVE, or SHUTDOWN, this may be a possibility ++# to do a quick and dirty shutdown ("s e i u o") or at least sync the disks ++# of the domains ("s"). ++# ++# XENDOMAINS_SYSRQ= ++ ++# Set this to a non-empty string if you want to migrate virtual machines ++# on shutdown. The string will be passed to the xm migrate DOMID command ++# as is: It should contain the target IP address of the physical machine ++# to migrate to and optionally parameters like --live. Leave empty if ++# you don't want to try virtual machine relocation on shutdown. ++# If migration succeeds, neither SAVE nor SHUTDOWN will be executed for ++# that domain. ++# ++# XENDOMAINS_MIGRATE= ++ ++# Directory to save running domains to when the system (dom0) is ++# shut down. Will also be used to restore domains from if # XENDOMAINS_RESTORE ++# is set (see below). Leave empty to disable domain saving on shutdown ++# (e.g. because you rather shut domains down). ++# If domain saving does succeed, SHUTDOWN will not be executed. ++# ++XENDOMAINS_SAVE=/var/lib/xen/save ++ ++# This variable determines whether saved domains from XENDOMAINS_SAVE ++# will be restored on system startup. ++# ++XENDOMAINS_RESTORE=true ++ ++# This variable sets the directory where domains configurations ++# are stored that should be started on system startup automatically. ++# Leave empty if you don't want to start domains automatically ++# (or just don't place any xen domain config files in that dir). ++# Note that the script tries to be clever if both RESTORE and AUTO are ++# set: It will first restore saved domains and then only start domains ++# in AUTO which are not running yet. ++# Note that the name matching is somewhat fuzzy. ++# ++XENDOMAINS_AUTO=/etc/xen/auto ++ ++# On xendomains stop, a number of xm commands (xm migrate, save, shutdown, ++# shutdown --all) may be executed. In the worst case, these commands may ++# stall forever, which will prevent a successful shutdown of the machine. ++# If this variable is non-zero, the script will set up a watchdog timer ++# for every of these xm commands and time it out after the number of seconds ++# specified by this variable. ++# Note that SHUTDOWN_ALL will not be called if no virtual machines or only ++# zombies are still running, so you don't need to enable this timeout just ++# for the zombie case. ++# The setting should be large enough to make sure that migrate/save/shutdown ++# can succeed. If you do live migrations, keep in mind that live migration ++# of a 1GB machine over Gigabit ethernet may actually take something like ++# 100s (assuming that live migration uses 10% of the network # bandwidth). ++# Depending on the virtual machine, a shutdown may also require a significant ++# amount of time. So better setup this variable to a huge number and hope the ++# watchdog never fires. ++# ++XENDOMAINS_STOP_MAXWAIT=300 ++ diff --cc debian/xen-utils-common.xendomains.init index 0000000000,0000000000..e1164b21bb new file mode 100644 --- /dev/null +++ b/debian/xen-utils-common.xendomains.init @@@ -1,0 -1,0 +1,228 @@@ ++#!/bin/bash ++### BEGIN INIT INFO ++# Provides: xendomains ++# Required-Start: $syslog $remote_fs xen ++# Required-Stop: $syslog $remote_fs xen ++# Should-Start: drbd iscsi openvswitch-switch ++# Should-Stop: drbd iscsi openvswitch-switch ++# X-Start-Before: corosync heartbeat libvirtd ++# X-Stop-After: corosync heartbeat libvirtd ++# Default-Start: 2 3 4 5 ++# Default-Stop: 0 1 6 ++# Short-Description: Start/stop secondary xen domains ++# Description: Start / stop domains automatically when domain 0 ++# boots / shuts down. ++### END INIT INFO ++ ++. /lib/init/vars.sh ++. /lib/lsb/init-functions ++ ++xen list &> /dev/null ++if test $? -ne 0 ++then ++ exit 0; ++fi ++ ++TOOLSTACK=$(/usr/lib/xen-common/bin/xen-toolstack 2>/dev/null) ++if [ $? -ne 0 ]; then ++ log_warning_msg "No usable Xen toolstack selected" ++ exit 0 ++fi ++if [ "$(basename "$TOOLSTACK")" != xm ] && [ "$(basename "$TOOLSTACK")" != xl ]; then ++ exit 0 ++fi ++ ++if ! [ -e /proc/xen/privcmd ]; then ++ exit 0 ++fi ++ ++[ -r /etc/default/xendomains ] && . /etc/default/xendomains ++ ++shopt -s nullglob ++ ++check_config_name() ++{ ++ /usr/lib/xen-common/bin/xen-init-name "$1" 2>/dev/null ++} ++ ++check_running() ++{ ++ xen domid "$1" > /dev/null 2>&1 ++ return $? ++} ++ ++timeout_coproc() ++{ ++ local TIMEOUT=$1 ++ shift ++ ++ coproc "$@" 2>&1 1>/dev/null ++ ++ local COPROC_OUT ++ exec {COPROC_OUT}<&"${COPROC[0]}" ++ local PID="$COPROC_PID" ++ ++ for no in $(seq 0 $TIMEOUT); do ++ if [ -z "$COPROC_PID" ]; then break; fi ++ sleep 1 ++ log_action_cont_msg ++ done ++ ++ kill -INT "$COPROC_PID" >/dev/null 2>&1 ++ wait $PID ++ local rc=$? ++ log_action_end_msg $rc ++ ++ [ $rc -gt 0 ] && cat <&$COPROC_OUT ++ exec <&$COPROC_OUT- ++} ++ ++timeout_domain() ++{ ++ name="$1" ++ TIMEOUT="$2" ++ for no in $(seq 0 $TIMEOUT); do ++ if ! check_running "$name"; then return 0; fi ++ sleep 1 ++ log_action_cont_msg ++ done ++ return 1 ++} ++ ++do_start_restore() ++{ ++ [ -n "$XENDOMAINS_SAVE" ] || return ++ [ -d "$XENDOMAINS_SAVE" ] || return ++ [ -n "$XENDOMAINS_RESTORE" ] || return ++ ++ for file in $XENDOMAINS_SAVE/*; do ++ if [ -f $file ] ; then ++ name="${file##*/}" ++ log_action_begin_msg "Restoring Xen domain $name (from $file)" ++ ++ out=$(xen restore "$file" 2>&1 1>/dev/null) ++ case "$?" in ++ 0) ++ rm "$file" ++ domains[$name]='started' ++ log_action_end_msg 0 ++ ;; ++ *) ++ domains[$name]='failed' ++ log_action_end_msg 1 ++ echo "$out" ++ ;; ++ esac ++ fi ++ done ++} ++ ++do_start_auto() ++{ ++ [ -n "$XENDOMAINS_AUTO" ] || return ++ [ -d "$XENDOMAINS_AUTO" ] || return ++ ++ for file in $XENDOMAINS_AUTO/*; do ++ name="$(check_config_name $file)" ++ ++ if [ "${domains[$name]}" = started ]; then ++ : ++ elif check_running "$name"; then ++ log_action_msg "Xen domain $name already running" ++ else ++ log_action_begin_msg "Starting Xen domain $name (from $file)" ++ ++ if [ "${domains[$name]}" = failed ]; then ++ log_action_end_msg 1 "restore failed" ++ else ++ out=$(xen create --quiet --defconfig "$file" 2>&1 1>/dev/null) ++ case "$?" in ++ 0) ++ log_action_end_msg 0 ++ ;; ++ *) ++ log_action_end_msg 1 ++ echo "$out" ++ ;; ++ esac ++ fi ++ fi ++ done ++} ++ ++do_start() ++{ ++ declare -A domains ++ ++ do_start_restore ++ do_start_auto ++} ++ ++do_stop_migrate() ++{ ++ [ -n "$XENDOMAINS_MIGRATE" ] || return ++ ++ while read id name rest; do ++ log_action_begin_msg "Migrating Xen domain $name ($id)" ++ (timeout_coproc "$XENDOMAINS_STOP_MAXWAIT" xen migrate $id $XENDOMAINS_MIGRATE) ++ done < <(/usr/lib/xen-common/bin/xen-init-list) ++} ++ ++do_stop_save() ++{ ++ [ -n "$XENDOMAINS_SAVE" ] || return ++ [ -d "$XENDOMAINS_SAVE" ] || mkdir -m 0700 -p "$XENDOMAINS_SAVE" ++ ++ while read id name rest; do ++ log_action_begin_msg "Saving Xen domain $name ($id)" ++ (timeout_coproc "$XENDOMAINS_STOP_MAXWAIT" xen save $id $XENDOMAINS_SAVE/$name) ++ done < <(/usr/lib/xen-common/bin/xen-init-list) ++} ++ ++do_stop_shutdown() ++{ ++ while read id name rest; do ++ log_action_begin_msg "Shutting down Xen domain $name ($id)" ++ xen shutdown $id 2>&1 1>/dev/null ++ log_action_end_msg $? ++ done < <(/usr/lib/xen-common/bin/xen-init-list) ++ while read id name rest; do ++ log_action_begin_msg "Waiting for Xen domain $name ($id) to shut down" ++ timeout_domain "$name" "$XENDOMAINS_STOP_MAXWAIT" ++ log_action_end_msg $? ++ done < <(/usr/lib/xen-common/bin/xen-init-list) ++} ++ ++do_stop() ++{ ++ do_stop_migrate ++ do_stop_save ++ do_stop_shutdown ++} ++ ++case "$1" in ++ start) ++ do_start ++ ;; ++ ++ stop) ++ do_stop ++ ;; ++ ++ restart) ++ do_stop ++ do_start ++ ;; ++ ++ reload|force-reload) ++ do_stop ++ do_start ++ ;; ++ ++ *) ++ echo "Usage: $0 {start|stop|restart|reload|force-reload}" ++ exit 3 ++ ;; ++esac ++ ++exit 0 diff --cc debian/xen-utils.NEWS index 0000000000,0000000000..607c164352 new file mode 100644 --- /dev/null +++ b/debian/xen-utils.NEWS @@@ -1,0 -1,0 +1,8 @@@ ++xen-3.0 (3.4.0-1) UNRELEASED; urgency=low ++ ++ This version does not longer ship the ioemu part, aka the patched qemu. ++ So it does not support ++ * full virtualized domains and ++ * virtual console support for paravirtualized domains. ++ ++ -- Bastian Blank Sat, 18 Jul 2009 15:05:31 +0200 diff --cc debian/xen-utils.README.Debian index 0000000000,0000000000..33bc454698 new file mode 100644 --- /dev/null +++ b/debian/xen-utils.README.Debian @@@ -1,0 -1,0 +1,53 @@@ ++Xen for Debian ++============== ++ ++Config behaviour ++---------------- ++ ++The Debian packages changes the behaviour of some config options. ++ ++The options "kernel", "initrd" and "loader" searches in the Xen private boot ++directory (/usr/lib/xen-$version/boot) first. "bootloader" and "device_model" ++also searches the Xen private bin directory (/usr/lib/xen-$version/bin). This ++means that the following entries will properly find anything: ++ loader = 'hvmloader' ++ bootloader = 'pygrub' ++ ++Network setup ++------------- ++ ++The Debian package of Xen don't change the network setup in any way. This ++differs from the upstream version, which overwrites the main network card ++(eth0) with a bridge setup and may break the network at this point.. ++ ++To setup a bridge please follow the instructions in the manpage for ++bridge-utils-interfaces(5). ++ ++You can also change the /etc/xen/xend-config.sxp file and re-enable the Xen ++included network setup by adding ++ (network-script network-bridge) ++to the file. But please note that this may or may not work. ++ ++Loop devices ++------------ ++ ++If you plan hosting virtual domains with file backed block devices (ie. the ++ones xen-tools creates by default) be careful about two issues: ++ ++1. Maximum number of loop devices ++ By default the loop driver supports a maximum of 8 loop devices. Of ++ course since every Xen domain uses at least two (one for the data and one ++ for the swap) this number is absolutely insufficient. You should increase ++ it by adding a file named local-loop in /etc/modprobe.d containing the ++ string "options loop max_loop=128", if the loop driver is compiled as a ++ module, or by appending the string max_loop=128 to your kernel parameters ++ if the driver is in-kernel. Of course you can increase or decrease the ++ number 128 as you see fit. ++ ++2. Driver loading (only if loop is compiled as a module) ++ Normally the loop driver gets loaded when the first loop device is ++ accessed. When using udev, though, the loop devices get created only ++ after the driver gets loaded. This means that Xen will fail if the loop ++ driver is not already loaded when it tries to start a file-backed virtual ++ domain. To fix this just add "loop" in your /etc/modules file, thus ++ forcing it to be loaded at boot time. diff --cc debian/xenstore-utils.install index 0000000000,0000000000..199b491755 new file mode 100644 --- /dev/null +++ b/debian/xenstore-utils.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/bin/xenstore-*