X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=debian%2Frules;h=2a70bd63f38c47ec8104bd303e936bc6fde5cea7;hb=d0a46cb4608e632f5028034762f0adde2ce947a0;hp=0d0abf1647f4d88736da6b7141dd07967f9043ba;hpb=a0bc29a541fc7dc6e20137d5558e2094d614e6ab;p=cascardo%2Fovs.git diff --git a/debian/rules b/debian/rules index 0d0abf164..2a70bd63f 100755 --- a/debian/rules +++ b/debian/rules @@ -9,114 +9,85 @@ # # Modified to make a template file for a multi-binary package with separated # build-arch and build-indep targets by Bill Allombert 2001 +#export DH_VERBOSE=1 -# Official build number. Leave set to 0 if not an official build. -BUILD_NUMBER = 0 +PACKAGE=openvswitch +PACKAGE_DKMS=openvswitch-datapath-dkms +DEB_UPSTREAM_VERSION=$(shell dpkg-parsechangelog | sed -rne 's,^Version: ([0-9]:)*([^-]+).*,\2,p') ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) -NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) -MAKEFLAGS += -j$(NUMJOBS) -endif - -ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) -CFLAGS += -O0 +PARALLEL = -j$(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) else -CFLAGS += -O2 +PARALLEL = endif -configure: configure-stamp -configure-stamp: - dh_testdir - test -e configure || ./boot.sh - test -d _debian || mkdir _debian - echo $$CC - cd _debian && ( \ - test -e Makefile || \ - ../configure --prefix=/usr --localstatedir=/var --enable-ssl \ - --with-build-number=$(BUILD_NUMBER) \ - CFLAGS="$(CFLAGS)" $(DATAPATH_CONFIGURE_OPTS)) - touch configure-stamp - -#Architecture -build: build-arch build-indep - -build-arch: build-arch-stamp -build-arch-stamp: configure-stamp - $(MAKE) -C _debian +%: + dh $@ --with autoreconf,python2 --parallel + +# use --as-needed only if supported by dh-autoreconf (to simplify backporting) +DH_AS_NEEDED=$(shell dpkg --compare-versions $$(dpkg --status dh-autoreconf | grep Version | cut -d' ' -f2) ge 6 && echo --as-needed) +override_dh_autoreconf: + dh_autoreconf $(DH_AS_NEEDED) + +override_dh_auto_configure: + dh_auto_configure -- --enable-ssl $(DATAPATH_CONFIGURE_OPTS) + +override_dh_auto_test: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) - $(MAKE) -C _debian check + if $(MAKE) check TESTSUITEFLAGS='$(PARALLEL)' RECHECK=yes; then :; \ + else \ + cat tests/testsuite.log; \ + exit 1; \ + fi endif - touch $@ - -build-indep: build-indep-stamp -build-indep-stamp: configure-stamp - $(MAKE) -C _debian dist distdir=openvswitch - touch $@ - -clean: - dh_testdir - dh_testroot - rm -f build-arch-stamp build-indep-stamp configure-stamp - rm -rf _debian - [ ! -f Makefile ] || $(MAKE) distclean - dh_clean - debconf-updatepo - -install: install-indep install-arch -install-indep: build-indep - dh_testdir - dh_testroot - dh_clean -k -i - dh_installdirs -i - dh_install -i - sed 's/^BUILD_NUMBER = .*/BUILD_NUMBER = $(BUILD_NUMBER)/' \ - < debian/rules.modules \ - > debian/openvswitch-datapath-source/usr/src/modules/openvswitch-datapath/debian/rules + +override_dh_auto_build: + dh_auto_build -- dist distdir=openvswitch + +override_dh_auto_clean: + rm -f python/ovs/*.pyc python/ovs/db/*.pyc + dh_auto_clean + +override_dh_install: + dh_install + # openvswitch-switch + cp debian/openvswitch-switch.template debian/openvswitch-switch/usr/share/openvswitch/switch/default.template + + # ovn-host + cp debian/ovn-host.template debian/ovn-host/usr/share/ovn/host/default.template + + # ovn-central + cp debian/ovn-central.template debian/ovn-central/usr/share/ovn/central/default.template + + # openvswitch-datapath-source + cp debian/rules.modules debian/openvswitch-datapath-source/usr/src/modules/openvswitch-datapath/debian/rules chmod 755 debian/openvswitch-datapath-source/usr/src/modules/openvswitch-datapath/debian/rules cd debian/openvswitch-datapath-source/usr/src && tar -c modules | bzip2 -9 > openvswitch-datapath.tar.bz2 && rm -rf modules - install -m644 debian/openvswitch-pki-server.apache2 debian/openvswitch-pki-server/etc/apache2/sites-available/openvswitch-pki - install -m1777 -d debian/corekeeper/var/log/core - -install-arch: build-arch - dh_testdir - dh_testroot - dh_clean -k -s - dh_installdirs -s - $(MAKE) -C _debian DESTDIR=$(CURDIR)/debian/openvswitch install - cp debian/openvswitch-switch-config.overrides debian/openvswitch-switch-config/usr/share/lintian/overrides/openvswitch-switch-config - cp debian/openvswitch-switch.template debian/openvswitch-switch/usr/share/openvswitch/switch/default.template - dh_install -s - env TERMINFO=debian/openvswitch-switchui/usr/share/terminfo tic -x extras/ezio/ezio3.ti - -# Must not depend on anything. This is to be called by -# binary-arch/binary-indep -# in another 'make' thread. -binary-common: - dh_testdir - dh_testroot - dh_installchangelogs - dh_installdocs - dh_installexamples - dh_installdebconf - dh_installlogrotate - dh_installinit - dh_installcron - dh_installman - dh_link + + # openvswitch-datapath-dkms + # setup the dirs + dh_installdirs -p$(PACKAGE_DKMS) usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION) + + # copy the source + cd debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION) && tar xvzf $(CURDIR)/openvswitch.tar.gz && mv openvswitch/* openvswitch/.[a-z]* . && rmdir openvswitch + + # check we can get kernel module names + $(MAKE) -C datapath print-build-modules + + # Prepare dkms.conf from the dkms.conf.in template + sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g; s/__MODULES__/$(shell $(MAKE) -C datapath print-build-modules | grep -v make)/" debian/dkms.conf.in > debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf + + # We don't need the debian folder in there, just upstream sources... + rm -rf debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian + # We don't need the rhel stuff in there either + rm -rf debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/rhel + # And we should also clean useless license files, which are already + # described in our debian/copyright anyway. + rm -f debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/COPYING \ + debian/$(PACKAGE_DKMS)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/xenserver/LICENSE + +override_dh_installinit: + dh_installinit -R + +override_dh_strip: dh_strip --dbg-package=openvswitch-dbg - dh_compress - dh_fixperms -X var/log/core - dh_perl - dh_makeshlibs - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb -binary-indep: install-indep - $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common -binary-arch: install-arch - $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common - -binary: binary-arch binary-indep -.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure