commit: 599b18d0d550930be4c4585c010404efb454262f Author: Matt Jolly <kangie <AT> gentoo <DOT> org> AuthorDate: Thu Dec 4 01:31:45 2025 +0000 Commit: Matt Jolly <kangie <AT> gentoo <DOT> org> CommitDate: Thu Dec 4 01:40:08 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=599b18d0
app-arch/dpkg: add 1.22.21 Add `dot-a.eclass` and drop USE=static-libs: We're only building static libs at this point, there's no point in a USE for the only valid combination. Instead, rely on the default behaviour and hard-coded `--enable-static` (and upstream behaviour) to ensure that an appropriate library is built and installed. Signed-off-by: Matt Jolly <kangie <AT> gentoo.org> app-arch/dpkg/Manifest | 1 + app-arch/dpkg/dpkg-1.22.21.ebuild | 124 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+) diff --git a/app-arch/dpkg/Manifest b/app-arch/dpkg/Manifest index d91bc38d60f5..5dd91e7044fc 100644 --- a/app-arch/dpkg/Manifest +++ b/app-arch/dpkg/Manifest @@ -1,2 +1,3 @@ DIST dpkg_1.22.14.tar.xz 5728012 BLAKE2B d14e4550f562fd054a073bfb5e9269aff82a3b582ce8676073b67c9ee72baf5a242ee62a91b56966db2569f93255a6475c75b246527142f94f3c1de91c48f673 SHA512 43b0776cf6fef8beb771c552b9824e86bbe554b0738c13ae4d1b89821c79aa2ae26a7d30d3b3b865df89374a1625adbb31da45bf208dafe87fc1a7b175fe4a28 DIST dpkg_1.22.19.tar.xz 5748756 BLAKE2B 6c5017bb6132c88215d23194120e4c52b02310cd593c79b1db96e0b7f22456f70a6749aa91cb9796ac99fe698edfcb025841e0cb676731d4232a088aa32119fe SHA512 951bf8b228c00899db6618752745d7db69e9c22754f4a5c84c9e45604477e448253713e51cb29d9ef2346825aa28f0812ce1c4653ab01c8e8c2ea962cf86ded9 +DIST dpkg_1.22.21.tar.xz 5743920 BLAKE2B cac56e2c734e6d7374cff5174902d4b023e41202f3955bbcadddc59d549f1961a2068092d083e4271b209a2bb82546cf9ed45bcda9b84a433e82720eccdf30ad SHA512 80a45a019133481f8ab54f4e3db0e776324ba49ba960bc26ef234b6032626e0ea87d439883b9b533f0a404d66391a272fd239b88b7bbf4e2cd904a985867d7ef diff --git a/app-arch/dpkg/dpkg-1.22.21.ebuild b/app-arch/dpkg/dpkg-1.22.21.ebuild new file mode 100644 index 000000000000..a6cae7de5cde --- /dev/null +++ b/app-arch/dpkg/dpkg-1.22.21.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools dot-a toolchain-funcs multiprocessing + +DESCRIPTION="Package maintenance system for Debian" +HOMEPAGE="https://packages.qa.debian.org/dpkg" +SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="+bzip2 +lzma nls selinux test +update-alternatives +zlib +zstd" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=app-arch/gzip-1.7 + >=app-arch/tar-1.34-r1 + app-crypt/libmd + >=dev-lang/perl-5.32.1:= + sys-libs/ncurses:=[unicode(+)] + bzip2? ( app-arch/bzip2 ) + elibc_musl? ( sys-libs/obstack-standalone ) + lzma? ( app-arch/xz-utils ) + nls? ( virtual/libintl ) + selinux? ( sys-libs/libselinux ) + zlib? ( >=virtual/zlib-1.1.4:= ) + zstd? ( app-arch/zstd:= ) +" +DEPEND=" + ${RDEPEND} + app-arch/xz-utils + virtual/pkgconfig + test? ( + dev-perl/IO-String + dev-perl/Test-Pod + ) +" +BDEPEND=" + sys-devel/flex + nls? ( + app-text/po4a + >=sys-devel/gettext-0.18.2 + ) +" +RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.22.0-flags.patch +) + +src_prepare() { + default + + sed -i -e 's|\<ar\>|${AR}|g' src/at/deb-format.at src/at/testsuite || die + + eautoreconf +} + +src_configure() { + tc-export AR CC + lto-guarantee-fat + + # dpkg uses LT_INIT([disable-shared]) in configure.ac where GNU libtool + # enables static if both --disable-shared and --disable-static are set while + # slibtool disables both so explicitly set --enable-static until upstream + # supports shared libraries. + # https://bugs.gentoo.org/956332 + local myconf=( + # We don't want to override our toolchain defaults which + # set the same things. + --disable-compiler-hardening + --disable-compiler-warnings + --disable-devel-docs + --disable-dselect + --disable-start-stop-daemon + --enable-static + --enable-unicode + --localstatedir="${EPREFIX}"/var + $(use_enable nls) + $(use_enable update-alternatives) + $(use_with bzip2 libbz2) + $(use_with lzma liblzma) + $(use_with selinux libselinux) + $(use_with zlib libz) + $(use_with zstd libzstd) + ) + + econf "${myconf[@]}" +} + +src_compile() { + emake AR="$(tc-getAR)" +} + +src_test() { + emake -Onone check TEST_PARALLEL="$(makeopts_jobs)" TEST_VERBOSE=1 +} + +src_install() { + local DOCS=( debian/changelog THANKS TODO ) + default + strip-lto-bytecode usr/$(get_libdir)/libdpkg.a + + # https://bugs.gentoo.org/835520 + mv -v "${ED}"/usr/share/zsh/{vendor-completions,site-functions} || die + + # https://bugs.gentoo.org/840320 + insinto /etc/dpkg/origins + newins - gentoo <<-_EOF_ + Vendor: Gentoo + Vendor-URL: https://www.gentoo.org/ + Bugs: https://bugs.gentoo.org/ + _EOF_ + dosym gentoo /etc/dpkg/origins/default + + keepdir \ + /usr/$(get_libdir)/db/methods/{mnt,floppy,disk} \ + /var/lib/dpkg/{alternatives,info,parts,updates} + + find "${ED}" -name '*.la' -delete || die +}
