summaryrefslogtreecommitdiff
path: root/app-arch/cpio
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/cpio')
-rw-r--r--app-arch/cpio/Manifest3
-rw-r--r--app-arch/cpio/cpio-2.14.ebuild50
-rw-r--r--app-arch/cpio/files/cpio-2.14-sysmacros-glibc-2.26.patch42
3 files changed, 95 insertions, 0 deletions
diff --git a/app-arch/cpio/Manifest b/app-arch/cpio/Manifest
index d90af724ffce..e0cb9d391242 100644
--- a/app-arch/cpio/Manifest
+++ b/app-arch/cpio/Manifest
@@ -2,7 +2,10 @@ AUX cpio-2.12-non-gnu-compilers.patch 223 BLAKE2B e5ba3da0c1dc23199e52c3782d3a11
AUX cpio-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch 1505 BLAKE2B 77be2bbd0df1b7b44e7517aedd4393d5b4cdb5e90508fa45aa961efe32b4061beaf43b23798908c714aa23a252e914402b22a494d0d6def0a4dc8294b8f84418 SHA512 a60cbfb3cc418d9d45e226e6da4c857176ce0517e829e288ffa7dd85b8fcca1c0a7c0ae0e0eab14fdb438be742f2625aa1c3169a41d1fa05c5e3cd426f270687
AUX cpio-2.13-sysmacros-glibc-2.26.patch 1449 BLAKE2B 7f57aa4c5f5c23bd78a35bd6aa9511d04fbfe37e76101c46eb76a0ed3d4fbd8d072e922d7a6131b6cd6173570dabb6cfcc412f91eaf4806dde296f6365c3f229 SHA512 219804608cd7d9cc7f3535cb071639845ea8dd6ab1f17c0fa11601030835a5445c93120b09efa55fd84c0d57635b01feded8430ca1eeeac154ddc1d960a9a5b0
AUX cpio-2.13-wincompatible-function-pointer-types.patch 747 BLAKE2B 9145485db928d5fa1451d110dbf4a05253ac1e59b93e9089041e81276987fbe28f272ebae8964a29b0038f832340d44e184c6db9b9b1b8349ca8aefa512268d3 SHA512 24eac288b2c3a9afb07163d8aca14c80652b5fe7da66c6390c9ec16afe931c7398817ecb3d12cb8ff9152b3d181a1e031a3aba2b13f3ba4340846ea77be7d3f4
+AUX cpio-2.14-sysmacros-glibc-2.26.patch 1429 BLAKE2B fa2d83eee1c281eb391577e4837e15b6c58628c7eedb5429e61e26f601735c6bcebc2336824d54e60b534f9a904f9a1431912931a5c7872957effd941daccbe7 SHA512 3e0df053cd5f893e6495c6f46bf84381336491633a78a4b8d26893a3c73778fbc7d12a2cc2daeeed28f25053ab6833a9463a2fc110f7b4c24034b5bb5ba9d3e6
DIST cpio-2.13-CVE-2021-38185.patch.xz 7844 BLAKE2B e338950e03c3eed3b4288435c9c75af8f0c3497b43680be4ee347e628db7cfac616b437a848094bf82cfc2c7f29d59b388bf0f6368b3b99770022e3f9533be11 SHA512 4d2cafefcd1ae9d86cb5171de2896799713490dfd9ed27d3dce0886fa4588c8df2b16ad8508a5dbb9155c9de6e40b6d1083bdb4774d967193a270a1dcbe37a33
DIST cpio-2.13.tar.bz2 1354559 BLAKE2B 45d77723acb55f15c8574ab5a2fdff6fb1767629d177dd3416b0268e9f82ee6bdd11b4fa591ef020efccbdc3f4918cf77263169da1a0f6422dfe1a9712295778 SHA512 459398e69f7f48201c04d1080218c50f75edcf114ffcbb236644ff6fcade5fcc566929bdab2ebe9be5314828d6902e43b348a8adf28351df978c8989590e93a3
+DIST cpio-2.14.tar.bz2 1521004 BLAKE2B f2fa9f5bc39cd91f4755fdf27f43cff4d1c1f098639502689a01314762ad686bf357a1eda7f92e4c802e6e8335548ca31fc789cea056ef685c558892ddcbebd1 SHA512 2dc93a81e31b6fb7ff9976243d22ca7a84bb396c7ad09e0abfb5d5efae1164ebb319fb89be45045797f8c604b3e3d2ea0746e3cfe559aa86282ea4ec9a17da28
EBUILD cpio-2.13-r5.ebuild 1527 BLAKE2B f82a77afd696bb32f1f8835450f638e9203c7edafceaeb4a893eb55fa394b1d8f23b7c32c359a726bdead2ca1aac045241f4166467aff77f25796dbbd5f550d1 SHA512 a2585c58aba0919afc098e92bba148a6edc3259ab1757b355d8bc6dd28ed6cf4817e9e4b150dce132063429423b624cf8a28a360c7fe8a2814fd3b0ca75f5210
+EBUILD cpio-2.14.ebuild 1196 BLAKE2B fd3f4021aef5b434fa4d1f7453c55286a0635d98c21e4d2117eb5f53ba7b12b53b414c53f78e1f5241a660ab31a0e29032c90635a8a9e09d79f01d3f7366d2dd SHA512 35ea5c58de1c69a2738ec9550d565c2d7a4900fbf6e1a13499cd096909f1d8dd8a9460692b81df392882cb5958810db9e9ceaf22ed588b2dc43f8e6c65128a21
MISC metadata.xml 328 BLAKE2B f8b8bff5b160351a92837553de20eda1da31a6c0594c1118e1f71b3cd19d9ea8d3420bdce943d83644f5ffc234950f95fb9229a213660767dc5281120085b26f SHA512 08e1c6a03b894946bf6332bf46c8a7534ed0998777b30cb9eecb9c746bb333b65fb41dfeeb6938cbc08d0ad0a303d752ea70a6a6a6ae2c5c2935b2b4e4d9928f
diff --git a/app-arch/cpio/cpio-2.14.ebuild b/app-arch/cpio/cpio-2.14.ebuild
new file mode 100644
index 000000000000..1d3937b4bbab
--- /dev/null
+++ b/app-arch/cpio/cpio-2.14.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="A file archival tool which can also read and write tar files"
+HOMEPAGE="https://www.gnu.org/software/cpio/cpio.html"
+SRC_URI="mirror://gnu/cpio/${P}.tar.bz2"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls"
+
+PDEPEND="
+ app-alternatives/cpio
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch #275295
+ "${FILESDIR}"/${PN}-2.14-sysmacros-glibc-2.26.patch
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable nls)
+ --bindir="${EPREFIX}"/bin
+ --with-rmt="${EPREFIX}"/usr/sbin/rmt
+ # install as gcpio for better compatibility with non-GNU userland
+ --program-prefix=g
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlink before app-alternatives/cpio
+ # is installed
+ if [[ ! -h ${EROOT}/bin/cpio ]]; then
+ ln -s gcpio "${EROOT}/bin/cpio" || die
+ fi
+}
diff --git a/app-arch/cpio/files/cpio-2.14-sysmacros-glibc-2.26.patch b/app-arch/cpio/files/cpio-2.14-sysmacros-glibc-2.26.patch
new file mode 100644
index 000000000000..e6b187c8f5c6
--- /dev/null
+++ b/app-arch/cpio/files/cpio-2.14-sysmacros-glibc-2.26.patch
@@ -0,0 +1,42 @@
+--- a/am/ax_compile_check_rettype.m4
++++ b/am/ax_compile_check_rettype.m4
+@@ -70,6 +70,9 @@ AC_CACHE_VAL(AC_CV_NAME,
+ [for ac_type in char short int long "long long" $4
+ do
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
++#ifdef HAVE_SYS_SYSMACROS_H
++#include <sys/sysmacros.h>
++#endif
+ #include <sys/types.h>
+ $3
+ ]], [[switch (0) case 0: case (sizeof ($1($2)) == sizeof ($ac_type)):;]])], [AC_CV_NAME=$ac_type])
+--- a/configure.ac
++++ b/configure.ac
+@@ -37,14 +37,11 @@ gl_EARLY
+ AC_C_PROTOTYPES
+
+ AC_SYS_LARGEFILE
+-AC_HEADER_MAJOR
+ AC_C_CONST
+ AC_TYPE_UID_T
+ AC_CHECK_TYPE(gid_t, int)
+
+ AC_HEADER_DIRENT
+-AX_COMPILE_CHECK_RETTYPE([major], [0])
+-AX_COMPILE_CHECK_RETTYPE([minor], [0])
+
+ AC_CHECK_FUNCS([fchmod fchown])
+ # This is needed for mingw build
+@@ -65,7 +62,11 @@ AC_ARG_ENABLE(mt,
+
+ AM_CONDITIONAL([CPIO_MT_COND], [test "$enable_mt" = yes])
+
+-AC_CHECK_HEADERS([unistd.h stdlib.h string.h fcntl.h pwd.h grp.h sys/io/trioctl.h utmp.h getopt.h locale.h libintl.h sys/wait.h utime.h locale.h process.h sys/ioctl.h])
++AC_CHECK_HEADERS([unistd.h stdlib.h string.h fcntl.h pwd.h grp.h sys/io/trioctl.h utmp.h getopt.h locale.h libintl.h sys/wait.h utime.h locale.h process.h sys/ioctl.h sys/sysmacros.h])
++
++AC_HEADER_MAJOR
++AC_COMPILE_CHECK_RETTYPE([major], [0])
++AC_COMPILE_CHECK_RETTYPE([minor], [0])
+
+ AC_CHECK_DECLS([errno, getpwnam, getgrnam, getgrgid, strdup, strerror, getenv, atoi, exit], , , [
+ #include <stdio.h>