iquagga-faster-compile.patch

Avoid cleaning up the source tree and running reconf every time. Allows
recompilation of only those files that have been modified since last
run. Relies on the existence of config.status file to decide if we've
run the first time or subsequent times.
This commit is contained in:
Donald Sharp 2015-05-19 17:40:43 -07:00
parent 2037f143d8
commit d0af852814

35
debian/rules vendored
View File

@ -2,6 +2,7 @@
export DH_VERBOSE=1 export DH_VERBOSE=1
export DEB_BUILD_HARDENING=1 export DEB_BUILD_HARDENING=1
export DH_OPTIONS=-v
ifeq ($(WANT_SNMP), 1) ifeq ($(WANT_SNMP), 1)
USE_SNMP=--enable-snmp USE_SNMP=--enable-snmp
@ -12,19 +13,24 @@ endif
%: %:
dh $@ --parallel --with autoreconf --dbg-package=quagga-dbg --list-missing dh $@ --parallel --with autoreconf --dbg-package=quagga-dbg --list-missing
if [ -e config.status ]; then \
dh $@ --parallel --dbg-package=quagga-dbg --list-missing; \
else \
dh $@ --parallel --with autoreconf --dbg-package=quagga-dbg --list-missing; \
fi
override_dh_auto_clean: override_dh_auto_clean:
dh_auto_clean #dh_auto_clean
@echo "BEGIN CRUFT" #@echo "BEGIN CRUFT"
@rm -vf */Makefile doc/quagga.fns doc/quagga.info doc/quagga.kys doc/quagga.tmp doc/quagga.pdf doc/quagga.info-* #@rm -vf */Makefile doc/quagga.fns doc/quagga.info doc/quagga.kys doc/quagga.tmp doc/quagga.pdf doc/quagga.info-*
@rm -vf lib/version.c doc/stamp-vti #@rm -vf lib/version.c doc/stamp-vti
@rm -vf vtysh/vtysh_cmd.c #@rm -vf vtysh/vtysh_cmd.c
@rm -vf doc/fig*.pdf doc/version.texi #@rm -vf doc/fig*.pdf doc/version.texi
@echo "END CRUFT" #@echo "END CRUFT"
# why? # why?
@if [ -e config.log ]; then echo "CONFIG.LOG STILL THERE"; rm config.log; fi #@if [ -e config.log ]; then echo "CONFIG.LOG STILL THERE"; rm config.log; fi
override_dh_auto_configure: override_dh_auto_configure:
# Quagga needs /proc to check some BSD vs Linux specific stuff. # Quagga needs /proc to check some BSD vs Linux specific stuff.
@ -34,7 +40,8 @@ override_dh_auto_configure:
echo "./configure needs a mounted /proc"; \ echo "./configure needs a mounted /proc"; \
exit 1; \ exit 1; \
fi fi
if ! [ -e config.status ]; then \
dh_auto_configure -- \ dh_auto_configure -- \
--enable-exampledir=/usr/share/doc/quagga/examples/ \ --enable-exampledir=/usr/share/doc/quagga/examples/ \
--localstatedir=/var/run/quagga \ --localstatedir=/var/run/quagga \
@ -57,8 +64,8 @@ override_dh_auto_configure:
--enable-logfile-mask=0640 \ --enable-logfile-mask=0640 \
--enable-rtadv \ --enable-rtadv \
--enable-gcc-rdynamic \ --enable-gcc-rdynamic \
--with-libpam --with-libpam; \
fi
if ! diff -b -IHAVE_SNMP -IHAVE_NETSNMP -IUCD_COMPAT -IGETIFADDR debian/my/config.h.reference config.h; then \ if ! diff -b -IHAVE_SNMP -IHAVE_NETSNMP -IUCD_COMPAT -IGETIFADDR debian/my/config.h.reference config.h; then \
echo; \ echo; \
echo "WARNING: Please compare with debian/my/config.h.reference"; \ echo "WARNING: Please compare with debian/my/config.h.reference"; \
@ -67,7 +74,9 @@ override_dh_auto_configure:
fi fi
override_dh_auto_build: override_dh_auto_build:
dh_auto_build #dh_auto_build
$(MAKE)
# doc/ is a bit crazy # doc/ is a bit crazy
ifeq ($(GENERATE_PDF), 1) ifeq ($(GENERATE_PDF), 1)
@ -76,6 +85,8 @@ endif
rm -vf doc/quagga.info rm -vf doc/quagga.info
dh_auto_build -- -C doc quagga.info dh_auto_build -- -C doc quagga.info
rm -vf doc/quagga.info.html* rm -vf doc/quagga.info.html*
override_dh_auto_test:
override_dh_auto_install: override_dh_auto_install:
dh_auto_install dh_auto_install