#!/usr/bin/make -f # Build script for GNATColl in Debian. # Copyright (c) 2014-2023 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. # 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/buildflags.mk include /usr/share/dpkg/buildopts.mk include $(wildcard /usr/share/ada/packaging.mk) # wildcard means: not during -indep builds. %: dh $@ .PHONY: $(addprefix override_dh_auto_,configure clean build-arch \ build-indep test install-arch install-indep) # Disable autodetection of upstream targets. # We want to avoid clean and install. Moreover, test does not exist, # but while figuring this during -indep builds, debhelper # would run Make and Make would fail to run gprconfig. project := -Pgnatcoll.gpr -XBUILD=PROD static := -XLIBRARY_TYPE=static shared := -XLIBRARY_TYPE=relocatable -XGNATCOLL_VERSION=$(gnatcoll_SO_VERSION) # Prevent Makefile from messing with gprconfig # (NORMALIZED_TARGET is wrong at least for i386 and hurd-i386). override_dh_auto_build-arch: gprconfig --batch $(GPRCONFIGFLAGS) gprbuild $(project) $(static) $(GPRBUILDFLAGS) gprbuild $(project) $(shared) $(GPRBUILDFLAGS) override_dh_auto_install-arch: gprinstall $(project) $(static) $(static_GPRINSTALLFLAGS) gprinstall $(project) $(shared) $(call shared_GPRINSTALLFLAGS,gnatcoll) override_dh_auto_build-indep: ifeq (,$(filter nodoc,$(DEB_BUILD_OPTIONS))) $(MAKE) -Cdocs html latexpdf text \ $(DEB_BUILD_OPTION_PARALLEL:%=SPHINXOPTS=-j%) endif # Force regeneration of distrib/gnatcoll/runtime.py. override_dh_auto_build-indep: runtime-stamp runtime-stamp: cd distrib && python3 gen_gps.py touch $@ # Avoid a warning about doc-main-package. doc_pkg := libgnatcoll-doc execute_before_dh_installdocs: dh_installdocs --package=$(doc_pkg) --doc-main-package=$(doc_pkg) execute_before_dh_installexamples: dh_installexamples --package=$(doc_pkg) --doc-main-package=$(doc_pkg)