sys-libs/libxcrypt: Version bump to 4.4.10 (bug #686478)
authorPatrick McLean <patrick.mclean@sony.com>
Tue, 5 Nov 2019 02:52:19 +0000 (18:52 -0800)
committerPatrick McLean <chutzpah@gentoo.org>
Tue, 5 Nov 2019 02:52:59 +0000 (18:52 -0800)
This installs to an alternate `xcrypt` subdirectory as suggested by
Michał Górny at https://bugs.gentoo.org/686478#c9 to avoid the issues
mentioned at https://bugs.gentoo.org/686478#c1

Since this installs a pkgconfig, any reverse dependency using pkgconfig
should pick up the path change automatically. Otherwise they will have
to be updated.

Closes: https://bugs.gentoo.org/686478
Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
sys-libs/libxcrypt/Manifest
sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch [new file with mode: 0644]
sys-libs/libxcrypt/libxcrypt-4.4.10.ebuild [new file with mode: 0644]
sys-libs/libxcrypt/metadata.xml

index 707e4d36b80cee6d1ab380018b376628f2faba13..0bdde211d72e88dd19dcc9ac54f8de972bf872ce 100644 (file)
@@ -1 +1,2 @@
+DIST libxcrypt-4.4.10.tar.gz 499736 BLAKE2B 32da99488c21a21c3310a735a08a70002a3a56d7d9d4a9fd0c16436ef2b42ee8a9b877c5b5dcbf1bc9a38fbef3370d5ff4585167ff25025f854ccd020014dcd4 SHA512 fd714542dad40db721c03270b5a03e2c068b0750e887dcac4c651433d5905d08bd5c5db3762cc2e4ceee0103bd62810559ea197d164126169e0b253675415ca2
 DIST libxcrypt_2.4.orig.tar.gz 361503 BLAKE2B 6347bea4b22ae7742cb516a0a8673bbd7c37f645b2dbb383f4c4a6bbcc95a12897068ab7354fa015bbb65f6dc331b95ce24b48aa4bdd7a57433d8f5bc245392d SHA512 7171ce1b5b7f949232c4db94cf98bdd6396c3e2a8f2f483c041cab92d752e3a2fa93d564ede7efece57c069df129e6cc03049cf3e3f07bd3556031a7c4197cbf
diff --git a/sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch b/sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch
new file mode 100644 (file)
index 0000000..0ca1563
--- /dev/null
@@ -0,0 +1,17 @@
+diff --git a/configure.ac b/configure.ac
+index 16885c8..fd8c8e3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -247,11 +247,7 @@ ENABLE_CRYPT_KAT_GEN="no"
+ # This way we just need one call to AC_PATH_PROGS to likely get a
+ # suitable version of Python.  The version check afterwards is for
+ # the case just a generic 'python3' or 'python' executable was found.
+-PYTHON_CANDIDATE_VERSIONS="python3 python"
+-
+-for ver in `seq 6 1 10`; do
+-  PYTHON_CANDIDATE_VERSIONS="python3.$ver $PYTHON_CANDIDATE_VERSIONS"
+-done
++PYTHON_CANDIDATE_VERSIONS="${EPYTHON}"
+ AC_PATH_PROGS([PYTHON], [$PYTHON_CANDIDATE_VERSIONS], [])
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.10.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.10.ebuild
new file mode 100644 (file)
index 0000000..c656e73
--- /dev/null
@@ -0,0 +1,57 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7} )
+inherit python-any-r1 autotools
+
+DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others "
+SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/besser82/libxcrypt"
+
+LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
+SLOT="0/2"
+KEYWORDS="~amd64 ~x86"
+IUSE="split-usr test"
+
+BDEPEND="sys-apps/findutils
+       test? ( ${PYTHON_DEPS} )"
+
+PATCHES=(
+       "${FILESDIR}/libxcrypt-4.4.10-pythonver.patch"
+)
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       econf \
+               --disable-static \
+               --enable-obsolete-api=no \
+               --libdir=$(usex split-usr '/usr' '')/$(get_libdir)/xcrypt \
+               --with-pkgconfigdir=/usr/$(get_libdir)/pkgconfig \
+               --includedir="${EPREFIX}/usr/include/xcrypt"
+}
+
+src_test() {
+       emake check
+}
+
+src_install() {
+       default
+
+       # make sure out man pages don't collide with glibc or man-pages
+       (
+               shopt -s failglob || die "failglob failed"
+               for manpage in "${ED}"/usr/share/man/man*/*.?*; do
+                       mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \
+                               || die "mv failed"
+               done
+       ) || die "no man pages to rename"
+}
index 3f12685cdb12a832ca6657174bc3d23e4f10b5bf..8ce970ea7f31090e5395e1fdd13b070652c03b9d 100644 (file)
@@ -1,13 +1,16 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-       <maintainer type="project">
-               <email>hardened@gentoo.org</email>
-               <name>Gentoo Hardened</name>
-       </maintainer>
-       <longdescription>
-               Crypt library for DES, MD5, and blowfish. Libxcrypt is a replacement for
-               libcrypt, which comes with the GNU C Library. It supports DES crypt,
-               MD5, and passwords with blowfish encryption.
-       </longdescription>
+  <maintainer type="project">
+    <email>hardened@gentoo.org</email>
+    <name>Gentoo Hardened</name>
+  </maintainer>
+  <longdescription>
+        Crypt library for DES, MD5, and blowfish. Libxcrypt is a replacement for
+        libcrypt, which comes with the GNU C Library. It supports DES crypt,
+        MD5, and passwords with blowfish encryption.
+  </longdescription>
+  <upstream>
+    <remote-id type="github">besser82/libxcrypt</remote-id>
+  </upstream>
 </pkgmetadata>