void-packages/srcpkgs/xen4.2/template
Juan RP b556627897 xen{,4.2}: update to 4.3.1 and 4.2.3 respectively.
Splitted xen pkg into smaller packages:
	- xen-hypervisor (contains just the hypervisor)
	- xen-libs (contains the shared libraries)
	- xen (contains all utilities)
2013-11-16 11:59:27 +01:00

150 lines
4.3 KiB
Text

# Template file for 'xen'
pkgname=xen4.2
version=4.2.3
wrksrc=xen-${version}
revision=1
short_desc="Xen Utilities (4.2.x series)"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://xen.org"
license="GPL-2"
distfiles="http://bits.xensource.com/oss-xen/release/$version/xen-$version.tar.gz"
checksum=69b6a73701383d609ad094a38925004e8595755fb39a6fafd579ba754e8667db
long_desc="
This package provides the official Xen Hypervisor and related utilities
for starting/stopping/accessing unprivileged domains (domUs)."
# Update this if support for ARM7 is added.
only_for_archs="i686 x86_64"
hostmakedepends="which wget bison pkg-config"
makedepends="lzo-devel openssl-devel e2fsprogs-devel zlib-devel gnutls-devel>=3.1.5
libbluetooth-devel pciutils-devel libX11-devel libXext-devel SDL-devel MesaLib-devel
ncurses-devel liblzma-devel python-devel yajl-devel libuuid-devel libglib-devel iproute2
bridge-utils dev86 acpica-utils"
if [ "${XBPS_MACHINE}" = "x86_64" ]; then
makedepends+=" gcc-multilib"
fi
do_configure() {
unset CC LD AR AS RANLIB CPP CFLAGS CPPFLAGS LDFLAGS
./configure ${configure_args}
}
do_build() {
if [ "${XBPS_MACHINE}" = "x86_64" ]; then
install -d ${DESTDIR}/usr/lib
cd ${DESTDIR}/usr
ln -sf lib lib64
fi
cd ${wrksrc}
unset CC LD AR AS RANLIB CPP CFLAGS CPPFLAGS LDFLAGS
make ${makejobs} DISTDIR=${wrksrc}/${pkgver}-distdir
}
do_install() {
if [ "${XBPS_MACHINE}" = "x86_64" ]; then
install -d ${DESTDIR}/usr/lib
cd ${DESTDIR}/usr
ln -sf lib lib64
cd ${wrksrc}
fi
unset CC LD AR AS RANLIB CPP CFLAGS CPPFLAGS LDFLAGS
make DESTDIR=${DESTDIR} install
# Move example config files into correct directory.
vmkdir usr/share/examples/xen
mv ${DESTDIR}/etc/xen/x*example* ${DESTDIR}/usr/share/examples/xen
mv ${DESTDIR}/etc/xen/cpupool ${DESTDIR}/usr/share/examples/xen
mv ${DESTDIR}/etc/init.d/xendomains ${DESTDIR}/etc/xen/scripts
# Remove useless stuff.
rm -rf ${DESTDIR}/etc/init.d ${DESTDIR}/usr/local
rm -f ${DESTDIR}/install.sh ${DESTDIR}/usr/lib64
rm -rf ${DESTDIR}/usr/bin/qemu-*-xen
rm -rf ${DESTDIR}/usr/share/qemu-xen
rm -f ${DESTDIR}/boot/xen{,-4,-4.2}.gz
rm -f ${DESTDIR}/usr/sbin/xen-python-path
rm -f ${DESTDIR}/{install,COPYING,README,usr/lib/lib}
rm -rf ${DESTDIR}/etc/{hotplug,udev}
# Move bash-completion to the correct dir.
vmkdir usr/share/bash-completion/completions
mv ${DESTDIR}/etc/bash_completion.d/* \
${DESTDIR}/usr/share/bash-completion/completions
# Install systemd services.
vmkdir usr/lib/systemd/system
install -m644 ${FILESDIR}/*.{mount,service} ${DESTDIR}/usr/lib/systemd/system
vmkdir usr/lib/modules-load.d
install -m644 ${FILESDIR}/xen.conf ${DESTDIR}/usr/lib/modules-load.d
install -Dm644 ${FILESDIR}/tmpfiles.d-xen.conf \
${DESTDIR}/usr/lib/tmpfiles.d/xen.conf
# Move bins to /usr/bin.
mv ${DESTDIR}/usr/sbin/* ${DESTDIR}/usr/bin/
# Drop xen/xm stuff (obsolete).
rm -f ${DESTDIR}/usr/bin/{xm,xend}
rm -f ${DESTDIR}/etc/xen/*.{sxp,xml}
rm -f ${DESTDIR}/usr/share/man/man5/{xmdomain.cfg,xend-config.sxp}.5
rm -f ${DESTDIR}/usr/share/man/man1/xm.1
rm -f ${DESTDIR}/usr/share/doc/xen/html/man/xm.1.html
rm -f ${DESTDIR}/usr/share/doc/xen/html/man/{xmdomain.cfg,xend-config.sxp}.5.html
rm -f ${DESTDIR}/usr/share/examples/xen/xmexample*
}
xen4.2-hypervisor_package() {
short_desc="Xen hypervisor (4.2 series)"
provides="xen-hypervisor-${version}_${revision}"
replaces="xen-hypervisor>=0"
nostrip_files="xen-syms-${version}"
pkg_install() {
vmove boot
}
}
xen4.2-devel_package() {
short_desc+=" - development files"
provides="xen-devel-${version}_${revision}"
replaces="xen-devel>=0"
pkg_install() {
vmove usr/include
vmove "usr/lib/*.a"
vmove "usr/lib/*.so"
}
}
xen4.2-libs_package() {
short_desc+=" - runtime libraries"
provides="xen-libs-${version}_${revision}"
replaces="xen-libs>=0"
pkg_install() {
vmove "usr/lib/*.so.*"
}
}
xen4.2_package() {
make_dirs="
/var/lib/xenstored 755 root root
/var/lib/xen/xenpaging 755 root root
/var/xen/dump 755 root root
/etc/xen/auto 755 root root"
conf_files="
/etc/default/xendomains
/etc/default/xencommons
/etc/xen/xl.conf"
nostrip_files="
openbios-ppc
openbios-sparc32
openbios-sparc64
palcode-clipper"
pycompile_module="xen grub"
depends="iproute2 bridge-utils xen-hypervisor"
provides="xen-${version}_${revision}"
replaces="xen>=0"
pkg_install() {
vmove all
}
}