#!/usr/bin/make -f # Build script for Templates_Parser in Debian. # Copyright (c) 2003-2008 Ludovic Brenta # Copyright (c) 2013-2022 Nicolas Boulenguez # This build script is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 3 of the # License, or (at your option) any later version. # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, see . # On Debian systems, the full text of the GPL is in the file # /usr/share/common-licenses/GPL-3. DPKG_EXPORT_BUILDFLAGS := 1 DEB_BUILD_MAINT_OPTIONS := hardening=+all DEB_LDFLAGS_MAINT_APPEND := \ -Wl,--no-allow-shlib-undefined \ -Wl,--no-copy-dt-needed-entries \ -Wl,--no-undefined include /usr/share/dpkg/architecture.mk include /usr/share/dpkg/buildflags.mk include /usr/share/dpkg/buildopts.mk include /usr/share/ada/packaging.mk # Some options are stored into makefile.setup, but some are not. # All written options are read back, but some are overriden. # That is why we force all values on each Make. # Force detection of TP_XMLADA because of a regression in GCC-12. # gnat ls -Pxmlada_dom.gpr -aP/usr/share/gpr -> found # gnat ls -Pxmlada_dom.gpr -> not found # gnat ls -v -> says that is searches /usr/share/gpr # No one will ever fix this, GCC is not supporting projects anymore. MAKE_OPTS := \ VERBOSE_MAKE=1 \ VERSION=$(templates_parser_SO_VERSION) \ DEFAULT_LIBRARY_TYPE=relocatable \ TP_XMLADA=Installed \ GPRBUILD='gprbuild $(GPRBUILDFLAGS:-j%=)' \ LIBRARY_TYPES='static relocatable' \ $(DEB_BUILD_OPTION_PARALLEL:%=PROCESSORS=%) \ $(DEB_BUILD_OPTIONS_PARALLEL:%=SPHINXOPTS=-j%) \ DOC_FORMATS="html info latexpdf text" ###################################################################### %: dh $@ .PHONY: override_dh_auto_build-arch override_dh_auto_build-arch: # Gprbuild deals with parallelism. Make should not interfer. $(MAKE) $(MAKE_OPTS) .PHONY: override_dh_auto_build-indep override_dh_auto_build-indep: ifeq (,$(filter nodoc,$(DEB_BUILD_OPTIONS))) # Parallelism in Make would create a race condition between sphinx # processes. Anyway, sphinx already uses parallelism. $(MAKE) build-doc $(MAKE_OPTS) endif # Skip tests, they assume that the executables are in the PATH. .PHONY: override_dh_auto_test override_dh_auto_install-arch: $(MAKE) $(MAKE_OPTS) install LIBRARY_TYPES= \ GPRINST_OPTS='$(standard_GPRINSTALLFLAGS)' $(MAKE) $(MAKE_OPTS) install-relocatable \ GPRINST_OPTS='$(call shared_GPRINSTALLFLAGS,templates_parser)' $(MAKE) $(MAKE_OPTS) install-static \ GPRINST_OPTS='$(static_GPRINSTALLFLAGS)' override_dh_auto_install-indep: .PHONY: override_dh_auto_clean override_dh_auto_clean: $(MAKE) clean $(MAKE_OPTS) # Prevent a warning about doc-main-package autodetection. doc_pkg := libtemplates-parser-doc execute_before_dh_installdocs: dh_installdocs --package=$(doc_pkg) --doc-main-package=$(doc_pkg) execute_before_dh_installexamples: execute_before_%: dh_installexamples --package=$(doc_pkg) --doc-main-package=$(doc_pkg)