endif
MAKEFLAGS += $(PARALLEL)
-ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
-CFLAGS += -O0
-else
-CFLAGS += -O2
-endif
+# Old versions of dpkg-buildflags do not understand --export=configure.
+# When dpkg-buildflags does not understand an option, it prints its full
+# --help output on stdout, so we have to avoid that here.
+buildflags := $(shell if dpkg-buildflags --export=configure >/dev/null 2>&1; \
+ then dpkg-buildflags --export=configure; fi)
configure: configure-stamp
configure-stamp:
cd _debian && ( \
test -e Makefile || \
../configure --prefix=/usr --localstatedir=/var --enable-ssl \
- --sysconfdir=/etc CFLAGS="$(CFLAGS)" \
- $(DATAPATH_CONFIGURE_OPTS))
+ --sysconfdir=/etc --host=$(DEB_HOST_GNU_TYPE) \
+ $(buildflags) $(DATAPATH_CONFIGURE_OPTS))
touch configure-stamp
#Architecture
build-arch-stamp: configure-stamp
$(MAKE) -C _debian
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
- if $(MAKE) -C _debian check TESTSUITEFLAGS='$(PARALLEL)'; then :; \
+ if $(MAKE) -C _debian check TESTSUITEFLAGS='$(PARALLEL)' || \
+ $(MAKE) -C _debian check TESTSUITEFLAGS='--recheck'; then :; \
else \
cat _debian/tests/testsuite.log; \
exit 1; \
dh_installdirs -p$(pdkms) usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)
# copy the source
- cd debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION) && tar xvzf $(CURDIR)/_debian/openvswitch.tar.gz && mv openvswitch/* . && rmdir openvswitch
+ cd debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION) && tar xvzf $(CURDIR)/_debian/openvswitch.tar.gz && mv openvswitch/* openvswitch/.[a-z]* . && rmdir openvswitch
+
+ # check we can get kernel module names
+ $(MAKE) -C _debian/datapath print-build-modules
# Prepare dkms.conf from the dkms.conf.in template
- sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g" debian/dkms.conf.in > debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf
+ sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g; s/__MODULES__/$(shell $(MAKE) -C _debian/datapath print-build-modules | grep -v make)/" debian/dkms.conf.in > debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf
# We don't need the debian folder in there, just upstream sources...
rm -rf debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian
# And we should also clean useless license files, which are already
# descriped in our debian/copyright anyway.
rm -f debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/COPYING \
- debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/ovsdb/ovsdbmonitor/COPYING \
debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/xenserver/LICENSE
install-arch: build-arch
$(MAKE) -C _debian DESTDIR=$(CURDIR)/debian/tmp install
cp debian/openvswitch-switch.template debian/openvswitch-switch/usr/share/openvswitch/switch/default.template
dh_install -s
+ dh_link -s
# Must not depend on anything. This is to be called by
# binary-arch/binary-indep