Name dpkg
Description Debian package management system
Version 1.22.6ubuntu6.5
Package Base
Homepage https://wiki.debian.org/Teams/Dpkg
Maintainers ['Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>']
Contributors ['Guillem Jover <guillem@debian.org>']
Distro-repo https://git.launchpad.net/ubuntu/+source/dpkg/tree/?h=ubuntu/noble
Sources []
Dependencies ['libbz2-1.0', 'libc6', 'liblzma5', 'libmd0', 'libselinux1', 'libzstd1', 'tar', 'zlib1g']
Optional-Dependencies ['apt', 'debsig-verify']
Build-Dependencies ['debhelper-compat', 'debhelper', 'pkgconf', 'gettext', 'po4a', 'libmd-dev', 'zlib1g-dev', 'libbz2-dev', 'liblzma-dev', 'libzstd-dev', 'libselinux1-dev [linux-any]', 'libncurses-dev', 'bzip2 <!nocheck>', 'xz-utils', 'zstd <!nocheck>', 'git <pkg.dpkg.author-release>', 'ca-certificates <pkg.dpkg.author-release>', 'libmodule-build-perl <pkg.dpkg.author-release>', 'fakeroot <pkg.dpkg.author-testing>', 'gnupg <pkg.dpkg.author-testing>', 'cppcheck <pkg.dpkg.author-testing>', 'shellcheck <pkg.dpkg.author-testing>', 'aspell <pkg.dpkg.author-testing>', 'aspell-en <pkg.dpkg.author-testing>', 'codespell <pkg.dpkg.author-testing>', 'i18nspector <pkg.dpkg.author-testing>', 'libtest-minimumversion-perl <pkg.dpkg.author-testing>', 'libtest-perl-critic-perl <pkg.dpkg.author-testing>', 'libtest-pod-coverage-perl <pkg.dpkg.author-testing>', 'libtest-pod-perl <pkg.dpkg.author-testing>', 'libtest-spelling-perl <pkg.dpkg.author-testing>', 'libtest-strict-perl <pkg.dpkg.author-testing>', 'libtest-synopsis-perl <pkg.dpkg.author-testing>', 'lcov <pkg.dpkg.code-coverage>', 'libdevel-cover-perl <pkg.dpkg.code-coverage>']
Provides []
Builddate
Architecture amd64
Distro-Version noble
Licenses []
Hash 901956d9e189bf367db3c309795d11ebe2d84b4a9660f7e7ce0c2fa5173b24f9
#!/usr/bin/make -f
# debian/rules for the dpkg suite.
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>
# Copyright © 2006-2012 Guillem Jover <guillem@debian.org>

WFLAGS := \
	-Wall -Wextra \
	-Wno-missing-field-initializers \
	-Wno-nonnull-compare \
	-Wno-unused-parameter \
	# EOL

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export DEB_CFLAGS_MAINT_APPEND = $(WFLAGS)
export DEB_CXXFLAGS_MAINT_APPEND = $(WFLAGS)

# Use the in-tree dpkg-buildflags
dpkg_buildflags = \
	DEB_BUILD_MAINT_OPTIONS="$(DEB_BUILD_MAINT_OPTIONS)" \
	DEB_CFLAGS_MAINT_APPEND="$(WFLAGS)" \
	DEB_CXXFLAGS_MAINT_APPEND="$(WFLAGS)" \
	$(CURDIR)/build-aux/run-script scripts/dpkg-buildflags.pl

# Do not enable everything on all platforms.
ifeq ($(DEB_HOST_ARCH_OS),linux)
	confflags += --with-libselinux
endif
ifeq (,$(filter terse,$(DEB_BUILD_OPTIONS)))
	TESTSUITEFLAGS += --verbose
endif

# Enable parallel test suite
NUMJOBS = 1
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
  NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
  TESTSUITEFLAGS += -j$(NUMJOBS)
endif

testflags = TESTSUITEFLAGS=$(TESTSUITEFLAGS) TEST_PARALLEL=$(NUMJOBS)

dpkg_vendor = \
	$(CURDIR)/build-aux/run-script scripts/dpkg-vendor.pl

DEB_VENDOR = $(shell $(call dpkg_vendor) --query Vendor)

D := $(CURDIR)/debian/tmp

%:
	dh $@ --builddirectory=build-tree

override_dh_auto_configure:
	dh_auto_configure -- \
		$(confflags) \
		$(shell $(dpkg_buildflags) --export=configure) \
		--libexecdir=\$${exec_prefix}/lib \
		--with-devlibdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
		--with-libz \
		--with-liblzma \
		--with-libzstd \
		--with-libbz2 \
		# EOL

execute_after_dh_auto_install:
	# Special-case the lintian profile, as dh cannot rename on install.
	mkdir -p $(D)/usr/share/lintian/profiles/dpkg
	cp debian/dpkg.lintian-profile \
	   $(D)/usr/share/lintian/profiles/dpkg/main.profile

override_dh_auto_test:
	dh_auto_test -- $(testflags)

override_dh_installsystemd:
	dh_installsystemd -a --name=dpkg-db-backup \
	  --no-start --no-stop-on-upgrade

execute_after_dh_installlogrotate:
	dh_installlogrotate --name=alternatives

override_dh_installdocs:
	dh_installdocs -Ndpkg-dev
	dh_installdocs -pdpkg-dev --doc-main-package=dpkg

override_dh_installchangelogs:
	dh_installchangelogs --no-trim

override_dh_bugfiles:
	dh_bugfiles -A

override_dh_compress:
	dh_compress -Xspec/

ifeq (,$(filter $(DEB_VENDOR),Debian Ubuntu))
execute_after_dh_install:
	dh_install -pdpkg usr/sbin/dpkg-fsys-usrunmess

# XXX: We cannot use -X, see debhelper #756366.
execute_after_dh_installman:
	dh_installman -pdpkg $(wildcard \
	  $(D)/usr/share/man/*/dpkg-fsys-usrunmess.8  \
	  $(D)/usr/share/man/*/*/dpkg-fsys-usrunmess.8 \
	)

# XXX: We cannot pass pathnames to dh_installman w/o $(D), and then dh_missing
# complains that the pathnames do not match, so ignore them.
override_dh_missing:
	dh_missing -Xdpkg-fsys-usrunmess.8
else
override_dh_missing:
	dh_missing -Xdpkg-fsys-usrunmess
endif

override_dh_builddeb:
	# Make debootstrap life easier on non-Debian based systems by
	# compressing dpkg.deb with xz instead of zstd.
	dh_builddeb -pdpkg -- -Zxz
	dh_builddeb -Ndpkg