Codebase list libvirt / debian/1.2.10_rc1-1 debian / rules
debian/1.2.10_rc1-1

Tree @debian/1.2.10_rc1-1 (Download .tar.gz)

rules @debian/1.2.10_rc1-1raw · history · blame

#!/usr/bin/make -f

DEB_RELEASE=$(shell dpkg-parsechangelog -SVersion | sed 's/[^-]\+-//')
DEB_BUILDHOST=$(shell hostname)
DEB_BUILDDATE=$(shell date +"%F-%T")
DEB_BUILDUSER=${USER}

ifneq (,$(findstring $(DEB_HOST_ARCH_OS), linux))
  ifneq (,$(findstring $(DEB_HOST_ARCH), i386 amd64))
    WITH_XEN = --with-xen
    WITH_LIBXL = --with-libxl
    WITH_VBOX = --with-vbox
    MAKE_CHECK = 1
  else
    WITH_XEN            = --without-xen
    WITH_LIBXL          = --without-libxl
    WITH_VBOX           = --without-vbox
  endif
  WITH_STORAGE_LVM    = --with-storage-lvm
  WITH_STORAGE_ISCSI  = --with-storage-iscsi
  WITH_STORAGE_DISK   =	--with-storage-disk
  WITH_STORAGE_SHEEPDOG = --with-storage-sheepdog
  WITH_STORAGE_RBD    = --with-storage-rbd
  WITH_UDEV           = --with-udev
  WITH_CAPNG          = --with-capng
  WITH_POLKIT         = --with-polkit
  WITH_MACVTAP        = --with-macvtap
  WITH_NETWORK        = --with-network
  WITH_QEMU           = --with-qemu
  WITH_OPENVZ         = --with-openvz
  WITH_NETCF          = --with-netcf
  WITH_SANLOCK        = --with-sanlock
  WITH_INIT_SCRIPT    =	--with-init-script=systemd
  WITH_SYSTEMD        = --with-systemd-daemon
  WITH_AUDIT          = --with-audit
  WITH_SELINUX        = --with-selinux --with-secdriver-selinux --with-selinux-mount=/sys/fs/selinux
  WITH_APPARMOR       = --with-apparmor --with-secdriver-apparmor --with-apparmor-profiles
  ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 armel armhf i386 ia64 powerpc s390))
      WITH_DTRACE     = --with-dtrace
  else
      WITH_DTRACE     = --without-dtrace
  endif
  ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 i386 ia64 mips mipsel powerpc))
      WITH_NUMA       = --with-numactl
  else
      WITH_NUMA       = --without-numactl
  endif
  ifneq (,$(findstring $(DEB_HOST_ARCH), ia64))
      WITH_LXC        = --without-lxc
  else
      WITH_LXC        = --with-lxc
  endif
else
  WITH_STORAGE_LVM    = --without-storage-lvm
  WITH_STORAGE_ISCSI  = --without-storage-iscsi
  WITH_STORAGE_DISK   =	--without-storage-disk
  WITH_STORAGE_SHEEPDOG = --without-storage-sheepdog
  WITH_STORAGE_RBD    = --without-storage-rbd
  WITH_UDEV           = --without-udev
  WITH_CAPNG          = --without-capng
  WITH_POLKIT         = --without-polkit
  WITH_MACVTAP        = --without-macvtap
  WITH_NETWORK        = --without-network
  WITH_QEMU           = --without-qemu
  WITH_LXC            = --without-lxc
  WITH_NUMA           = --without-numactl
  WITH_NETCF          = --without-netcf
  WITH_INIT_SCRIPT    =	--with-init-script=none
  WITH_SYSTEMD        = --without-systemd-daemon
  WITH_AUDIT          = --without-audit
  WITH_SELINUX        = --without-selinux
  WITH_APPARMOR       = --without-apparmor
  WITH_DTRACE         = --without-dtrace
  WITH_XEN            = --without-xen
  WITH_LIBXL          = --without-libxl
  WITH_VBOX           = --without-vbox
endif

DEB_CONFIGURE_EXTRA_ARGS :=      \
	--with-packager="$(DEB_BUILDUSER) $(DEB_BUILDDATE) $(DEB_BUILDHOST)" \
	--with-packager-version="$(DEB_RELEASE)" \
	--with-default-editor="sensible-editor" \
	--disable-silent-rules   \
	--disable-rpath          \
	$(WITH_QEMU)		 \
	--with-qemu-user=libvirt-qemu  \
	--with-qemu-group=libvirt-qemu \
	$(WITH_OPENVZ)		 \
	--with-avahi             \
	--with-sasl              \
	--with-yajl              \
	--with-ssh2		 \
	$(WITH_POLKIT)		 \
	$(WITH_UDEV)		 \
	--with-storage-fs        \
	$(WITH_STORAGE_LVM)	 \
	$(WITH_STORAGE_ISCSI)	 \
	$(WITH_STORAGE_DISK)	 \
	$(WITH_STORAGE_SHEEPDOG) \
	$(WITH_STORAGE_RBD)      \
	$(WITH_INIT_SCRIPT)      \
	$(WITH_NUMA)             \
	$(WITH_SELINUX)          \
	$(WITH_APPARMOR)         \
	--without-esx		 \
	--without-phyp           \
	$(WITH_CAPNG)		 \
	--enable-debug		 \
	$(WITH_MACVTAP)		 \
	$(WITH_NETWORK)		 \
	$(WITH_NETCF)		 \
	$(WITH_XEN)		 \
	$(WITH_LIBXL)		 \
	$(WITH_VBOX)		 \
	$(WITH_LXC)              \
	$(WITH_DTRACE)           \
	$(WITH_AUDIT)            \
	--without-hal            \
	--without-firewalld      \
	--without-attr

