#!/usr/bin/make -f include /usr/share/cdbs/1/rules/autoreconf.mk include /usr/share/cdbs/1/class/autotools.mk include /usr/share/cdbs/1/rules/debhelper.mk export DEB_BUILD_MAINT_OPTIONS = hardening=+all pkg = $(DEB_SOURCE_PACKAGE) stem = $(patsubst lib%,%,$(pkg)) daemon = $(stem)d pkg-daemon = $(daemon) DEB_BUILD_PARALLEL = 1 DEB_INSTALL_DOCS_ALL += doc/release-notes.md # work around build failure with gcc 4.7 #CXXFLAGS += -fpermissive # Silence seemingly harmless noise about unused variables #CXXFLAGS += -Wno-unused-variable DEB_CONFIGURE_EXTRA_FLAGS += --with-incompatible-bdb # avoid upstream optimizations - we want $DEB_* variables tocontrol them DEB_CONFIGURE_EXTRA_FLAGS += --disable-ccache --disable-hardening # Bitcoin developers fear uncovered vulnerabilities # * see https://github.com/bitcoin/bitcoin/commit/21d27eb DEB_CONFIGURE_EXTRA_FLAGS += --without-miniupnpc DEB_CONFIGURE_EXTRA_FLAGS += --with-system-leveldb DEB_CONFIGURE_EXTRA_FLAGS += --with-system-secp256k1 DEB_CONFIGURE_EXTRA_FLAGS += --with-system-univalue DEB_CONFIGURE_EXTRA_FLAGS += --with-zmq CXXFLAGS += -fPIC DEB_CONFIGURE_EXTRA_FLAGS += --with-gui=qt5 --with-qrencode #export QT_SELECT=5 # resolve if release is experimental EXP_RELEASE = $(filter experimental% UNRELEASED,$(DEB_SUITE)) DEB_CONFIGURE_EXTRA_FLAGS += \ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) DEB_CONFIGURE_EXTRA_FLAGS += --without-libs binary-install/$(pkg-daemon):: dh_bash-completion # Run tests # * Fake HOME and TMPDIR and use virtual X11 in testsuite # * print test-suite.log if testsuite fails # * relax experimental build to succed if testsuite fails FAKETMP = $(CURDIR)/debian/faketmp DEB_MAKE_CHECK_TARGET = check \ || { cat src/test-suite.log; $(if $(EXP_RELEASE),,false;) } $(cdbs_make_check_stamps): DEB_MAKE_INVOKE := \ HOME=$(FAKETMP) TMPDIR=$(FAKETMP) xvfb-run -a $(DEB_MAKE_INVOKE) pre-build:: mkdir -p "$(FAKETMP)" clean:: rm -rf "$(FAKETMP)" DEB_INSTALL_DOCS_ALL += README.md doc/release-notes/release-notes-*.md pre-build:: mkdir -p src/obj/nogui clean:: -find src/obj -type f -not -name .gitignore -delete -rmdir --ignore-fail-on-non-empty build rm -f src/$(daemon) # Generate manpages during build # * TODO: generate groestlcoin-qt manpage when solved how without X11 #common-post-build-arch:: debian/stamp-manpage-build #debian/stamp-manpage-build: # BITCOINQT=' ' TOPDIR=. contrib/devtools/gen-manpages.sh $(DEB_UPSTREAM_VERSION) # touch $@ #clean:: # rm -f doc/man/groestlcoin*.1 # Ensure wrapper is set executable binary-post-install/$(pkg-daemon):: chmod +x debian/$(pkg-daemon)/usr/bin/$(daemon)