Name tpm2daemon
Description GNU privacy guard - TPM2 support
Version 2.4.7-21+deb13u1+b1
Package Base gnupg2
Homepage https://www.gnupg.org/
Maintainers ['Debian GnuPG Maintainers <pkg-gnupg-maint@lists.alioth.debian.org>']
Contributors ['Andreas Metzler <ametzler@debian.org>,', 'Daniel Kahn Gillmor <dkg@fifthhorseman.net>', 'Eric Dorland <eric@debian.org>']
Distro-repo https://salsa.debian.org/debian/gnupg2
Sources ['https://sources.debian.org/data/main/g/gnupg2/2.4.7-21+deb13u1/debian/watch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/Use-hkps-keys.openpgp.org-as-the-default-keyserver.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/debian-packaging', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/dirmngr-idling', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/do-not-install-gnutls.7.html.to.mandir.diff', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/freepg', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/from-master', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/from-upstream', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/gpg-Avoid-potential-downgrade-to-SHA1-in-3rd-party-k.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/gpg-Error-out-on-unverified-output-for-non-detached-.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/gpg-Fix-possible-memory-corruption-in-the-armor-pars.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/gpg-agent.socket-Set-GPG_AGENT_INFO-in-systemd-for-g.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/gpgv-Avoid-Assuan-and-NPth-dependencies.patch', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/nl.po.update.diff', 'https://sources.debian.org/src/gnupg2/2.4.7-21+deb13u1/debian/patches/series']
Dependencies ['gpgconf', 'libassuan9', 'libc6', 'libgcrypt20', 'libgpg-error0', 'libnpth0t64', 'libtss2-esys-3.0.2-0t64', 'libtss2-mu-4.0.1-0t64', 'libtss2-rc0t64', 'libtss2-tctildr0t64']
Optional-Dependencies ['dbus-user-session', 'gnupg', 'libpam-systemd']
Build-Dependencies ['debhelper-compat', 'dh-sequence-builtusing', 'automake', 'autopoint', 'fig2dev <!nodoc>', 'file', 'gettext', 'ghostscript <!nodoc>', 'gpgrt-tools', 'imagemagick', 'libassuan-dev', 'libbz2-dev', 'libgcrypt20-dev', 'libgnutls28-dev', 'libgpg-error-dev', 'libksba-dev', 'libldap2-dev <!pkg.gnupg2.gpgvonly>', 'libnpth0-dev', 'libreadline-dev <!pkg.gnupg2.gpgvonly>', 'librsvg2-bin <!nodoc>', 'libsqlite3-dev <!pkg.gnupg2.gpgvonly>', 'libtss2-dev <!pkg.gnupg2.gpgvonly>', 'libusb-1.0-0-dev [!hurd-any] <!pkg.gnupg2.gpgvonly>', 'openssh-client <!nocheck !pkg.gnupg2.gpgvonly>', 'pkgconf', 'swtpm [amd64 arm64 armel armhf i386 mips64el ppc64el riscv64 s390x] <!nocheck !pkg.gnupg2.gpgvonly>', 'texinfo <!nodoc>', 'unicode-data', 'zlib1g-dev | libz-dev']
Provides []
Builddate
Architecture amd64
Distro-Version trixie
Licenses []
Hash b5514b90b210f38ff8dd2368d5030cfad4603cb097fca15b97c0cf12beacf4dd
#!/usr/bin/make -f
# debian/rules file - for GnuPG
# Copyright 1994,1995 by Ian Jackson.
# Copyright 1998-2003 by James Troup.
# Copyright 2003-2004 by Matthias Urlichs.
#
# I hereby give you perpetual unlimited permission to copy,
# modify and relicense this file, provided that you do not remove
# my name from the file itself.  (I assert my moral right of
# paternity under the Copyright, Designs and Patents Act 1988.)
# This file may have to be extensively modified

include /usr/share/dpkg/architecture.mk

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

# avoid -pie for gpgv-static on kfreebsd-amd64, and x32
# platforms, which cannot support it by default:
ifeq (,$(filter $(DEB_HOST_ARCH), kfreebsd-amd64 x32))
GPGV_STATIC_HARDENING = "-pie"
else
GPGV_STATIC_HARDENING = ""
endif

# Avoid parallel tests on hppa and riscv64 architecture.
# Parallel tests generates high load on machine which causes timeouts and thus
# triggers unexpected failures.
ifeq (,$(filter $(DEB_HOST_ARCH), hppa riscv64))
# And also, avoid parallel tests due to swtpm failures (see https://dev.gnupg.org/T7494)
AUTOTEST_FLAGS = "--no-parallel"
else
AUTOTEST_FLAGS = "--no-parallel"
endif

ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),)
	NODOC = --disable-doc
endif

%:
	dh $@ --with=autoreconf --builddirectory=build

GPGV_UNNEEDED = gpgtar gpgsm scdaemon dirmngr tofu exec ldap gnutls sqlite libdns keyboxd tpm2d npth
GPGV_UDEB_UNNEEDED = $(GPGV_UNNEEDED) bzip2 doc