DEB_BUILDDIR := $(CURDIR)/debian/build
LOGROTATE = $(basename $(basename $(notdir $(wildcard daemon/libvirtd*.logrotate.in))))
EXAMPLES_DIR = $(CURDIR)/debian/libvirt-doc/usr/share/doc/libvirt-doc/examples/

%:
	dh $@ --builddirectory=$(DEB_BUILDDIR) --parallel

override_dh_auto_configure:
	dh_auto_configure -- $(DEB_CONFIGURE_EXTRA_ARGS)

override_dh_auto_test:
	export LD_PRELOAD="";     \
	export VIR_TEST_DEBUG=1;  \
	[ -n "$(MAKE_CHECK)" ] || exit 0; \
	if ! dh_auto_test -O--builddirectory=$(DEB_BUILDDIR); then \
	    cat ./debian/build/gnulib/tests/test-suite.log \
	        ./debian/build/tests/test-suite.log; \
	    exit 1; \
	fi

override_dh_install:
	dh_install
	# Copy upstream files to debian/ so dh_* can find them
	cp debian/tmp/usr/lib/libvirt/libvirt-guests.sh \
	    debian/libvirt-daemon-system.libvirt-guests.init
	cp tools/libvirt-guests.sysconf \
	    debian/libvirt-daemon-system.libvirt-guests.default
	# Add our backward compat polkit rule
	cp debian/polkit/60-libvirt.rules \
	    debian/libvirt-daemon-system/usr/share/polkit-1/rules.d/
	cp debian/polkit/60-libvirt.pkla \
	    debian/libvirt-daemon-system/var/lib/polkit-1/localauthority/10-vendor.d/
ifneq (,$(findstring $(DEB_HOST_ARCH_OS), linux))
	# Linux supports more nice things:
	dh_install -p libvirt-daemon-system usr/lib/systemd/system lib/systemd/
	dh_install -p libvirt-daemon-system usr/lib/libvirt/virt-aa-helper
	dh_install -p libvirt-daemon-system etc/apparmor.d
	dh_install -p libvirt-daemon-system usr/share/polkit-1
	# Not all linux arches have systemtap yet
	mkdir -p debian/tmp/usr/share/systemtap
	dh_install -p libvirt-daemon-system usr/share/systemtap
	dh_install -p libvirt-daemon-system etc/libvirt/lxc.conf
	dh_install -p libvirt-daemon-system etc/libvirt/qemu.conf
	dh_install -p libvirt-daemon-system etc/libvirt/qemu-lockd.conf
	dh_install -p libvirt-daemon-system etc/libvirt/qemu-sanlock.conf
	dh_install -p libvirt-daemon-system etc/libvirt/qemu/networks/
	dh_install -p libvirt-daemon-system etc/libvirt/nwfilter/
	dh_install -p libvirt-clients etc/libvirt/virt-login-shell.conf
endif

	for l in $(LOGROTATE); do \
		cp $(CURDIR)/debian/build/daemon/$$l.logrotate \
	        debian/libvirt-daemon-system.$$l.logrotate; \
		dh_installlogrotate --name=$$l;     \
	done

	# Don't ship any la files
	rm debian/libvirt-daemon/usr/lib/libvirt/connection-driver/*.la
	# Don't ship api files in the daemon package
	rm -r debian/libvirt-daemon/usr/share/libvirt/api/

override_dh_installinit:
	dh_systemd_enable
	dh_installinit -p libvirt-daemon-system --name=libvirtd --restart-after-upgrade -- defaults 28 72
	dh_installinit -p libvirt-daemon-system --name=libvirt-guests --no-restart-on-upgrade -- defaults 29 71
	dh_systemd_start -p libvirt-daemon-system --restart-after-upgrade libvirtd.service
	dh_systemd_start -p libvirt-daemon-system --no-restart-on-upgrade libvirt-guests.service virtlockd.socket virtlockd.service

override_dh_installdocs:
	dh_installdocs
	# Remove binaries and object files examples
	[ ! -d $(EXAMPLES_DIR) ] || find $(EXAMPLES_DIR) -name "*.o" -type f -delete -o -name .libs -type d -exec rm -rf {} \;
	rm -f $(EXAMPLES_DIR)domain-events/events-c/event-test
	rm -f $(EXAMPLES_DIR)dominfo/info1
	rm -f $(EXAMPLES_DIR)domsuspend/suspend
	rm -f $(EXAMPLES_DIR)hellolibvirt/hellolibvirt

override_dh_strip:
	dh_strip --dbg-package=libvirt0-dbg

override_dh_auto_clean:
	[ ! -f Makefile ] || dh_auto_clean
	rm -f $(CURDIR)/debian/libvirt-daemon-system.libvirt-guests.init
	rm -f $(CURDIR)/debian/libvirt-daemon-system.libvirt-guests.default
	rm -f $(CURDIR)/debian/libvirt-daemon-system.*.logrotate
	rm -f $(CURDIR)/debian/*.service
	rm -rf $(DEB_BUILDDIR)

override_dh_installchangelogs:
	dh_installchangelogs -plibvirt0
	dh_installchangelogs -Nlibvirt0 -XChangeLog