This is an automated email from the git hooks/post-receive script. guillem pushed a commit to branch main in repository dpkg.
View the commit online: https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=8966616fa592c811b2950043f0273faada383493 commit 8966616fa592c811b2950043f0273faada383493 Author: Nicolas Boulenguez <nico...@debian.org> AuthorDate: Tue Apr 9 04:25:02 2024 +0200 scripts/mk: Protect files against double inclusion The architecture.mk fragment file is included by default.mk and by buildtools.mk. The buildapi.mk fragment file is included by default.mk and by vendor.mk. [guil...@debian.org: - Rename variables. - Remove ifndef from endif comment. ] Signed-off-by: Guillem Jover <guil...@debian.org> --- scripts/mk/architecture.mk | 5 +++++ scripts/mk/buildapi.mk | 5 +++++ scripts/mk/buildflags.mk | 6 ++++++ scripts/mk/buildopts.mk | 5 +++++ scripts/mk/buildtools.mk | 5 +++++ scripts/mk/default.mk | 5 +++++ scripts/mk/pkg-info.mk | 5 +++++ scripts/mk/vendor.mk | 5 +++++ 8 files changed, 41 insertions(+) diff --git a/scripts/mk/architecture.mk b/scripts/mk/architecture.mk index c11cada16..ab42f8788 100644 --- a/scripts/mk/architecture.mk +++ b/scripts/mk/architecture.mk @@ -2,6 +2,9 @@ # DEB_BUILD_* variables that dpkg-architecture can return. Existing values # of those variables are preserved as per policy. +ifndef dpkg_architecture_mk_included +dpkg_architecture_mk_included = yes + dpkg_lazy_eval ?= $$(or $$(value DPKG_CACHE_$(1)),$$(eval DPKG_CACHE_$(1) := $$(shell $(2)))$$(value DPKG_CACHE_$(1))) dpkg_architecture_setvar = export $(1) ?= $(call dpkg_lazy_eval,$(1),dpkg-architecture -q$(1)) @@ -9,3 +12,5 @@ dpkg_architecture_setvar = export $(1) ?= $(call dpkg_lazy_eval,$(1),dpkg-archit $(foreach machine,BUILD HOST TARGET,\ $(foreach var,ARCH ARCH_ABI ARCH_LIBC ARCH_OS ARCH_CPU ARCH_BITS ARCH_ENDIAN GNU_CPU GNU_SYSTEM GNU_TYPE MULTIARCH,\ $(eval $(call dpkg_architecture_setvar,DEB_$(machine)_$(var))))) + +endif # dpkg_architecture_mk_included diff --git a/scripts/mk/buildapi.mk b/scripts/mk/buildapi.mk index 668e325c8..3a1f16405 100644 --- a/scripts/mk/buildapi.mk +++ b/scripts/mk/buildapi.mk @@ -1,5 +1,8 @@ # This Makefile fragment (since dpkg 1.22.0) handles the build API. +ifndef dpkg_buildapi_mk_included +dpkg_buildapi_mk_included = yes + # Default API level when not set. DPKG_BUILD_API ?= $(shell dpkg-buildapi) @@ -7,3 +10,5 @@ DPKG_BUILD_API ?= $(shell dpkg-buildapi) # complexity given no integer operators, given that we currently have to # fetch the build API level anyway. dpkg_build_api_ge = $(shell test "$(DPKG_BUILD_API)" -ge "$(1)" && echo yes) + +endif # dpkg_buildapi_mk_included diff --git a/scripts/mk/buildflags.mk b/scripts/mk/buildflags.mk index 4b8a3d8c4..000aee541 100644 --- a/scripts/mk/buildflags.mk +++ b/scripts/mk/buildflags.mk @@ -28,6 +28,10 @@ # You can also export them in the environment by setting # DPKG_EXPORT_BUILDFLAGS to a non-empty value. # + +ifndef dpkg_buildflags_mk_included +dpkg_buildflags_mk_included = yes + # This list is kept in sync with the default set of flags returned # by dpkg-buildflags. @@ -77,3 +81,5 @@ $(foreach flag,$(DPKG_BUILDFLAGS_LIST),\ ifdef DPKG_EXPORT_BUILDFLAGS export $(DPKG_BUILDFLAGS_LIST) endif + +endif # dpkg_buildflags_mk_included diff --git a/scripts/mk/buildopts.mk b/scripts/mk/buildopts.mk index c95777719..73cb55aca 100644 --- a/scripts/mk/buildopts.mk +++ b/scripts/mk/buildopts.mk @@ -5,6 +5,11 @@ # # DEB_BUILD_OPTION_PARALLEL: the argument for the parallel=N option. +ifndef dpkg_buildopts_mk_included +dpkg_buildopts_mk_included = yes + ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) DEB_BUILD_OPTION_PARALLEL = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) endif + +endif # dpkg_buildopts_mk_included diff --git a/scripts/mk/buildtools.mk b/scripts/mk/buildtools.mk index 933fdcfaa..7ee77f69b 100644 --- a/scripts/mk/buildtools.mk +++ b/scripts/mk/buildtools.mk @@ -25,6 +25,9 @@ # The variables are not exported by default. This can be changed by # defining DPKG_EXPORT_BUILDTOOLS. +ifndef dpkg_buildtools_mk_included +dpkg_buildtools_mk_included = yes + dpkg_datadir = $(srcdir)/mk include $(dpkg_datadir)/architecture.mk @@ -74,3 +77,5 @@ $(eval $(call dpkg_buildtool_setvar,AR,ar)) $(eval $(call dpkg_buildtool_setvar,RANLIB,ranlib)) $(eval $(call dpkg_buildtool_setvar,PKG_CONFIG,pkgconf)) $(eval $(call dpkg_buildtool_setvar,QMAKE,qmake)) + +endif # dpkg_buildtools_mk_included diff --git a/scripts/mk/default.mk b/scripts/mk/default.mk index 0b2fd4aca..c4e408b01 100644 --- a/scripts/mk/default.mk +++ b/scripts/mk/default.mk @@ -1,6 +1,9 @@ # This Makefile fragment (since dpkg 1.16.1) includes all the Makefile # fragments that define variables that can be useful within debian/rules. +ifndef dpkg_default_mk_included +dpkg_default_mk_included = yes + dpkg_datadir = $(srcdir)/mk include $(dpkg_datadir)/architecture.mk include $(dpkg_datadir)/buildapi.mk @@ -11,3 +14,5 @@ include $(dpkg_datadir)/buildflags.mk include $(dpkg_datadir)/buildopts.mk include $(dpkg_datadir)/pkg-info.mk include $(dpkg_datadir)/vendor.mk + +endif # dpkg_default_mk_included diff --git a/scripts/mk/pkg-info.mk b/scripts/mk/pkg-info.mk index bccde2317..b65a8d1a4 100644 --- a/scripts/mk/pkg-info.mk +++ b/scripts/mk/pkg-info.mk @@ -13,6 +13,9 @@ # specified by <https://reproducible-builds.org/specs/source-date-epoch/> # (since dpkg 1.18.8). +ifndef dpkg_pkg_info_mk_included +dpkg_pkg_info_mk_included = yes + dpkg_late_eval ?= $(or $(value DPKG_CACHE_$(1)),$(eval DPKG_CACHE_$(1) := $(shell $(2)))$(value DPKG_CACHE_$(1))) DEB_SOURCE = $(call dpkg_late_eval,DEB_SOURCE,dpkg-parsechangelog -SSource) @@ -25,3 +28,5 @@ DEB_DISTRIBUTION = $(call dpkg_late_eval,DEB_DISTRIBUTION,dpkg-parsechangelog -S SOURCE_DATE_EPOCH ?= $(call dpkg_late_eval,SOURCE_DATE_EPOCH,dpkg-parsechangelog -STimestamp) export SOURCE_DATE_EPOCH + +endif # dpkg_pkg_info_mk_included diff --git a/scripts/mk/vendor.mk b/scripts/mk/vendor.mk index f3241a57b..2bce9322c 100644 --- a/scripts/mk/vendor.mk +++ b/scripts/mk/vendor.mk @@ -33,6 +33,9 @@ # ... # endif +ifndef dpkg_vendor_mk_included +dpkg_vendor_mk_included = yes + dpkg_datadir = $(srcdir)/mk include $(dpkg_datadir)/buildapi.mk @@ -49,3 +52,5 @@ dpkg_vendor_derives_from ?= $(dpkg_vendor_derives_from_v1) else dpkg_vendor_derives_from ?= $(dpkg_vendor_derives_from_v0) endif + +endif # dpkg_vendor_mk_included -- Dpkg.Org's dpkg