WIN32_FLAGS=LDFLAGS="-Xlinker --no-insert-timestamp -static" CFLAGS="-g -Os" CPPFLAGS=

ifeq ($(filter pkg.gnupg2.gpgvonly,$(DEB_BUILD_PROFILES)),)

execute_after_dh_auto_configure:
	dh_auto_configure --builddirectory=build --verbose -- \
		--libexecdir=\$${prefix}/lib/gnupg \
		--enable-wks-tools \
		--enable-all-tests \
		--with-agent-s2k-calibration=300 \
		--enable-large-secmem \
		--with-mailprog=/usr/sbin/sendmail \
		--enable-maintainer-mode \
		$(NODOC)
	# win32 uses hand-written *FLAGS
	# mkdefsinc is built with *_FOR_BUILD
	# gpgscm is also not shipped
	@echo 'blhc: ignore-line-regexp: .*i686-w64-mingw32-gcc .*'
	@echo 'blhc: ignore-line-regexp: .*-o mkdefsinc .*'
	@echo 'blhc: ignore-line-regexp: .*-o gpgscm .*'

override_dh_auto_configure-arch:
	dh_auto_configure --builddirectory=build-gpgv-udeb -- \
		$(NODOC) \
		$(foreach x, $(GPGV_UDEB_UNNEEDED), --disable-$(x))

override_dh_auto_configure-indep:
	# nothing to do

execute_after_dh_auto_build:
	dh_auto_build --builddirectory=build

override_dh_auto_build-arch:
	dh_auto_build --builddirectory=build-gpgv-udeb
	cp -a build-gpgv-udeb build-gpgv-static
	rm -f build-gpgv-static/g10/gpgv
	cd build-gpgv-static/g10 && $(MAKE) LDFLAGS="$$LDFLAGS $(GPGV_STATIC_HARDENING) -static" gpgv
	mv build-gpgv-static/g10/gpgv build-gpgv-static/g10/gpgv-static

override_dh_auto_build-indep:
	mkdir -p build-gpgv-win32
	cd build-gpgv-win32 && $(WIN32_FLAGS) ../configure \
	   	$(foreach x, $(GPGV_UDEB_UNNEEDED), --disable-$(x)) \
		$(foreach x, libgpg-error libgcrypt libassuan ksba, --with-$x-prefix=/usr/i686-w64-mingw32) \
		$(NODOC) \
		--enable-gpg2-is-gpg \
		--with-zlib=/usr/i686-w64-mingw \
		--prefix=/usr/i686-w64-mingw32 \
		--host i686-w64-mingw32
	cd build-gpgv-win32/common && $(WIN32_FLAGS) $(MAKE) status-codes.h audit-events.h
	cd build-gpgv-win32/common && $(WIN32_FLAGS) $(MAKE) libgpgrl.a
	cd build-gpgv-win32/common && $(WIN32_FLAGS) $(MAKE) libsimple-pwquery.a
	cd build-gpgv-win32/common && $(WIN32_FLAGS) $(MAKE) libcommon.a
	cd build-gpgv-win32/kbx && $(WIN32_FLAGS) $(MAKE) libkeybox.a
	cd build-gpgv-win32/regexp && $(WIN32_FLAGS) $(MAKE) _unicode_mapping.c
	cd build-gpgv-win32/regexp && $(WIN32_FLAGS) $(MAKE) libregexp.a
	cd build-gpgv-win32/g10 && $(WIN32_FLAGS) $(MAKE) gpgv.exe
	strip build-gpgv-win32/g10/gpgv.exe

execute_after_dh_installdocs:
	# These are already shipped in the respective packages
	rm -vf \
		debian/gnupg/usr/share/doc/gnupg/examples/systemd-user/*.service \
		debian/gnupg/usr/share/doc/gnupg/examples/systemd-user/*.socket

override_dh_auto_test:
	dh_auto_test --builddirectory=build -- verbose=3 TESTFLAGS=$(AUTOTEST_FLAGS)

override_dh_shlibdeps:
# Make ldap a recommends rather than a hard dependency.
	dpkg-shlibdeps -Tdebian/dirmngr.substvars -dRecommends debian/dirmngr/usr/lib/gnupg/dirmngr_ldap -dDepends debian/dirmngr/usr/bin/dirmngr*
	dh_shlibdeps -Ndirmngr

else # ifeq ($(filter pkg.gnupg2.gpgvonly,$(DEB_BUILD_PROFILES)),)
override_dh_auto_configure:
	dh_auto_configure --builddirectory=build --verbose -- \
		--libexecdir=\$${prefix}/lib/gnupg \
		--enable-maintainer-mode \
		$(NODOC) \
		$(foreach x, $(GPGV_UNNEEDED), --disable-$(x))

override_dh_auto_test:
	# stripped down build fails on make check

endif  # ifeq ($(filter pkg.gnupg2.gpgvonly,$(DEB_BUILD_PROFILES)),


execute_before_dh_autoreconf:
	echo "Developer change history can be found in the source tarball. See NEWS for high-level changes." > ChangeLog

# visualizations of package dependencies:
debian/%.png: debian/%.dot
	dot -T png -o $@ $<