aboutsummaryrefslogtreecommitdiffstats
path: root/tools/misc
diff options
context:
space:
mode:
authorTim Deegan <Tim.Deegan@citrix.com>2011-05-16 13:34:25 +0100
committerTim Deegan <Tim.Deegan@citrix.com>2011-05-16 13:34:25 +0100
commitad06dc009b0e1aee8f1ce7530d5f285d5bf3310b (patch)
treec556eaf8340e07ad9dc6d82a26f2d55d4b82f668 /tools/misc
parente91a676bbabdef7484616755a3895c64268df8e4 (diff)
downloadxen-ad06dc009b0e1aee8f1ce7530d5f285d5bf3310b.tar.gz
xen-ad06dc009b0e1aee8f1ce7530d5f285d5bf3310b.tar.bz2
xen-ad06dc009b0e1aee8f1ce7530d5f285d5bf3310b.zip
Build target to wrap dist/install in a .deb archive.
Adds "make deb", which does a "make dist" build and wraps the resulting dist/install files in dist/xen-<version>.deb This is _not_ a "packaged" version of Xen for Debian users, nor is it intended to compete with anyone else's packaging efforts. In particular it doesn't do any of the boot-time or fstab fixups needed to actually start the xen tools. It's just a quick hack for developers to be able to quickly install and uninstall a Xen build on a test box. Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Diffstat (limited to 'tools/misc')
-rw-r--r--tools/misc/mkdeb56
1 files changed, 56 insertions, 0 deletions
diff --git a/tools/misc/mkdeb b/tools/misc/mkdeb
new file mode 100644
index 0000000000..603cd6baa8
--- /dev/null
+++ b/tools/misc/mkdeb
@@ -0,0 +1,56 @@
+#!/bin/sh
+#
+# mkdeb: package the dist/install output of a Xen build in a .deb
+#
+# Takes 2 arguments, the path to the dist directory and the version
+
+set -e
+
+if test -z "$1" -o -z "$2" ; then
+ echo "usage: $0 path-to-XEN_ROOT xen-version"
+ exit 1
+fi
+
+cd $1
+version=$2
+if test "$XEN_TARGET_ARCH" = "x86_32"; then
+ arch=i386
+else
+ arch=amd64
+fi
+
+# Prepare the directory to package
+cd dist
+rm -rf deb
+cp -a install deb
+
+# Debian doesn't use /usr/lib64 for 64-bit libraries
+if test -d deb/usr/lib64 ; then
+ cp -a deb/usr/lib64/* deb/usr/lib/
+ rm -rf deb/usr/lib64
+fi
+
+# Fill in the debian boilerplate
+mkdir -p deb/DEBIAN
+cat >deb/DEBIAN/control <<EOF
+Package: xen-upstream-$version
+Source: xen-upstream
+Version: $version
+Architecture: $arch
+Maintainer: Unmaintained snapshot
+Section: admin
+Priority: optional
+Installed-Size: $(du -ks deb | cut -f1)
+Description: Xen hypervisor and tools, version $version
+ This package contains the Xen hypervisor and associated tools, built
+ from a source tree. It is not a fully packaged and supported Xen, just
+ the output of a xen "make dist" wrapped in a .deb to make it easy to
+ uninstall.
+EOF
+
+# Package it up
+chown -R root:root deb
+dpkg --build deb $xen-upstream-$version.deb
+
+# Tidy up after ourselves
+rm -rf deb