summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/dpkg/dpkg-1.21.15.ebuild')
-rw-r--r--app-arch/dpkg/dpkg-1.21.15.ebuild103
1 files changed, 103 insertions, 0 deletions
diff --git a/app-arch/dpkg/dpkg-1.21.15.ebuild b/app-arch/dpkg/dpkg-1.21.15.ebuild
new file mode 100644
index 000000000000..2a5678759150
--- /dev/null
+++ b/app-arch/dpkg/dpkg-1.21.15.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools toolchain-funcs
+
+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 ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="+bzip2 +lzma nls selinux static-libs test +update-alternatives +zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=app-arch/gzip-1.7
+ >=app-arch/tar-1.34-r1
+ app-crypt/libmd
+ >=dev-lang/perl-5.14.2:=
+ sys-libs/ncurses:=[unicode(+)]
+ bzip2? ( app-arch/bzip2 )
+ lzma? ( app-arch/xz-utils )
+ nls? ( virtual/libintl )
+ selinux? ( sys-libs/libselinux )
+ zlib? ( >=sys-libs/zlib-1.1.4 )
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+ test? (
+ dev-perl/IO-String
+ dev-perl/Test-Pod
+ virtual/perl-Test-Harness
+ )
+"
+BDEPEND="
+ sys-devel/flex
+ nls? (
+ app-text/po4a
+ >=sys-devel/gettext-0.18.2
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.18.12-flags.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i -e 's|\<ar\>|${AR}|g' src/at/deb-format.at src/at/testsuite || die
+
+ # upstream sets 200, that's a bit too short.
+ # it may not fail in real usage, but fails with /var/tmp/portage/$cat/pkg added.
+ # on my system it's exactly 201 characters.
+ sed -i -e 's/char\ buf\[200\]/char\ buf\[300\]/' src/deb/extract.c || die
+
+ eautoreconf
+}
+
+src_configure() {
+ tc-export AR CC
+
+ local myconf=(
+ --disable-compiler-warnings
+ --disable-devel-docs
+ --disable-dselect
+ --disable-start-stop-daemon
+ --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)
+
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ local DOCS=( debian/changelog THANKS TODO )
+ default
+
+ keepdir \
+ /usr/$(get_libdir)/db/methods/{mnt,floppy,disk} \
+ /var/lib/dpkg/{alternatives,info,parts,updates}
+
+ find "${ED}" -name '*.la' -delete || die
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}