summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/7zip/7zip-23.01.ebuild109
-rw-r--r--app-arch/7zip/Manifest2
-rw-r--r--app-arch/7zip/files/7zip-23.01-respect-build-env.patch53
-rw-r--r--app-arch/7zip/metadata.xml28
-rw-r--r--app-arch/advancecomp/Manifest2
-rw-r--r--app-arch/advancecomp/advancecomp-2.6.ebuild (renamed from app-arch/advancecomp/advancecomp-2.2_pre20190301.ebuild)38
-rw-r--r--app-arch/advancecomp/metadata.xml2
-rw-r--r--app-arch/afio/afio-2.5.1-r2.ebuild4
-rw-r--r--app-arch/afio/metadata.xml4
-rw-r--r--app-arch/alien/Manifest1
-rw-r--r--app-arch/alien/alien-8.95-r2.ebuild (renamed from app-arch/alien/alien-8.95-r1.ebuild)19
-rw-r--r--app-arch/alien/alien-8.95.6.ebuild25
-rw-r--r--app-arch/alien/metadata.xml12
-rw-r--r--app-arch/arc/arc-5.21p-r1.ebuild (renamed from app-arch/arc/arc-5.21p.ebuild)11
-rw-r--r--app-arch/arc/files/arc-5.21m-darwin.patch4
-rw-r--r--app-arch/arc/files/arc-5.21o-interix.patch12
-rw-r--r--app-arch/arc/files/arc-5.21p-variadic-arcdie.patch38
-rw-r--r--app-arch/arc/metadata.xml2
-rw-r--r--app-arch/arj/arj-3.10.22-r8.ebuild (renamed from app-arch/arj/arj-3.10.22-r7.ebuild)24
-rw-r--r--app-arch/arj/files/arj-3.10.22-interix.patch45
-rw-r--r--app-arch/arj/metadata.xml2
-rw-r--r--app-arch/atool/atool-0.39.0-r1.ebuild17
-rw-r--r--app-arch/atool/files/atool-0.39.0-configure-bashism.patch12
-rw-r--r--app-arch/atool/metadata.xml2
-rw-r--r--app-arch/bloscpack/Manifest1
-rw-r--r--app-arch/bloscpack/bloscpack-0.16.0.ebuild38
-rw-r--r--app-arch/bloscpack/metadata.xml17
-rw-r--r--app-arch/brotli/Manifest4
-rw-r--r--app-arch/brotli/brotli-1.0.6-r1.ebuild80
-rw-r--r--app-arch/brotli/brotli-1.0.9-r1.ebuild84
-rw-r--r--app-arch/brotli/brotli-1.0.9-r6.ebuild106
-rw-r--r--app-arch/brotli/brotli-1.1.0.ebuild (renamed from app-arch/brotli/brotli-1.0.7.ebuild)83
-rw-r--r--app-arch/brotli/brotli-9999.ebuild83
-rw-r--r--app-arch/brotli/metadata.xml6
-rw-r--r--app-arch/bsdsfv/bsdsfv-1.18-r3.ebuild (renamed from app-arch/bsdsfv/bsdsfv-1.18-r2.ebuild)12
-rw-r--r--app-arch/bsdsfv/metadata.xml2
-rw-r--r--app-arch/bzip2/Manifest3
-rw-r--r--app-arch/bzip2/bzip2-1.0.6-r11.ebuild118
-rw-r--r--app-arch/bzip2/bzip2-1.0.8-r4.ebuild (renamed from app-arch/bzip2/bzip2-1.0.7-r1.ebuild)52
-rw-r--r--app-arch/bzip2/bzip2-1.0.8-r5.ebuild (renamed from app-arch/bzip2/bzip2-1.0.8-r1.ebuild)53
-rw-r--r--app-arch/bzip2/bzip2-9999.ebuild47
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch21
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-CVE-2016-3189.patch18
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-mingw.patch27
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-nselectors-upper-bound-check.patch30
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-out-of-tree-build.patch79
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-saneso.patch13
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch24
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.7-out-of-tree-build.patch76
-rw-r--r--app-arch/bzip2/files/bzip2-1.0.7-saneso.patch13
-rw-r--r--app-arch/bzip2/metadata.xml3
-rw-r--r--app-arch/bzip3/Manifest1
-rw-r--r--app-arch/bzip3/bzip3-1.4.0.ebuild32
-rw-r--r--app-arch/bzip3/metadata.xml21
-rw-r--r--app-arch/cabextract/Manifest4
-rw-r--r--app-arch/cabextract/cabextract-1.11.ebuild (renamed from app-arch/cabextract/cabextract-1.9.1.ebuild)17
-rw-r--r--app-arch/cabextract/cabextract-1.8.ebuild39
-rw-r--r--app-arch/cabextract/cabextract-1.9-r2.ebuild72
-rw-r--r--app-arch/cabextract/cabextract-9999.ebuild17
-rw-r--r--app-arch/cabextract/files/cabextract-1.9-fix-bigendian.patch17
-rw-r--r--app-arch/cabextract/files/cabextract-1.9-remove-spurious-test_files.patch17
-rw-r--r--app-arch/cabextract/metadata.xml25
-rw-r--r--app-arch/cfv/Manifest1
-rw-r--r--app-arch/cfv/cfv-3.0.0.ebuild48
-rw-r--r--app-arch/cfv/metadata.xml20
-rw-r--r--app-arch/cksfv/Manifest2
-rw-r--r--app-arch/cksfv/cksfv-1.3.15.ebuild (renamed from app-arch/cksfv/cksfv-1.3.14-r1.ebuild)7
-rw-r--r--app-arch/cksfv/files/cksfv-1.3.15-destdir.patch18
-rw-r--r--app-arch/cksfv/metadata.xml7
-rw-r--r--app-arch/clzip/Manifest2
-rw-r--r--app-arch/clzip/clzip-1.14.ebuild32
-rw-r--r--app-arch/clzip/metadata.xml8
-rw-r--r--app-arch/cpio/Manifest4
-rw-r--r--app-arch/cpio/cpio-2.12-r1.ebuild28
-rw-r--r--app-arch/cpio/cpio-2.13-r5.ebuild55
-rw-r--r--app-arch/cpio/cpio-2.13.ebuild27
-rw-r--r--app-arch/cpio/cpio-2.14.ebuild50
-rw-r--r--app-arch/cpio/cpio-2.15.ebuild54
-rw-r--r--app-arch/cpio/files/cpio-2.12-gcc-10.patch27
-rw-r--r--app-arch/cpio/files/cpio-2.12-name-overflow.patch15
-rw-r--r--app-arch/cpio/files/cpio-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch47
-rw-r--r--app-arch/cpio/files/cpio-2.13-sysmacros-glibc-2.26.patch42
-rw-r--r--app-arch/cpio/files/cpio-2.13-wincompatible-function-pointer-types.patch23
-rw-r--r--app-arch/cpio/files/cpio-2.14-sysmacros-glibc-2.26.patch42
-rw-r--r--app-arch/cpio/metadata.xml2
-rw-r--r--app-arch/createrepo_c/Manifest2
-rw-r--r--app-arch/createrepo_c/createrepo_c-1.0.4.ebuild66
-rw-r--r--app-arch/createrepo_c/createrepo_c-1.1.0.ebuild66
-rw-r--r--app-arch/createrepo_c/createrepo_c-9999.ebuild66
-rw-r--r--app-arch/createrepo_c/metadata.xml26
-rw-r--r--app-arch/csnappy/Manifest1
-rw-r--r--app-arch/csnappy/csnappy-0_pre20220804.ebuild44
-rw-r--r--app-arch/csnappy/files/csnappy-0_pre20220804-fix-tests.patch41
-rw-r--r--app-arch/csnappy/metadata.xml11
-rw-r--r--app-arch/deb2targz/deb2targz-1-r3.ebuild4
-rw-r--r--app-arch/deb2targz/metadata.xml4
-rw-r--r--app-arch/dpkg/Manifest12
-rw-r--r--app-arch/dpkg/dpkg-1.19.0.5.ebuild87
-rw-r--r--app-arch/dpkg/dpkg-1.19.6.ebuild91
-rw-r--r--app-arch/dpkg/dpkg-1.19.7.ebuild91
-rw-r--r--app-arch/dpkg/dpkg-1.20.0.ebuild90
-rw-r--r--app-arch/dpkg/dpkg-1.20.12-r1.ebuild (renamed from app-arch/dpkg/dpkg-1.20.2.ebuild)33
-rw-r--r--app-arch/dpkg/dpkg-1.20.9-r1.ebuild (renamed from app-arch/dpkg/dpkg-1.20.5.ebuild)11
-rw-r--r--app-arch/dpkg/dpkg-1.21.1.ebuild (renamed from app-arch/dpkg/dpkg-1.20.3.ebuild)24
-rw-r--r--app-arch/dpkg/dpkg-1.21.15-r2.ebuild112
-rw-r--r--app-arch/dpkg/dpkg-1.21.15-r3.ebuild113
-rw-r--r--app-arch/dpkg/dpkg-1.21.19-r1.ebuild113
-rw-r--r--app-arch/dpkg/dpkg-1.21.19.ebuild112
-rw-r--r--app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch10
-rw-r--r--app-arch/dpkg/files/dpkg-1.20.12-m4-stdio.patch25
-rw-r--r--app-arch/dpkg/files/dpkg-1.20.9-CVE-2022-1664.patch324
-rw-r--r--app-arch/dpkg/files/dpkg-1.21.15-arch_pm.patch32
-rw-r--r--app-arch/dpkg/files/dpkg-1.21.15-buf-overflow.patch45
-rw-r--r--app-arch/dpkg/metadata.xml15
-rw-r--r--app-arch/drpm/Manifest1
-rw-r--r--app-arch/drpm/drpm-0.5.2.ebuild46
-rw-r--r--app-arch/drpm/drpm-9999.ebuild46
-rw-r--r--app-arch/drpm/metadata.xml11
-rw-r--r--app-arch/dtrx/Manifest1
-rw-r--r--app-arch/dtrx/dtrx-8.5.3-r1.ebuild57
-rw-r--r--app-arch/dtrx/dtrx-9999.ebuild57
-rw-r--r--app-arch/dtrx/metadata.xml14
-rw-r--r--app-arch/duff/duff-0.5.2.ebuild12
-rw-r--r--app-arch/duff/metadata.xml2
-rw-r--r--app-arch/dump/Manifest2
-rw-r--r--app-arch/dump/dump-0.4.47-r1.ebuild (renamed from app-arch/dump/dump-0.4.46-r1.ebuild)47
-rw-r--r--app-arch/dump/dump-0.4.47-r2.ebuild96
-rw-r--r--app-arch/dump/dump-0.4.47-r3.ebuild107
-rw-r--r--app-arch/dump/files/dump-0.4.46-openssl11.patch91
-rw-r--r--app-arch/dump/files/dump-fix-incompatible-pointer-to-integer-conversion.patch25
-rw-r--r--app-arch/dump/metadata.xml2
-rw-r--r--app-arch/engrampa/Manifest5
-rw-r--r--app-arch/engrampa/engrampa-1.24.0-r1.ebuild73
-rw-r--r--app-arch/engrampa/engrampa-1.24.1.ebuild69
-rw-r--r--app-arch/engrampa/engrampa-1.26.1.ebuild74
-rw-r--r--app-arch/engrampa/engrampa-1.26.2.ebuild74
-rw-r--r--app-arch/engrampa/engrampa-1.28.1.ebuild67
-rw-r--r--app-arch/engrampa/files/engrampa-1.26.0-clang16.patch24
-rw-r--r--app-arch/engrampa/metadata.xml18
-rw-r--r--app-arch/fastjar/Manifest1
-rw-r--r--app-arch/fastjar/fastjar-0.98-r3.ebuild24
-rw-r--r--app-arch/fastjar/files/0.98-traversal.patch112
-rw-r--r--app-arch/fastjar/metadata.xml13
-rw-r--r--app-arch/file-roller/Manifest4
-rw-r--r--app-arch/file-roller/file-roller-44.1.ebuild (renamed from app-arch/file-roller/file-roller-3.32.4.ebuild)51
-rw-r--r--app-arch/file-roller/file-roller-44.ebuild (renamed from app-arch/file-roller/file-roller-3.36.3.ebuild)41
-rw-r--r--app-arch/file-roller/files/3.32-packages.match34
-rw-r--r--app-arch/file-roller/files/3.36-packages.match4
-rw-r--r--app-arch/file-roller/files/file-roller-3.32.4-fno-common.patch27
-rw-r--r--app-arch/file-roller/metadata.xml27
-rw-r--r--app-arch/funzix/funzix-1.0-r1.ebuild (renamed from app-arch/funzix/funzix-1.0.ebuild)12
-rw-r--r--app-arch/funzix/metadata.xml2
-rw-r--r--app-arch/gcab/Manifest2
-rw-r--r--app-arch/gcab/gcab-1.6.ebuild (renamed from app-arch/gcab/gcab-1.4.ebuild)24
-rw-r--r--app-arch/gcab/metadata.xml13
-rw-r--r--app-arch/gnome-autoar/Manifest2
-rw-r--r--app-arch/gnome-autoar/gnome-autoar-0.2.4.ebuild42
-rw-r--r--app-arch/gnome-autoar/gnome-autoar-0.4.4.ebuild49
-rw-r--r--app-arch/gnome-autoar/metadata.xml19
-rw-r--r--app-arch/gtk-splitter/files/gtk-splitter-2.2.1-format-security.patch44
-rw-r--r--app-arch/gtk-splitter/gtk-splitter-2.2.1-r2.ebuild (renamed from app-arch/gtk-splitter/gtk-splitter-2.2.1-r1.ebuild)27
-rw-r--r--app-arch/gtk-splitter/metadata.xml2
-rw-r--r--app-arch/gxz/Manifest1
-rw-r--r--app-arch/gxz/gxz-0.5.12.ebuild28
-rw-r--r--app-arch/gxz/metadata.xml11
-rw-r--r--app-arch/gzip/Manifest4
-rw-r--r--app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch134
-rw-r--r--app-arch/gzip/gzip-1.10.ebuild39
-rw-r--r--app-arch/gzip/gzip-1.13.ebuild97
-rw-r--r--app-arch/gzip/gzip-1.9.ebuild40
-rw-r--r--app-arch/gzip/metadata.xml23
-rw-r--r--app-arch/hardlink/hardlink-0.3.2.ebuild6
-rw-r--r--app-arch/hardlink/metadata.xml4
-rw-r--r--app-arch/innoextract/Manifest3
-rw-r--r--app-arch/innoextract/files/innoextract-1.9-boost-1.85.0.patch21
-rw-r--r--app-arch/innoextract/files/innoextract-1.9-fix-linkage.patch17
-rw-r--r--app-arch/innoextract/innoextract-1.7.ebuild35
-rw-r--r--app-arch/innoextract/innoextract-1.9.ebuild (renamed from app-arch/innoextract/innoextract-1.8.ebuild)11
-rw-r--r--app-arch/innoextract/metadata.xml10
-rw-r--r--app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16-musl-info.patch21
-rw-r--r--app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16.patch27
-rw-r--r--app-arch/lbzip2/lbzip2-2.5_p20181227-r2.ebuild (renamed from app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild)26
-rw-r--r--app-arch/lbzip2/metadata.xml5
-rw-r--r--app-arch/lcab/lcab-1.0_beta12.ebuild4
-rw-r--r--app-arch/lcab/metadata.xml2
-rw-r--r--app-arch/lha/Manifest1
-rw-r--r--app-arch/lha/lha-114i_p20201004.ebuild13
-rw-r--r--app-arch/lha/lha-114i_p20210328.ebuild32
-rw-r--r--app-arch/lha/metadata.xml5
-rw-r--r--app-arch/libarchive/Manifest7
-rw-r--r--app-arch/libarchive/files/libarchive-3.3.3-libressl.patch12
-rw-r--r--app-arch/libarchive/files/libarchive-3.7.2-32bit-test.patch29
-rw-r--r--app-arch/libarchive/files/libarchive-3.7.2-lrzip.patch26
-rw-r--r--app-arch/libarchive/files/libarchive-3.7.2-safe-fprintf.patch27
-rw-r--r--app-arch/libarchive/libarchive-3.7.2-r1.ebuild (renamed from app-arch/libarchive/libarchive-3.4.3.ebuild)96
-rw-r--r--app-arch/libarchive/libarchive-3.7.2-r3.ebuild180
-rw-r--r--app-arch/libarchive/libarchive-3.7.3.ebuild176
-rw-r--r--app-arch/libarchive/libarchive-3.7.4.ebuild176
-rw-r--r--app-arch/libarchive/metadata.xml9
-rw-r--r--app-arch/libdeflate/Manifest2
-rw-r--r--app-arch/libdeflate/files/libdeflate-1.19-make-gzip-tests-conditional.patch37
-rw-r--r--app-arch/libdeflate/libdeflate-1.19.ebuild59
-rw-r--r--app-arch/libdeflate/libdeflate-1.20.ebuild59
-rw-r--r--app-arch/libdeflate/libdeflate-9999.ebuild59
-rw-r--r--app-arch/libdeflate/metadata.xml22
-rw-r--r--app-arch/libpar2/libpar2-0.4.ebuild24
-rw-r--r--app-arch/libpar2/metadata.xml2
-rw-r--r--app-arch/lrzip-next/Manifest1
-rw-r--r--app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild67
-rw-r--r--app-arch/lrzip-next/metadata.xml22
-rw-r--r--app-arch/lrzip/Manifest2
-rw-r--r--app-arch/lrzip/files/lrzip-0.631-solaris.patch11
-rw-r--r--app-arch/lrzip/files/lrzip-missing-stdarg_h.patch11
-rw-r--r--app-arch/lrzip/lrzip-0.631_p20190619.ebuild50
-rw-r--r--app-arch/lrzip/lrzip-0.651.ebuild51
-rw-r--r--app-arch/lrzip/metadata.xml9
-rw-r--r--app-arch/lunzip/Manifest2
-rw-r--r--app-arch/lunzip/lunzip-1.14.ebuild31
-rw-r--r--app-arch/lunzip/metadata.xml8
-rw-r--r--app-arch/lxqt-archiver/Manifest3
-rw-r--r--app-arch/lxqt-archiver/lxqt-archiver-0.9.0.ebuild (renamed from app-arch/lxqt-archiver/lxqt-archiver-0.2.0.ebuild)26
-rw-r--r--app-arch/lxqt-archiver/lxqt-archiver-0.9.1.ebuild53
-rw-r--r--app-arch/lxqt-archiver/metadata.xml2
-rw-r--r--app-arch/lz4/Manifest2
-rw-r--r--app-arch/lz4/lz4-1.9.2.ebuild34
-rw-r--r--app-arch/lz4/lz4-1.9.4.ebuild26
-rw-r--r--app-arch/lz4/lz4-9999.ebuild34
-rw-r--r--app-arch/lz4/metadata.xml8
-rw-r--r--app-arch/lz5/lz5-2.0-r1.ebuild (renamed from app-arch/lz5/lz5-2.0.ebuild)17
-rw-r--r--app-arch/lz5/metadata.xml2
-rw-r--r--app-arch/lzip/Manifest3
-rw-r--r--app-arch/lzip/lzip-1.21.ebuild26
-rw-r--r--app-arch/lzip/lzip-1.24.1.ebuild29
-rw-r--r--app-arch/lzip/metadata.xml5
-rw-r--r--app-arch/lziprecover/Manifest3
-rw-r--r--app-arch/lziprecover/lziprecover-1.24.ebuild (renamed from app-arch/lziprecover/lziprecover-1.21.ebuild)17
-rw-r--r--app-arch/lziprecover/metadata.xml6
-rw-r--r--app-arch/lzlib/Manifest3
-rw-r--r--app-arch/lzlib/lzlib-1.14.ebuild (renamed from app-arch/lzlib/lzlib-1.11.ebuild)19
-rw-r--r--app-arch/lzlib/metadata.xml2
-rw-r--r--app-arch/lzma/Manifest1
-rw-r--r--app-arch/lzma/lzma-19.00.ebuild4
-rw-r--r--app-arch/lzma/lzma-9.20-r1.ebuild35
-rw-r--r--app-arch/lzma/metadata.xml6
-rw-r--r--app-arch/lzop/lzop-1.04-r1.ebuild (renamed from app-arch/lzop/lzop-1.04.ebuild)8
-rw-r--r--app-arch/lzop/metadata.xml2
-rw-r--r--app-arch/makeself/Manifest2
-rw-r--r--app-arch/makeself/files/makeself-2.2.0-help-header.patch124
-rw-r--r--app-arch/makeself/files/makeself-unpack100
-rw-r--r--app-arch/makeself/makeself-2.2.0-r2.ebuild27
-rw-r--r--app-arch/makeself/makeself-2.5.0.ebuild41
-rw-r--r--app-arch/makeself/metadata.xml8
-rw-r--r--app-arch/metadata.xml3
-rw-r--r--app-arch/mscompress/files/mscompress-0.3-amd64.patch4
-rw-r--r--app-arch/mscompress/metadata.xml2
-rw-r--r--app-arch/mscompress/mscompress-0.3-r1.ebuild22
-rw-r--r--app-arch/mt-st/Manifest1
-rw-r--r--app-arch/mt-st/metadata.xml9
-rw-r--r--app-arch/mt-st/mt-st-1.3.ebuild24
-rw-r--r--app-arch/mt-st/mt-st-1.4.ebuild5
-rw-r--r--app-arch/mt-st/mt-st-9999.ebuild4
-rw-r--r--app-arch/ncompress/Manifest3
-rw-r--r--app-arch/ncompress/metadata.xml2
-rw-r--r--app-arch/ncompress/ncompress-4.2.4.5.ebuild27
-rw-r--r--app-arch/ncompress/ncompress-4.2.4.6.ebuild29
-rw-r--r--app-arch/ncompress/ncompress-5.0-r1.ebuild37
-rw-r--r--app-arch/p7zip/Manifest1
-rw-r--r--app-arch/p7zip/files/p7zip-17.05-natspec.patch117
-rw-r--r--app-arch/p7zip/files/p7zip-17.05-unit64.patch21
-rw-r--r--app-arch/p7zip/metadata.xml5
-rw-r--r--app-arch/p7zip/p7zip-16.02-r4.ebuild165
-rw-r--r--app-arch/p7zip/p7zip-16.02-r5.ebuild168
-rw-r--r--app-arch/p7zip/p7zip-16.02-r8.ebuild (renamed from app-arch/p7zip/p7zip-16.02-r6.ebuild)74
-rw-r--r--app-arch/p7zip/p7zip-17.05-r1.ebuild116
-rw-r--r--app-arch/pack/Manifest1
-rw-r--r--app-arch/pack/metadata.xml11
-rw-r--r--app-arch/pack/pack-0.0.0.1.ebuild35
-rw-r--r--app-arch/par2cmdline-turbo/Manifest2
-rw-r--r--app-arch/par2cmdline-turbo/metadata.xml15
-rw-r--r--app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.0.ebuild30
-rw-r--r--app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.1.ebuild30
-rw-r--r--app-arch/par2cmdline-turbo/par2cmdline-turbo-9999.ebuild30
-rw-r--r--app-arch/par2cmdline/Manifest4
-rw-r--r--app-arch/par2cmdline/files/par2cmdline-0.8.1-big-endian.patch70
-rw-r--r--app-arch/par2cmdline/metadata.xml2
-rw-r--r--app-arch/par2cmdline/par2cmdline-0.7.3.ebuild30
-rw-r--r--app-arch/par2cmdline/par2cmdline-0.8.1-r1.ebuild (renamed from app-arch/par2cmdline/par2cmdline-0.8.0.ebuild)8
-rw-r--r--app-arch/par2cmdline/par2cmdline-0.8.1-r2.ebuild (renamed from app-arch/par2cmdline/par2cmdline-0.7.4.ebuild)13
-rw-r--r--app-arch/patool/Manifest5
-rw-r--r--app-arch/patool/metadata.xml11
-rw-r--r--app-arch/patool/patool-1.12.ebuild22
-rw-r--r--app-arch/patool/patool-1.15.0.ebuild129
-rw-r--r--app-arch/patool/patool-2.0.0.ebuild129
-rw-r--r--app-arch/patool/patool-2.1.1.ebuild128
-rw-r--r--app-arch/patool/patool-2.2.0.ebuild128
-rw-r--r--app-arch/pax/Manifest2
-rw-r--r--app-arch/pax/files/pax-20160306-glibc-to-linux.patch38
-rw-r--r--app-arch/pax/metadata.xml4
-rw-r--r--app-arch/pax/pax-20161104.ebuild63
-rw-r--r--app-arch/pax/pax-20201030.ebuild43
-rw-r--r--app-arch/pbzip2/Manifest1
-rw-r--r--app-arch/pbzip2/metadata.xml10
-rw-r--r--app-arch/pbzip2/pbzip2-1.1.12.ebuild42
-rw-r--r--app-arch/pbzip2/pbzip2-1.1.13.ebuild30
-rw-r--r--app-arch/pdlzip/Manifest3
-rw-r--r--app-arch/pdlzip/metadata.xml2
-rw-r--r--app-arch/pdlzip/pdlzip-1.13.ebuild (renamed from app-arch/pdlzip/pdlzip-1.10.ebuild)13
-rw-r--r--app-arch/pdv/files/pdv-1.5.1-missing-prototype.patch19
-rw-r--r--app-arch/pdv/files/pdv-1.5.1-no-strip.patch11
-rw-r--r--app-arch/pdv/metadata.xml2
-rw-r--r--app-arch/pdv/pdv-1.5.1-r5.ebuild (renamed from app-arch/pdv/pdv-1.5.1-r3.ebuild)51
-rw-r--r--app-arch/pet2tgz/metadata.xml2
-rw-r--r--app-arch/pigz/Manifest3
-rw-r--r--app-arch/pigz/files/2.4-trailing-junk.patch27
-rw-r--r--app-arch/pigz/metadata.xml10
-rw-r--r--app-arch/pigz/pigz-2.4-r1.ebuild41
-rw-r--r--app-arch/pigz/pigz-2.8.ebuild41
-rw-r--r--app-arch/pixz/Manifest1
-rw-r--r--app-arch/pixz/files/pixz-1.0.6-avoid-unaligned-accesses.patch44
-rw-r--r--app-arch/pixz/metadata.xml2
-rw-r--r--app-arch/pixz/pixz-1.0.6-r1.ebuild46
-rw-r--r--app-arch/pixz/pixz-1.0.7-r1.ebuild (renamed from app-arch/pixz/pixz-1.0.7.ebuild)26
-rw-r--r--app-arch/pixz/pixz-9999.ebuild29
-rw-r--r--app-arch/plzip/Manifest3
-rw-r--r--app-arch/plzip/metadata.xml2
-rw-r--r--app-arch/plzip/plzip-1.11.ebuild (renamed from app-arch/plzip/plzip-1.8.ebuild)14
-rw-r--r--app-arch/pure-sfv/files/pure-sfv-0.3-fix-build-system.patch3
-rw-r--r--app-arch/pure-sfv/metadata.xml2
-rw-r--r--app-arch/pure-sfv/pure-sfv-0.3-r2.ebuild (renamed from app-arch/pure-sfv/pure-sfv-0.3-r1.ebuild)12
-rw-r--r--app-arch/pxz/Manifest2
-rw-r--r--app-arch/pxz/files/pxz-5.0_pre20220509-fix-xz-path.patch21
-rw-r--r--app-arch/pxz/metadata.xml27
-rw-r--r--app-arch/pxz/pxz-5.0_pre20151029.ebuild29
-rw-r--r--app-arch/pxz/pxz-5.0_pre20220509-r1.ebuild48
-rw-r--r--app-arch/pxz/pxz-9999.ebuild41
-rw-r--r--app-arch/qpress/Manifest2
-rw-r--r--app-arch/qpress/files/qpress-1.1-fix-build-system.patch7
-rw-r--r--app-arch/qpress/files/qpress-1.1-fix-includes.patch7
-rw-r--r--app-arch/qpress/files/qpress-20220819-fix-build-system.patch39
-rw-r--r--app-arch/qpress/metadata.xml9
-rw-r--r--app-arch/qpress/qpress-1.1.ebuild32
-rw-r--r--app-arch/qpress/qpress-20220819.ebuild21
-rw-r--r--app-arch/rar/Manifest9
-rw-r--r--app-arch/rar/metadata.xml8
-rw-r--r--app-arch/rar/rar-6.0_beta1_p20201022.ebuild109
-rw-r--r--app-arch/rar/rar-7.00.ebuild (renamed from app-arch/rar/rar-5.9.1_p20200625.ebuild)83
-rw-r--r--app-arch/rpm/Manifest4
-rw-r--r--app-arch/rpm/files/rpm-4.11.0-autotools.patch14
-rw-r--r--app-arch/rpm/files/rpm-4.16.0-autotools.patch13
-rw-r--r--app-arch/rpm/files/rpm-4.17.0-libdir.patch (renamed from app-arch/rpm/files/rpm-4.16.0-libdir.patch)20
-rw-r--r--app-arch/rpm/files/rpm-4.18.1-musl-nls.patch42
-rw-r--r--app-arch/rpm/files/rpm-4.19.0-libdir.patch13
-rw-r--r--app-arch/rpm/files/rpm-4.19.1.1-musl-compat.patch17
-rw-r--r--app-arch/rpm/files/rpm-4.8.1-clang.patch52
-rw-r--r--app-arch/rpm/files/rpm-4.9.1.2-libdir.patch31
-rw-r--r--app-arch/rpm/metadata.xml15
-rw-r--r--app-arch/rpm/rpm-4.14.2.1-r1.ebuild141
-rw-r--r--app-arch/rpm/rpm-4.16.0.ebuild139
-rw-r--r--app-arch/rpm/rpm-4.18.1.ebuild172
-rw-r--r--app-arch/rpm/rpm-4.19.1.1.ebuild134
-rw-r--r--app-arch/rpm2targz/Manifest2
-rw-r--r--app-arch/rpm2targz/files/rpm2targz-9.0.0.5g-add-zstd-support.patch20
-rw-r--r--app-arch/rpm2targz/metadata.xml2
-rw-r--r--app-arch/rpm2targz/rpm2targz-2021.03.16.ebuild28
-rw-r--r--app-arch/rpm2targz/rpm2targz-9.0.0.5g-r2.ebuild30
-rw-r--r--app-arch/rzip/files/rzip-2.1-configure-clang16.patch13
-rw-r--r--app-arch/rzip/metadata.xml2
-rw-r--r--app-arch/rzip/rzip-2.1-r5.ebuild (renamed from app-arch/rzip/rzip-2.1-r3.ebuild)13
-rw-r--r--app-arch/sharutils/metadata.xml3
-rw-r--r--app-arch/sharutils/sharutils-4.15.2-r1.ebuild39
-rw-r--r--app-arch/sharutils/sharutils-4.15.2-r2.ebuild9
-rw-r--r--app-arch/snappy/Manifest3
-rw-r--r--app-arch/snappy/files/snappy-1.1.7-0001-cmake-Add-missing-linking-to-GTEST_LIBRARIES.patch30
-rw-r--r--app-arch/snappy/files/snappy-1.1.9-clang-werror.patch16
-rw-r--r--app-arch/snappy/files/snappy-1.1.9_external_gtest.patch34
-rw-r--r--app-arch/snappy/files/snappy-1.1.9_remove-no-rtti.patch35
-rw-r--r--app-arch/snappy/files/snappy-1.2.0_external-gtest.patch46
-rw-r--r--app-arch/snappy/files/snappy-1.2.0_no-werror.patch24
-rw-r--r--app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch32
-rw-r--r--app-arch/snappy/metadata.xml21
-rw-r--r--app-arch/snappy/snappy-1.1.10-r1.ebuild49
-rw-r--r--app-arch/snappy/snappy-1.1.8.ebuild64
-rw-r--r--app-arch/snappy/snappy-1.2.0-r1.ebuild49
-rw-r--r--app-arch/stenc/Manifest4
-rw-r--r--app-arch/stenc/metadata.xml2
-rw-r--r--app-arch/stenc/stenc-1.0.7.ebuild18
-rw-r--r--app-arch/stenc/stenc-1.1.1.ebuild (renamed from app-arch/stenc/stenc-1.0.8.ebuild)11
-rw-r--r--app-arch/stenc/stenc-2.0.0.ebuild31
-rw-r--r--app-arch/stormlib/Manifest2
-rw-r--r--app-arch/stormlib/files/stormlib-9.24-gnuinstalldirs.patch55
-rw-r--r--app-arch/stormlib/metadata.xml11
-rw-r--r--app-arch/stormlib/stormlib-9.24.ebuild44
-rw-r--r--app-arch/stormlib/stormlib-9.25.ebuild44
-rw-r--r--app-arch/stuffit/metadata.xml2
-rw-r--r--app-arch/stuffit/stuffit-5.2.0.611-r1.ebuild (renamed from app-arch/stuffit/stuffit-5.2.0.611.ebuild)14
-rw-r--r--app-arch/tapeutils/metadata.xml2
-rw-r--r--app-arch/tapeutils/tapeutils-0.4-r1.ebuild (renamed from app-arch/tapeutils/tapeutils-0.4.ebuild)6
-rw-r--r--app-arch/tar/Manifest6
-rw-r--r--app-arch/tar/files/tar-1.34-fix-cve-2022-48303.patch32
-rw-r--r--app-arch/tar/metadata.xml2
-rw-r--r--app-arch/tar/tar-1.32.90.ebuild80
-rw-r--r--app-arch/tar/tar-1.32.ebuild79
-rw-r--r--app-arch/tar/tar-1.34-r3.ebuild106
-rw-r--r--app-arch/tar/tar-1.35.ebuild113
-rw-r--r--app-arch/tardelta/metadata.xml2
-rw-r--r--app-arch/tardelta/tardelta-1.0.1-r1.ebuild (renamed from app-arch/tardelta/tardelta-1.0.1.ebuild)10
-rw-r--r--app-arch/tarlz/Manifest1
-rw-r--r--app-arch/tarlz/metadata.xml12
-rw-r--r--app-arch/tarlz/tarlz-0.25.ebuild32
-rw-r--r--app-arch/tarsync/Manifest2
-rw-r--r--app-arch/tarsync/files/tarsync-0.2.1-gcc5.patch59
-rw-r--r--app-arch/tarsync/files/tarsync-0.2.1-make.patch13
-rw-r--r--app-arch/tarsync/metadata.xml10
-rw-r--r--app-arch/tarsync/tarsync-0.2.1-r1.ebuild33
-rw-r--r--app-arch/tarsync/tarsync-0.2.3.ebuild17
-rw-r--r--app-arch/torrentzip/Manifest2
-rw-r--r--app-arch/torrentzip/files/torrentzip-0.9-autoconf-quote.patch8
-rw-r--r--app-arch/torrentzip/files/torrentzip-1.2-checksum-detection.patch51
-rw-r--r--app-arch/torrentzip/metadata.xml17
-rw-r--r--app-arch/torrentzip/torrentzip-0.9-r1.ebuild (renamed from app-arch/torrentzip/torrentzip-0.9.ebuild)15
-rw-r--r--app-arch/torrentzip/torrentzip-1.2-r1.ebuild28
-rw-r--r--app-arch/torrentzip/torrentzip-1.3.ebuild48
-rw-r--r--app-arch/unace/files/unace-2.5-includes.patch10
-rw-r--r--app-arch/unace/metadata.xml2
-rw-r--r--app-arch/unace/unace-2.5-r6.ebuild (renamed from app-arch/unace/unace-2.5-r5.ebuild)16
-rw-r--r--app-arch/unadf/metadata.xml2
-rw-r--r--app-arch/unadf/unadf-0.7.12-r2.ebuild (renamed from app-arch/unadf/unadf-0.7.12-r1.ebuild)15
-rw-r--r--app-arch/unar/Manifest2
-rw-r--r--app-arch/unar/files/unar-1.10.8-Wint-conversion.patch40
-rw-r--r--app-arch/unar/metadata.xml7
-rw-r--r--app-arch/unar/unar-1.10.8.ebuild (renamed from app-arch/unar/unar-1.10.7.ebuild)48
-rw-r--r--app-arch/unmakeself/Manifest1
-rw-r--r--app-arch/unmakeself/metadata.xml5
-rw-r--r--app-arch/unmakeself/unmakeself-1.1.ebuild34
-rw-r--r--app-arch/unp/Manifest4
-rw-r--r--app-arch/unp/files/unp-2.0_pre7_p1-remove-deprecated-have.diff10
-rw-r--r--app-arch/unp/metadata.xml6
-rw-r--r--app-arch/unp/unp-2.0.ebuild (renamed from app-arch/unp/unp-2.0_pre7_p1-r1.ebuild)25
-rw-r--r--app-arch/unp/unp-2.0_pre10.ebuild (renamed from app-arch/unp/unp-2.0_pre8.ebuild)11
-rw-r--r--app-arch/unp/unp-2.0_pre9.ebuild6
-rw-r--r--app-arch/unrar/Manifest7
-rw-r--r--app-arch/unrar/files/unrar-5.9.3-build.patch35
-rw-r--r--app-arch/unrar/files/unrar-6.2.6-honor-flags.patch (renamed from app-arch/unrar/files/unrar-5.5.5-honor-flags.patch)12
-rw-r--r--app-arch/unrar/metadata.xml26
-rw-r--r--app-arch/unrar/unrar-6.2.10.ebuild (renamed from app-arch/unrar/unrar-5.9.4.ebuild)24
-rw-r--r--app-arch/unrar/unrar-6.2.12-r1.ebuild79
-rw-r--r--app-arch/unrar/unrar-6.2.12.ebuild (renamed from app-arch/unrar/unrar-6.0.1.ebuild)24
-rw-r--r--app-arch/unrar/unrar-6.2.8.ebuild62
-rw-r--r--app-arch/unrar/unrar-6.2.9.ebuild62
-rw-r--r--app-arch/unrar/unrar-7.0.7.ebuild79
-rw-r--r--app-arch/unrpa/metadata.xml12
-rw-r--r--app-arch/unrpa/unrpa-2.3.0-r1.ebuild (renamed from app-arch/unrpa/unrpa-2.3.0.ebuild)12
-rw-r--r--app-arch/unshield/Manifest2
-rw-r--r--app-arch/unshield/files/unshield-1.4.3-mandir.patch21
-rw-r--r--app-arch/unshield/metadata.xml2
-rw-r--r--app-arch/unshield/unshield-1.5.1.ebuild (renamed from app-arch/unshield/unshield-1.4.3.ebuild)16
-rw-r--r--app-arch/unzip/Manifest2
-rw-r--r--app-arch/unzip/metadata.xml3
-rw-r--r--app-arch/unzip/unzip-6.0_p27-r1.ebuild (renamed from app-arch/unzip/unzip-6.0_p25-r1.ebuild)51
-rw-r--r--app-arch/upx-bin/Manifest21
-rw-r--r--app-arch/upx-bin/metadata.xml6
-rw-r--r--app-arch/upx-bin/upx-bin-4.1.0.ebuild (renamed from app-arch/upx-bin/upx-bin-3.96.ebuild)15
-rw-r--r--app-arch/upx-bin/upx-bin-4.2.3.ebuild39
-rw-r--r--app-arch/upx/Manifest3
-rw-r--r--app-arch/upx/metadata.xml6
-rw-r--r--app-arch/upx/upx-4.1.0.ebuild30
-rw-r--r--app-arch/upx/upx-4.2.3.ebuild (renamed from app-arch/upx/upx-3.96.ebuild)40
-rw-r--r--app-arch/vimball/metadata.xml2
-rw-r--r--app-arch/vimball/vimball-0.5.1-r1.ebuild28
-rw-r--r--app-arch/vimball/vimball-0.5.1.ebuild29
-rw-r--r--app-arch/vimball/vimball-9999.ebuild27
-rw-r--r--app-arch/wimlib/Manifest4
-rw-r--r--app-arch/wimlib/files/syslinux-path.patch25
-rw-r--r--app-arch/wimlib/metadata.xml27
-rw-r--r--app-arch/wimlib/wimlib-1.12.0.ebuild67
-rw-r--r--app-arch/wimlib/wimlib-1.13.0.ebuild67
-rw-r--r--app-arch/wimlib/wimlib-1.13.4-r1.ebuild74
-rw-r--r--app-arch/wimlib/wimlib-1.14.1.ebuild52
-rw-r--r--app-arch/xar/Manifest4
-rw-r--r--app-arch/xar/files/xar-1.8.0.0.452-linux.patch104
-rw-r--r--app-arch/xar/files/xar-1.8.0.0.487-non-darwin.patch12
-rw-r--r--app-arch/xar/files/xar-1.8.0.0.487-variable-sized-object.patch18
-rw-r--r--app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch24
-rw-r--r--app-arch/xar/metadata.xml2
-rw-r--r--app-arch/xar/xar-1.8-r2.ebuild52
-rw-r--r--app-arch/xar/xar-1.8-r3.ebuild70
-rw-r--r--app-arch/xar/xar-1.8.0.0.487.100.1.ebuild88
-rw-r--r--app-arch/xar/xar-1.8.0.0.498.ebuild89
-rw-r--r--app-arch/xarchiver/Manifest2
-rw-r--r--app-arch/xarchiver/metadata.xml4
-rw-r--r--app-arch/xarchiver/xarchiver-0.5.4.23.ebuild (renamed from app-arch/xarchiver/xarchiver-0.5.4.15.ebuild)36
-rw-r--r--app-arch/xdms/files/xdms-1.3.2-dont-compress-man-pages.patch13
-rw-r--r--app-arch/xdms/files/xdms-1.3.2-fix-build-with-gcc-10.patch80
-rw-r--r--app-arch/xdms/files/xdms-1.3.2-respect-DESTDIR.patch22
-rw-r--r--app-arch/xdms/metadata.xml5
-rw-r--r--app-arch/xdms/xdms-1.3.2-r1.ebuild31
-rw-r--r--app-arch/xdms/xdms-1.3.2-r2.ebuild41
-rw-r--r--app-arch/xz-utils/Manifest5
-rw-r--r--app-arch/xz-utils/metadata.xml29
-rw-r--r--app-arch/xz-utils/xz-utils-5.2.5.ebuild96
-rw-r--r--app-arch/xz-utils/xz-utils-5.4.2.ebuild140
-rw-r--r--app-arch/xz-utils/xz-utils-5.4.6-r1.ebuild140
-rw-r--r--app-arch/xz-utils/xz-utils-9999.ebuild149
-rw-r--r--app-arch/zchunk/Manifest2
-rw-r--r--app-arch/zchunk/metadata.xml11
-rw-r--r--app-arch/zchunk/zchunk-1.3.2.ebuild37
-rw-r--r--app-arch/zchunk/zchunk-1.4.0.ebuild37
-rw-r--r--app-arch/zchunk/zchunk-9999.ebuild37
-rw-r--r--app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch219
-rw-r--r--app-arch/zip/metadata.xml2
-rw-r--r--app-arch/zip/zip-3.0-r4.ebuild66
-rw-r--r--app-arch/zip/zip-3.0-r7.ebuild74
-rw-r--r--app-arch/zoo/files/zoo-2.10-gentoo-fbsd-r1.patch10
-rw-r--r--app-arch/zoo/files/zoo-2.10-implicit-int.patch75
-rw-r--r--app-arch/zoo/files/zoo-2.10-makefile.patch32
-rw-r--r--app-arch/zoo/metadata.xml7
-rw-r--r--app-arch/zoo/zoo-2.10-r5.ebuild23
-rw-r--r--app-arch/zoo/zoo-2.10-r6.ebuild36
-rw-r--r--app-arch/zopfli/Manifest1
-rw-r--r--app-arch/zopfli/files/zopfli-1.0.2-makefile.patch70
-rw-r--r--app-arch/zopfli/metadata.xml2
-rw-r--r--app-arch/zopfli/zopfli-1.0.2.ebuild41
-rw-r--r--app-arch/zopfli/zopfli-1.0.3.ebuild7
-rw-r--r--app-arch/zpaq-extras/metadata.xml2
-rw-r--r--app-arch/zpaq-extras/zpaq-extras-3.ebuild9
-rw-r--r--app-arch/zpaq/metadata.xml2
-rw-r--r--app-arch/zpaq/zpaq-7.15-r1.ebuild (renamed from app-arch/zpaq/zpaq-7.15.ebuild)18
-rw-r--r--app-arch/zstd/Manifest4
-rw-r--r--app-arch/zstd/files/zstd-1.4.4-make43.patch60
-rw-r--r--app-arch/zstd/files/zstd-1.4.4-pkgconfig_libdir.patch215
-rw-r--r--app-arch/zstd/files/zstd-1.4.5-fix-uclibc-ng.patch28
-rw-r--r--app-arch/zstd/files/zstd-1.5.4-no-find-valgrind.patch12
-rw-r--r--app-arch/zstd/metadata.xml15
-rw-r--r--app-arch/zstd/zstd-1.4.4-r4.ebuild75
-rw-r--r--app-arch/zstd/zstd-1.4.5.ebuild73
-rw-r--r--app-arch/zstd/zstd-1.5.5-r1.ebuild67
-rw-r--r--app-arch/zstd/zstd-1.5.5.ebuild73
-rw-r--r--app-arch/zstd/zstd-1.5.6.ebuild67
538 files changed, 10675 insertions, 6847 deletions
diff --git a/app-arch/7zip/7zip-23.01.ebuild b/app-arch/7zip/7zip-23.01.ebuild
new file mode 100644
index 000000000000..cd0af0601e23
--- /dev/null
+++ b/app-arch/7zip/7zip-23.01.ebuild
@@ -0,0 +1,109 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edos2unix flag-o-matic toolchain-funcs
+
+NO_DOT_PV=$(ver_rs 1- '')
+DESCRIPTION="Free file archiver for extremely high compression"
+HOMEPAGE="https://www.7-zip.org/ https://sourceforge.net/projects/sevenzip/"
+# linux-x64 tarball is only used for docs
+SRC_URI="
+ mirror://sourceforge/sevenzip/7-Zip/${PV}/7z${NO_DOT_PV}-src.tar.xz
+ mirror://sourceforge/sevenzip/7-Zip/${PV}/7z${NO_DOT_PV}-linux-x64.tar.xz
+"
+S="${WORKDIR}"
+
+LICENSE="LGPL-2 BSD rar? ( unRAR )"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="uasm jwasm rar"
+REQUIRED_USE="?? ( uasm jwasm )"
+
+DOCS=( readme.txt History.txt License.txt )
+HTML_DOCS=( MANUAL )
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ uasm? ( dev-lang/uasm )
+ jwasm? ( dev-lang/jwasm )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-respect-build-env.patch"
+)
+
+# TODO(NRK): also build and install the library
+# TODO(NRK): make it so this package can be used as a drop-in replacement
+# for app-arch/p7zip ??
+
+pkg_setup() {
+ # instructions in DOC/readme.txt, Compiling 7-Zip for Unix/Linux
+ # TLDR; every combination of options (clang|gcc)+(asm/noasm)
+ # has a dedicated makefile & builddir
+ mfile="cmpl"
+ if tc-is-clang; then
+ mfile="${mfile}_clang"
+ bdir=c
+ elif tc-is-gcc; then
+ mfile="${mfile}_gcc"
+ bdir=g
+ else
+ die "Unsupported compiler: $(tc-getCC)"
+ fi
+ if use jwasm || use uasm ; then
+ mfile="${mfile}_x64"
+ bdir="${bdir}_x64"
+ fi
+ export mfile="${mfile}.mak"
+ export bdir
+}
+
+src_prepare() {
+ # patch doesn't deal with CRLF even if file+patch match
+ # not even with --ignore-whitespace, --binary or --force
+ pushd "./CPP/7zip" || die "Unable to switch directory"
+ edos2unix ./7zip_gcc.mak ./var_gcc{,_x64}.mak ./var_clang{,_x64}.mak
+ sed -i -e 's/-Werror //g' ./7zip_gcc.mak || die "Error removing -Werror"
+ popd >/dev/null || die "Unable to switch directory"
+
+ default
+}
+
+src_compile() {
+ pushd "./CPP/7zip/Bundles/Alone2" || die "Unable to switch directory"
+
+ # avoid executable stack when using uasm/jwasm, harmless otherwise
+ append-ldflags -Wl,-z,noexecstack
+ export G_CFLAGS=${CFLAGS}
+ export G_CXXFLAGS=${CXXFLAGS}
+ export G_LDFLAGS=${LDFLAGS}
+
+ local args=(
+ -f "../../${mfile}"
+ CC=$(tc-getCC)
+ CXX=$(tc-getCXX)
+ )
+ # NOTE: makefile doesn't check the value of DISABLE_RAR_COMPRESS, only
+ # whether it's defined or not. so in case user has `rar` enabled
+ # DISABLE_RAR_COMPRESS (and DISABLE_RAR) needs to stay undefined.
+ if ! use rar; then
+ # disables non-free rar code but allows listing and extracting
+ # non-compressed rar archives
+ args+=( DISABLE_RAR_COMPRESS=1 )
+ fi
+ if use jwasm; then
+ args+=( USE_JWASM=1 )
+ elif use uasm; then
+ args+=( MY_ASM=uasm )
+ fi
+
+ emake ${args[@]}
+ popd > /dev/null || die "Unable to switch directory"
+}
+
+src_install() {
+ dobin "./CPP/7zip/Bundles/Alone2/b/${bdir}/7zz"
+ einstalldocs
+}
diff --git a/app-arch/7zip/Manifest b/app-arch/7zip/Manifest
new file mode 100644
index 000000000000..bd132922c901
--- /dev/null
+++ b/app-arch/7zip/Manifest
@@ -0,0 +1,2 @@
+DIST 7z2301-linux-x64.tar.xz 1527700 BLAKE2B 35dc74f0a7a4e586ea5ae969dce72c14e0231822630d2d70f24e1c911cea0492354a258ef65096a6ce0da1510117c12466bc6cda577cdf9e8e74ede17e47f23e SHA512 d3549468de8fd161e4c9233fa0b170af1f28c74749d20f3d0eeb3873857f6c6d2cc0777d564e6a79be7cc21c9e982e10710a795320428dc51db809a8d0f9454e
+DIST 7z2301-src.tar.xz 1378588 BLAKE2B 348484b24b39db70e513fe50d79954ea0e2dd669f83e3601fa796c8f0ca4734132ca20fac8cda9b8ba550bad9146627fc0ae07056abb99028ef6d825b6a533bd SHA512 e39f660c023aa65e55388be225b5591fe2a5c9138693f3c9107e2eb4ce97fafde118d3375e01ada99d29de9633f56221b5b3d640c982178884670cd84c8aa986
diff --git a/app-arch/7zip/files/7zip-23.01-respect-build-env.patch b/app-arch/7zip/files/7zip-23.01-respect-build-env.patch
new file mode 100644
index 000000000000..a5871db9159c
--- /dev/null
+++ b/app-arch/7zip/files/7zip-23.01-respect-build-env.patch
@@ -0,0 +1,53 @@
+Respect build environment settings
+
+Bug: https://bugs.gentoo.org/913186
+Bug: https://bugs.gentoo.org/913188
+Bug: https://bugs.gentoo.org/913189
+
+
+--- a/CPP/7zip/7zip_gcc.mak
++++ b/CPP/7zip/7zip_gcc.mak
+@@ -87,14 +87,14 @@ SHARED_EXT=.dll
+ LDFLAGS = -shared -DEF $(DEF_FILE) $(LDFLAGS_STATIC)
+ else
+ SHARED_EXT=.so
+-LDFLAGS = -shared -fPIC $(LDFLAGS_STATIC)
++LDFLAGS = -shared -fPIC $(G_LDFLAGS) $(LDFLAGS_STATIC)
+ CC_SHARED=-fPIC
+ endif
+
+
+ else
+
+-LDFLAGS = $(LDFLAGS_STATIC)
++LDFLAGS = $(LDFLAGS_STATIC) $(G_LDFLAGS)
+ # -s is not required for clang, do we need it for GCC ???
+
+ #-static -static-libgcc -static-libstdc++
+@@ -149,7 +149,7 @@ endif
+
+
+
+-CFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CC_SHARED) -o $@
++CFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CC_SHARED) $(G_CFLAGS) -o $@
+
+
+ ifdef IS_MINGW
+@@ -190,7 +190,7 @@ CXX_WARN_FLAGS =
+ #-Wno-invalid-offsetof
+ #-Wno-reorder
+
+-CXXFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CXXFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CXXFLAGS_EXTRA) $(CC_SHARED) $(CXX_WARN_FLAGS) $(CXX_STD_FLAGS) -o $@
++CXXFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CXXFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CXXFLAGS_EXTRA) $(CC_SHARED) $(CXX_WARN_FLAGS) $(CXX_STD_FLAGS) $(G_CXXFLAGS) -o $@
+
+ STATIC_TARGET=
+ ifdef COMPL_STATIC
+@@ -208,7 +208,7 @@ $(O):
+ # -Wl,--print-gc-sections
+
+ ifneq ($(CC), $(CROSS_COMPILE)clang)
+-LFLAGS_STRIP = -s
++
+ endif
+
+ LFLAGS_ALL = $(LFLAGS_STRIP) $(MY_ARCH_2) $(LDFLAGS) $(FLAGS_FLTO) $(LD_arch) $(OBJS) $(MY_LIBS) $(LIB2)
diff --git a/app-arch/7zip/metadata.xml b/app-arch/7zip/metadata.xml
new file mode 100644
index 000000000000..a4f1984333a5
--- /dev/null
+++ b/app-arch/7zip/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>nrk@disroot.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>arthurzam@gentoo.org</email>
+ <name>Arthur Zamarin</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <use>
+ <flag name="rar">Enable support for non-free rar decoder</flag>
+ <flag name="uasm">Use <pkg>dev-lang/uasm</pkg> to include optimized code</flag>
+ <flag name="jwasm">Use <pkg>dev-lang/jwasm</pkg> to include optimized code (doesn't support AES)</flag>
+ </use>
+ <upstream>
+ <maintainer>
+ <name>Igor Pavlov</name>
+ </maintainer>
+ <remote-id type="sourceforge">sevenzip</remote-id>
+ <changelog>https://www.7-zip.org/history.txt</changelog>
+ <bugs-to>https://sourceforge.net/p/sevenzip/bugs/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/advancecomp/Manifest b/app-arch/advancecomp/Manifest
index bd12c7510490..3aa125412b03 100644
--- a/app-arch/advancecomp/Manifest
+++ b/app-arch/advancecomp/Manifest
@@ -1 +1 @@
-DIST advancecomp-fcf71a89265c78fc26243574dda3a872574a5c02.tar.gz 1195310 BLAKE2B 9dcab7e266023f996504cfcfc9ba8237f216f2bf1af56d645e3fe7fb79a5e3d0dae2abdd47cc9c38c6ade385d1eb44b1e0ae6afa6fd2485afd1423be37276d06 SHA512 2c3e01146441aa940f6de464e0c19613f22d6a5fd671e4e0b1b83e68cad322ff0dc6be0fa328524332e6a782198edfeac0443b72a30d9c51c86e7c5ad141f6b7
+DIST advancecomp-2.6.tar.gz 1343700 BLAKE2B 8666565721090217c396cb992b62c3f7c4c06932705db1f71acaa8283fd2795206808811ecd293344293e01a15da58675e8f397f1114c5ad5cc3186627286979 SHA512 10cc2a72b0cf486868b52cdb78a8dc2c965bfa9f43f712fdf97af58e4b0eac62460a635fe58435e2efbc605ed281b8bf0dc560b08bbbe66ee5a8673ec40ea0a6
diff --git a/app-arch/advancecomp/advancecomp-2.2_pre20190301.ebuild b/app-arch/advancecomp/advancecomp-2.6.ebuild
index e103631dcc47..01b5197ad763 100644
--- a/app-arch/advancecomp/advancecomp-2.2_pre20190301.ebuild
+++ b/app-arch/advancecomp/advancecomp-2.6.ebuild
@@ -1,35 +1,31 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools
-
-EGIT_COMMIT="fcf71a89265c78fc26243574dda3a872574a5c02"
DESCRIPTION="Recompress ZIP, PNG and MNG, considerably improving compression"
-HOMEPAGE="https://www.advancemame.it/comp-readme.html"
-SRC_URI="https://github.com/amadvance/advancecomp/archive/${EGIT_COMMIT}.tar.gz
- -> ${PN}-${EGIT_COMMIT}.tar.gz"
+HOMEPAGE="
+ https://www.advancemame.it/comp-readme.html
+ https://github.com/amadvance/advancecomp/
+"
+SRC_URI="
+ https://github.com/amadvance/advancecomp/releases/download/v${PV}/${P}.tar.gz
+"
LICENSE="GPL-2+ Apache-2.0 LGPL-2.1+ MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ppc ppc64 x86"
-IUSE=""
-
-RDEPEND="app-arch/bzip2:=
- sys-libs/zlib:="
-DEPEND="${RDEPEND}"
-
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv x86"
# Tests seem to rely on exact output:
# https://sourceforge.net/p/advancemame/bugs/270/
RESTRICT="test"
-S=${WORKDIR}/${PN}-${EGIT_COMMIT}
-
-src_prepare() {
- default
- eautoreconf
-}
+RDEPEND="
+ app-arch/bzip2:=
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+"
src_configure() {
local myconf=(
diff --git a/app-arch/advancecomp/metadata.xml b/app-arch/advancecomp/metadata.xml
index 511708a0fcec..c70c2cf50167 100644
--- a/app-arch/advancecomp/metadata.xml
+++ b/app-arch/advancecomp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/afio/afio-2.5.1-r2.ebuild b/app-arch/afio/afio-2.5.1-r2.ebuild
index ccc6b32585da..8b7b67f12a2f 100644
--- a/app-arch/afio/afio-2.5.1-r2.ebuild
+++ b/app-arch/afio/afio-2.5.1-r2.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
-DESCRIPTION="Afio creates cpio-format archives."
+DESCRIPTION="Afio creates cpio-format archives"
HOMEPAGE="http://members.chello.nl/k.holtman/afio.html https://github.com/kholtman/afio"
SRC_URI="http://members.chello.nl/k.holtman/${P}.tgz"
diff --git a/app-arch/afio/metadata.xml b/app-arch/afio/metadata.xml
index 1d91069b9e13..a9181451e983 100644
--- a/app-arch/afio/metadata.xml
+++ b/app-arch/afio/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
@@ -10,6 +10,6 @@
script.
</longdescription>
<upstream>
- <remote-id type="freshmeat">afio</remote-id>
+ <remote-id type="github">kholtman/afio</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/alien/Manifest b/app-arch/alien/Manifest
index fd59649f095b..8dcb3ef90dc6 100644
--- a/app-arch/alien/Manifest
+++ b/app-arch/alien/Manifest
@@ -1 +1,2 @@
+DIST alien-8.95.6.tar.xz 58088 BLAKE2B 5b7467552856d809fc1b43af7de905d7f52629799bfd01dfb7ab61dfbd1c27e0f6f6b8364aa03a925cc6bea74616bf497f4fd195c637d6d1bcd7847a17ab5ccd SHA512 29ed80f249b38b47a26ee9d058d057be8728d18d771c1f847919f296d2c8359fcc33a32912749f2ed77b1214e61f101b75960a82cbd3d76bbb7f205acfd4f152
DIST alien-8.95.tar.xz 56940 BLAKE2B c2f6b71d39800a7bc4ab00bcd50d165855bad4eb1a17fe217aeb302c6b7af701bcd9445276d7e522db7e6c81f1e8d7e9e2ada99f9d7505e6ec958ae87df7c9f7 SHA512 c46d3c82542dc3d96eeabea0f0c7ab5b572acaf67d15e2064ea01df32d69a2cf6e083754be49269df6cd7431ec5b3e09ddcb83fbe2ee17843b22e9cd3e73073c
diff --git a/app-arch/alien/alien-8.95-r1.ebuild b/app-arch/alien/alien-8.95-r2.ebuild
index 814e3b3ce4d7..9155c848fb61 100644
--- a/app-arch/alien/alien-8.95-r1.ebuild
+++ b/app-arch/alien/alien-8.95-r2.ebuild
@@ -1,17 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit perl-module
DESCRIPTION="Converts between the rpm, dpkg, stampede slp, and slackware tgz file formats"
-HOMEPAGE="http://kitenet.net/programs/alien"
+HOMEPAGE="https://sourceforge.net/projects/alien-pkg-convert"
SRC_URI="mirror://debian/pool/main/a/${PN}/${PN}_${PV}.tar.xz -> ${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ppc ppc64 x86"
+KEYWORDS="~alpha amd64 ~hppa ppc ppc64 ~riscv x86"
IUSE="+bzip2"
RDEPEND="
@@ -19,16 +19,7 @@ RDEPEND="
app-arch/dpkg
dev-util/debhelper
>=app-arch/tar-1.14.91
- bzip2? (
- app-arch/bzip2
- )"
-
+ bzip2? ( app-arch/bzip2 )"
DEPEND="${RDEPEND}"
PATCHES=( "${FILESDIR}/${P}-tar-extensions.patch" )
-
-src_prepare() {
- default
- sed -e s%'$(VARPREFIX)'%${D}% -e s%'$(PREFIX)'%${D}/usr%g \
- -i "${S}"/Makefile.PL || die "sed failed"
-}
diff --git a/app-arch/alien/alien-8.95.6.ebuild b/app-arch/alien/alien-8.95.6.ebuild
new file mode 100644
index 000000000000..f2d6dfad91e1
--- /dev/null
+++ b/app-arch/alien/alien-8.95.6.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit perl-module
+
+DESCRIPTION="Converts between the rpm, dpkg, stampede slp, and slackware tgz file formats"
+HOMEPAGE="https://sourceforge.net/projects/alien-pkg-convert"
+SRC_URI="mirror://debian/pool/main/a/${PN}/${PN}_${PV}.tar.xz -> ${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+bzip2"
+
+RDEPEND="
+ app-arch/rpm
+ app-arch/dpkg
+ dev-util/debhelper
+ >=app-arch/tar-1.14.91
+ bzip2? ( app-arch/bzip2 )"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-8.95-tar-extensions.patch" )
diff --git a/app-arch/alien/metadata.xml b/app-arch/alien/metadata.xml
index 7bd44913f487..6cab649acb8d 100644
--- a/app-arch/alien/metadata.xml
+++ b/app-arch/alien/metadata.xml
@@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lordvan@gentoo.org</email>
- </maintainer>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
+ <maintainer type="person">
+ <email>lordvan@gentoo.org</email>
+ <name>Thomas Raschbacher</name>
+ </maintainer>
</pkgmetadata>
diff --git a/app-arch/arc/arc-5.21p.ebuild b/app-arch/arc/arc-5.21p-r1.ebuild
index f62a74e54786..d16740c09251 100644
--- a/app-arch/arc/arc-5.21p.ebuild
+++ b/app-arch/arc/arc-5.21p-r1.ebuild
@@ -1,24 +1,23 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="Create & extract files from DOS .ARC files"
-HOMEPAGE="http://arc.sourceforge.net"
+HOMEPAGE="https://arc.sourceforge.net"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
PATCHES=(
"${FILESDIR}"/${PN}-5.21m-darwin.patch
"${FILESDIR}"/${PN}-5.21m-gentoo-fbsd.patch
- "${FILESDIR}"/${PN}-5.21o-interix.patch
"${FILESDIR}"/${PN}-5.21p-fno-common.patch
+ "${FILESDIR}"/${PN}-5.21p-variadic-arcdie.patch
)
src_prepare() {
diff --git a/app-arch/arc/files/arc-5.21m-darwin.patch b/app-arch/arc/files/arc-5.21m-darwin.patch
index fb1eb5ea2598..85a36593dbf2 100644
--- a/app-arch/arc/files/arc-5.21m-darwin.patch
+++ b/app-arch/arc/files/arc-5.21m-darwin.patch
@@ -1,5 +1,5 @@
---- arc-5.21m/tmclock.c
-+++ arc-5.21m/tmclock.c
+--- a/tmclock.c
++++ b/tmclock.c
@@ -14,7 +14,7 @@
/* Julian day number of the Unix* clock's origin, 01 Jan 1970. */
#define JD1970 2440587L
diff --git a/app-arch/arc/files/arc-5.21o-interix.patch b/app-arch/arc/files/arc-5.21o-interix.patch
deleted file mode 100644
index f95aee85e37d..000000000000
--- a/app-arch/arc/files/arc-5.21o-interix.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru arc-5.21o.orig/arcdos.c arc-5.21o/arcdos.c
---- arc-5.21o.orig/arcdos.c 2008-03-30 15:44:53 +0200
-+++ arc-5.21o/arcdos.c 2008-03-30 15:45:51 +0200
-@@ -30,7 +30,7 @@
- #if UNIX
- #include <sys/types.h>
- #include <sys/stat.h>
--#if BSD
-+#if BSD || defined(__INTERIX)
- #include <sys/time.h>
- #else
- #include <time.h> /* Sys V. Bleah. */
diff --git a/app-arch/arc/files/arc-5.21p-variadic-arcdie.patch b/app-arch/arc/files/arc-5.21p-variadic-arcdie.patch
new file mode 100644
index 000000000000..787748f6d3fa
--- /dev/null
+++ b/app-arch/arc/files/arc-5.21p-variadic-arcdie.patch
@@ -0,0 +1,38 @@
+Convert arcdie to variadic function, which solves the issue with
+-Werror=implicit-int enabled.
+
+Bug: https://bugs.gentoo.org/870517
+
+diff --git a/arcmisc.c b/arcmisc.c
+index ea12b41..3d6272e 100644
+--- a/arcmisc.c
++++ b/arcmisc.c
+@@ -3,6 +3,7 @@
+ * $Header: /cvsroot/arc/arc/arcmisc.c,v 1.4 2005/10/09 01:38:22 highlandsun Exp $
+ */
+
++#include <stdarg.h>
+ #include <stdio.h>
+ #include <ctype.h>
+ #include "arc.h"
+@@ -223,11 +224,14 @@ upper(string)
+ }
+ /* VARARGS1 */
+ VOID
+-arcdie(s, arg1, arg2, arg3)
+- char *s;
++arcdie(char * s, ...)
+ {
++ va_list ap;
++
+ fprintf(stderr, "ARC: ");
+- fprintf(stderr, s, arg1, arg2, arg3);
++ va_start(ap, s);
++ vfprintf(stderr, s, ap);
++ va_end(ap);
+ fprintf(stderr, "\n");
+ #if UNIX
+ perror("UNIX");
+--
+2.35.1
+
diff --git a/app-arch/arc/metadata.xml b/app-arch/arc/metadata.xml
index 45f29ce39fbc..70ca0315429e 100644
--- a/app-arch/arc/metadata.xml
+++ b/app-arch/arc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/arj/arj-3.10.22-r7.ebuild b/app-arch/arj/arj-3.10.22-r8.ebuild
index 2d32c5a42f08..411fee4059d2 100644
--- a/app-arch/arj/arj-3.10.22-r7.ebuild
+++ b/app-arch/arj/arj-3.10.22-r8.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit autotools toolchain-funcs
@@ -9,39 +9,29 @@ PATCH_LEVEL=15
MY_P="${PN}_${PV}"
DESCRIPTION="Utility for opening arj archives"
-HOMEPAGE="http://arj.sourceforge.net/"
-SRC_URI="mirror://debian/pool/main/a/arj/${MY_P}.orig.tar.gz
+HOMEPAGE="https://arj.sourceforge.net/"
+SRC_URI="
+ mirror://debian/pool/main/a/arj/${MY_P}.orig.tar.gz
mirror://debian/pool/main/a/arj/${MY_P}-${PATCH_LEVEL}.debian.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-IUSE=""
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
PATCHES=(
"${FILESDIR}/${P}-implicit-declarations.patch"
"${FILESDIR}/${P}-glibc2.10.patch"
"${WORKDIR}"/debian/patches/
"${FILESDIR}/${P}-darwin.patch"
- "${FILESDIR}/${P}-interix.patch"
)
-DOCS=(
- doc/compile.txt
- doc/debug.txt
- doc/glossary.txt
- doc/rev_hist.txt
- doc/xlation.txt
-)
+DOCS=( doc/compile.txt doc/debug.txt doc/glossary.txt doc/rev_hist.txt doc/xlation.txt )
src_prepare() {
default
cd gnu || die 'failed to change to the "gnu" directory'
echo -n "" > stripgcc.lnk || die "failed to disable stripgcc.lnk"
- # This gets rid of the QA warning, but should be fixed upstream...
- mv configure.{in,ac} || die 'failed to move configure.in to configure.ac'
-
eautoreconf
}
diff --git a/app-arch/arj/files/arj-3.10.22-interix.patch b/app-arch/arj/files/arj-3.10.22-interix.patch
deleted file mode 100644
index 8294f1e96bb4..000000000000
--- a/app-arch/arj/files/arj-3.10.22-interix.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -ru arj-3.10.22.orig/environ.c arj-3.10.22/environ.c
---- arj-3.10.22.orig/environ.c 2008-03-30 16:51:40 +0200
-+++ arj-3.10.22/environ.c 2008-03-30 16:50:16 +0200
-@@ -61,7 +61,7 @@
- #elif defined(__FreeBSD__)||defined(__NetBSD__)||defined(__APPLE__)
- #include <sys/param.h>
- #include <sys/mount.h>
-- #elif defined(__QNXNTO__)
-+ #elif defined(__QNXNTO__) || defined(__INTERIX)
- #include <sys/statvfs.h>
- #else
- #include <sys/statfs.h>
-@@ -2286,7 +2286,7 @@
- else
- return((LONG_MAX/(spclu*bps)<fclu)?LONG_MAX:spclu*bps*fclu);
- #elif TARGET==UNIX
-- #if defined(__QNXNTO__)||defined(__sco__)||defined(SUNOS)
-+ #if defined(__QNXNTO__)||defined(__sco__)||defined(SUNOS)||defined(__INTERIX)
- struct statvfs vfs;
-
- if(statvfs(name, &vfs)==-1)
-@@ -3802,7 +3802,9 @@
- #elif TARGET==WIN32
- return(0);
- #elif TARGET==UNIX
-+ #ifndef __INTERIX
- sync();
-+ #endif
- return(0);
- #endif
- }
-diff -ru arj-3.10.22.orig/gnu/configure.in arj-3.10.22/gnu/configure.in
---- arj-3.10.22.orig/gnu/configure.in 2008-03-30 16:51:40 +0200
-+++ arj-3.10.22/gnu/configure.in 2008-03-30 16:41:37 +0200
-@@ -67,8 +67,9 @@
- DLL_EXT=".dylib"
- DLL_FLAGS=""
- ;;
--interix3*)
-+interix*)
- # not ELF
-+ DYN_LIBS="-ldl"
- DLL_FLAGS="-shared"
- DLL_CFLAGS=""
- ;;
diff --git a/app-arch/arj/metadata.xml b/app-arch/arj/metadata.xml
index cb9416dc0bb7..18b2cd894649 100644
--- a/app-arch/arj/metadata.xml
+++ b/app-arch/arj/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/atool/atool-0.39.0-r1.ebuild b/app-arch/atool/atool-0.39.0-r1.ebuild
index 4ab3fb6b4aec..3c875d01e158 100644
--- a/app-arch/atool/atool-0.39.0-r1.ebuild
+++ b/app-arch/atool/atool-0.39.0-r1.ebuild
@@ -1,16 +1,29 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+inherit autotools
+
DESCRIPTION="Script for managing file archives of various types"
HOMEPAGE="https://www.nongnu.org/atool/"
SRC_URI="https://savannah.nongnu.org/download/${PN}/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 ppc x86"
+KEYWORDS="amd64 ~arm64 ~hppa ~ia64 ppc ~ppc64 ~riscv ~sparc x86"
DEPEND="dev-lang/perl"
RDEPEND="${DEPEND}
!app-text/adiff"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.39.0-configure-bashism.patch
+)
+
+src_prepare() {
+ default
+
+ # Needed for the bashism patch
+ eautoreconf
+}
diff --git a/app-arch/atool/files/atool-0.39.0-configure-bashism.patch b/app-arch/atool/files/atool-0.39.0-configure-bashism.patch
new file mode 100644
index 000000000000..512bdc02ee9f
--- /dev/null
+++ b/app-arch/atool/files/atool-0.39.0-configure-bashism.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/775158
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,7 +11,7 @@ AC_DEFINE_DIR(LOCALSTATEDIR, localstatedir)
+ dnl Perl stuff
+ AC_PATH_PROG([PERL], [perl])
+ eval `$PERL -V:startperl`
+-if test "${startperl:0:1}" = "#" ; then
++if test "$(printf %.1s "$startperl")" = "#" ; then
+ startperl="\\$startperl"
+ fi
+ AC_SUBST(PERL_SHEBANG, $startperl)
diff --git a/app-arch/atool/metadata.xml b/app-arch/atool/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/app-arch/atool/metadata.xml
+++ b/app-arch/atool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/app-arch/bloscpack/Manifest b/app-arch/bloscpack/Manifest
deleted file mode 100644
index 4ea87053d80f..000000000000
--- a/app-arch/bloscpack/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bloscpack-0.16.0.tar.gz 99059 BLAKE2B 415894771d6b987170b6938fd20ad065d30075410ddf021bd6e65e3e02d12bff6f5bb22960cdd186d9e52666a1d934047e0383e5d74016c3ad2ba1eef06cafb6 SHA512 0608c795570961c2dc6ba5a6ea3c8c79b215609c2d141db797429abbceb8ee43843196a2d14fc94797d7df62d562abf5efdae10f093154d5d7a20b3b9bcd85ed
diff --git a/app-arch/bloscpack/bloscpack-0.16.0.ebuild b/app-arch/bloscpack/bloscpack-0.16.0.ebuild
deleted file mode 100644
index 933d16221469..000000000000
--- a/app-arch/bloscpack/bloscpack-0.16.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7} )
-DISTUTILS_USE_SETUPTOOLS="rdepend"
-
-inherit distutils-r1
-
-DESCRIPTION="Command line interface for Blosc compression"
-HOMEPAGE="https://github.com/Blosc/bloscpack"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/blosc[${PYTHON_USEDEP}]
- dev-python/deprecated[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- test? (
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/nose[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests nose
-
-python_test() {
- PYTHONPATH="${BUILD_DIR}"/lib nosetests -v || die
-}
diff --git a/app-arch/bloscpack/metadata.xml b/app-arch/bloscpack/metadata.xml
deleted file mode 100644
index 5e17ecfaa28c..000000000000
--- a/app-arch/bloscpack/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>sci@gentoo.org</email>
- <name>Gentoo Science Project</name>
- </maintainer>
- <longdescription lang="en">
- Command line interface to and serialization format for Blosc, a high
- performance, multi-threaded, blocking and shuffling compressor. Uses
- python-blosc bindings to interface with blosc.
- </longdescription>
- <upstream>
- <remote-id type="pypi">bloscpack</remote-id>
- <remote-id type="github">Blosc/bloscpack</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/app-arch/brotli/Manifest b/app-arch/brotli/Manifest
index 5f8398009268..9f804bc4a3fd 100644
--- a/app-arch/brotli/Manifest
+++ b/app-arch/brotli/Manifest
@@ -1,3 +1,3 @@
-DIST brotli-1.0.6.tar.gz 23827656 BLAKE2B 8d31eb1c4119de44702f2239fba9db72f1ae81801d06e51716432ff2f8aa78259c52cbd57b8fcd005c1bc14ada81b6e47a35c5d3864bb10bb02d113e30bd321b SHA512 b9847375471de3ae815ef4bb45a29653c343fad0a891a79d5132fcdee34c85caafd82289c8b413c3ef609049f2e8c4af9f9abd1736a2408ba44544c5fefc0010
-DIST brotli-1.0.7.tar.gz 23827908 BLAKE2B b9fc554cd23c8387b648638b6f9bb2d29fa87035856d03cf284662f9281984f3bf8e40109e61155ece18673f4391bc0fff704f8ab800a2041d3ce1824478d2ae SHA512 a82362aa36d2f2094bca0b2808d9de0d57291fb3a4c29d7c0ca0a37e73087ec5ac4df299c8c363e61106fccf2fe7f58b5cf76eb97729e2696058ef43b1d3930a
DIST brotli-1.0.9.tar.gz 486984 BLAKE2B 8b9939d5224396ef33b43e019250ba4bc8949903583615e8dc02c85340fc0a1e2d1632161e00b0ee7355d77f05529ac772f482e05d2089afd71a0bf71e803904 SHA512 b8e2df955e8796ac1f022eb4ebad29532cb7e3aa6a4b6aee91dbd2c7d637eee84d9a144d3e878895bb5e62800875c2c01c8f737a1261020c54feacf9f676b5f5
+DIST brotli-1.0.9.testdata.tar.xz 3771536 BLAKE2B e22a7e926a68b64cf3ddcf90d2381201d0bac6486f28c3a675c83a2a685108491011195faf48df9abd478a011e874df560ae81988348f7605197805cc3be20dd SHA512 d98c48dbc7772959a9cf276b638cf773a05a896c9daf4f6235f7d7fd625490b3f538e0690afcd6968ff81ad3745c7d78419850c2518048c44d73b470bcd08c97
+DIST brotli-1.1.0.tar.gz 511969 BLAKE2B 7ac767fd6dafaabfb4e3834d690f71abceb4d4e7f131849d6c328a04f3a16c54d0a9463a37f03663a4158c35e970a089512c8a5bc43eda79fb43c1f61223379e SHA512 6eb280d10d8e1b43d22d00fa535435923c22ce8448709419d676ff47d4a644102ea04f488fc65a179c6c09fee12380992e9335bad8dfebd5d1f20908d10849d9
diff --git a/app-arch/brotli/brotli-1.0.6-r1.ebuild b/app-arch/brotli/brotli-1.0.6-r1.ebuild
deleted file mode 100644
index 012faf0a92fb..000000000000
--- a/app-arch/brotli/brotli-1.0.6-r1.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_OPTIONAL="1"
-DISTUTILS_IN_SOURCE_BUILD="1"
-
-inherit cmake-multilib distutils-r1 eapi7-ver
-
-DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli"
-
-SLOT="0/$(ver_cut 1)"
-
-RDEPEND="python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-
-IUSE="python test"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-LICENSE="MIT python? ( Apache-2.0 )"
-
-DOCS=( README.md CONTRIBUTING.md )
-
-if [[ ${PV} == "9999" ]] ; then
- SRC_URI=""
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris"
- SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-RESTRICT="!test? ( test )"
-
-src_prepare() {
- use python && distutils-r1_src_prepare
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
- -DBUILD_TESTING="$(usex test)"
- )
- cmake-utils_src_configure
-}
-src_configure() {
- cmake-multilib_src_configure
- use python && distutils-r1_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-}
-src_compile() {
- cmake-multilib_src_compile
- use python && distutils-r1_src_compile
-}
-
-python_test() {
- esetup.py test || die
-}
-
-multilib_src_test() {
- cmake-utils_src_test
-}
-src_test() {
- cmake-multilib_src_test
- use python && distutils-r1_src_test
-}
-
-multilib_src_install() {
- cmake-utils_src_install
-}
-multilib_src_install_all() {
- use python && distutils-r1_src_install
-}
diff --git a/app-arch/brotli/brotli-1.0.9-r1.ebuild b/app-arch/brotli/brotli-1.0.9-r1.ebuild
deleted file mode 100644
index 2f33b07a0169..000000000000
--- a/app-arch/brotli/brotli-1.0.9-r1.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-DISTUTILS_OPTIONAL="1"
-DISTUTILS_IN_SOURCE_BUILD="1"
-
-inherit cmake-multilib distutils-r1
-
-DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli"
-
-SLOT="0/$(ver_cut 1)"
-
-RDEPEND="python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-
-IUSE="python test"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-LICENSE="MIT python? ( Apache-2.0 )"
-
-DOCS=( README.md CONTRIBUTING.md )
-
-if [[ ${PV} == "9999" ]] ; then
- SRC_URI=""
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris"
- SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-# tests are currently broken, see https://github.com/google/brotli/issues/850
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}/${PV}-linker.patch"
-)
-
-src_prepare() {
- use python && distutils-r1_src_prepare
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_TESTING="$(usex test)"
- )
- cmake-utils_src_configure
-}
-src_configure() {
- cmake-multilib_src_configure
- use python && distutils-r1_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-}
-src_compile() {
- cmake-multilib_src_compile
- use python && distutils-r1_src_compile
-}
-
-python_test() {
- esetup.py test || die
-}
-
-multilib_src_test() {
- cmake-utils_src_test
-}
-src_test() {
- cmake-multilib_src_test
- use python && distutils-r1_src_test
-}
-
-multilib_src_install() {
- cmake-utils_src_install
-}
-multilib_src_install_all() {
- use python && distutils-r1_src_install
-}
diff --git a/app-arch/brotli/brotli-1.0.9-r6.ebuild b/app-arch/brotli/brotli-1.0.9-r6.ebuild
new file mode 100644
index 000000000000..7a77db722acd
--- /dev/null
+++ b/app-arch/brotli/brotli-1.0.9-r6.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_OPTIONAL="1"
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit cmake-multilib distutils-r1 flag-o-matic
+
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/google/${PN}.git"
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ SRC_URI="
+ https://github.com/google/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ test? (
+ https://dev.gentoo.org/~mgorny/dist/${P}.testdata.tar.xz
+ )
+ "
+fi
+
+DESCRIPTION="Generic-purpose lossless compression algorithm"
+HOMEPAGE="https://github.com/google/brotli/"
+
+LICENSE="MIT python? ( Apache-2.0 )"
+SLOT="0/$(ver_cut 1)"
+IUSE="python static-libs test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ python? (
+ ${DISTUTILS_DEPS}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/unittest-or-fail[${PYTHON_USEDEP}]
+ ' 3.{9..11})
+ )
+ )
+"
+
+DOCS=( README.md CONTRIBUTING.md )
+
+PATCHES=( "${FILESDIR}/${PV}-linker.patch" )
+
+src_prepare() {
+ cmake_src_prepare
+ use python && distutils-r1_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTING="$(usex test)"
+ )
+ cmake_src_configure
+}
+
+src_configure() {
+ append-lfs-flags
+
+ cmake-multilib_src_configure
+ use python && distutils-r1_src_configure
+}
+
+src_compile() {
+ cmake-multilib_src_compile
+ use python && distutils-r1_src_compile
+}
+
+python_test() {
+ eunittest -s python -p "*_test.py"
+}
+
+src_test() {
+ cmake-multilib_src_test
+ use python && distutils-r1_src_test
+}
+
+multilib_src_install() {
+ cmake_src_install
+ if ! use static-libs; then
+ rm "${ED}"/usr/$(get_libdir)/*.a || die
+ fi
+}
+
+multilib_src_install_all() {
+ use python && distutils-r1_src_install
+
+ doman docs/brotli.1
+
+ local page
+ for page in constants decode encode types ; do
+ newman docs/${page}.h.3 ${PN}_${page}.h.3
+ done
+}
diff --git a/app-arch/brotli/brotli-1.0.7.ebuild b/app-arch/brotli/brotli-1.1.0.ebuild
index 4d8bb62d40e4..af761fb90b3f 100644
--- a/app-arch/brotli/brotli-1.0.7.ebuild
+++ b/app-arch/brotli/brotli-1.1.0.ebuild
@@ -1,79 +1,98 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8,9} )
+DISTUTILS_EXT=1
DISTUTILS_OPTIONAL="1"
-DISTUTILS_IN_SOURCE_BUILD="1"
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake-multilib distutils-r1
+inherit cmake-multilib distutils-r1 flag-o-matic
+
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/google/${PN}.git"
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ SRC_URI="
+ https://github.com/google/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ "
+fi
DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli"
+HOMEPAGE="https://github.com/google/brotli/"
+LICENSE="MIT python? ( Apache-2.0 )"
SLOT="0/$(ver_cut 1)"
-
-RDEPEND="python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-
IUSE="python test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
-LICENSE="MIT python? ( Apache-2.0 )"
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ python? (
+ ${DISTUTILS_DEPS}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/unittest-or-fail[${PYTHON_USEDEP}]
+ ' 3.{9..11})
+ )
+ )
+"
DOCS=( README.md CONTRIBUTING.md )
-if [[ ${PV} == "9999" ]] ; then
- SRC_URI=""
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris"
- SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-RESTRICT="!test? ( test )"
-
src_prepare() {
+ cmake_src_prepare
use python && distutils-r1_src_prepare
- cmake-utils_src_prepare
}
multilib_src_configure() {
local mycmakeargs=(
-DBUILD_TESTING="$(usex test)"
)
- cmake-utils_src_configure
+ cmake_src_configure
}
+
src_configure() {
+ append-lfs-flags
+
cmake-multilib_src_configure
use python && distutils-r1_src_configure
}
-multilib_src_compile() {
- cmake-utils_src_compile
-}
src_compile() {
cmake-multilib_src_compile
use python && distutils-r1_src_compile
}
python_test() {
- esetup.py test || die
+ eunittest -s python -p "*_test.py"
}
-multilib_src_test() {
- cmake-utils_src_test
-}
src_test() {
cmake-multilib_src_test
use python && distutils-r1_src_test
}
multilib_src_install() {
- cmake-utils_src_install
+ cmake_src_install
}
+
multilib_src_install_all() {
use python && distutils-r1_src_install
+
+ doman docs/brotli.1
+
+ local page
+ for page in constants decode encode types ; do
+ newman docs/${page}.h.3 ${PN}_${page}.h.3
+ done
}
diff --git a/app-arch/brotli/brotli-9999.ebuild b/app-arch/brotli/brotli-9999.ebuild
index f40bbfb62d2f..53768510bba9 100644
--- a/app-arch/brotli/brotli-9999.ebuild
+++ b/app-arch/brotli/brotli-9999.ebuild
@@ -1,79 +1,98 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8} )
+DISTUTILS_EXT=1
DISTUTILS_OPTIONAL="1"
-DISTUTILS_IN_SOURCE_BUILD="1"
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
-inherit cmake-multilib distutils-r1
+inherit cmake-multilib distutils-r1 flag-o-matic
+
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/google/${PN}.git"
+ inherit git-r3
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ SRC_URI="
+ https://github.com/google/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ "
+fi
DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli"
+HOMEPAGE="https://github.com/google/brotli/"
+LICENSE="MIT python? ( Apache-2.0 )"
SLOT="0/$(ver_cut 1)"
-
-RDEPEND="python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-
IUSE="python test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
-LICENSE="MIT python? ( Apache-2.0 )"
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ python? (
+ ${DISTUTILS_DEPS}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/unittest-or-fail[${PYTHON_USEDEP}]
+ ' 3.{9..11})
+ )
+ )
+"
DOCS=( README.md CONTRIBUTING.md )
-if [[ ${PV} == "9999" ]] ; then
- SRC_URI=""
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris"
- SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-RESTRICT="!test? ( test )"
-
src_prepare() {
+ cmake_src_prepare
use python && distutils-r1_src_prepare
- cmake-utils_src_prepare
}
multilib_src_configure() {
local mycmakeargs=(
-DBUILD_TESTING="$(usex test)"
)
- cmake-utils_src_configure
+ cmake_src_configure
}
+
src_configure() {
+ append-lfs-flags
+
cmake-multilib_src_configure
use python && distutils-r1_src_configure
}
-multilib_src_compile() {
- cmake-utils_src_compile
-}
src_compile() {
cmake-multilib_src_compile
use python && distutils-r1_src_compile
}
python_test() {
- esetup.py test || die
+ eunittest -s python -p "*_test.py"
}
-multilib_src_test() {
- cmake-utils_src_test
-}
src_test() {
cmake-multilib_src_test
use python && distutils-r1_src_test
}
multilib_src_install() {
- cmake-utils_src_install
+ cmake_src_install
}
+
multilib_src_install_all() {
use python && distutils-r1_src_install
+
+ doman docs/brotli.1
+
+ local page
+ for page in constants decode encode types ; do
+ newman docs/${page}.h.3 ${PN}_${page}.h.3
+ done
}
diff --git a/app-arch/brotli/metadata.xml b/app-arch/brotli/metadata.xml
index f2d6ceadef4d..2b14295d52d7 100644
--- a/app-arch/brotli/metadata.xml
+++ b/app-arch/brotli/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>candrews@gentoo.org</email>
<name>Craig Andrews</name>
</maintainer>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
<longdescription>
Brotli is a generic-purpose lossless compression algorithm that
compresses data using a combination of a modern variant of the
@@ -13,6 +16,7 @@
deflate but offers denser compression.
</longdescription>
<upstream>
+ <remote-id type="cpe">cpe:/a:google:brotli</remote-id>
<remote-id type="github">google/brotli</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/bsdsfv/bsdsfv-1.18-r2.ebuild b/app-arch/bsdsfv/bsdsfv-1.18-r3.ebuild
index 9c59d15f47c6..4304b2353edf 100644
--- a/app-arch/bsdsfv/bsdsfv-1.18-r2.ebuild
+++ b/app-arch/bsdsfv/bsdsfv-1.18-r3.ebuild
@@ -1,25 +1,23 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="all-in-one SFV checksum utility"
-HOMEPAGE="http://bsdsfv.sourceforge.net/"
+HOMEPAGE="https://bsdsfv.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+S="${WORKDIR}/${PN}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm ~hppa ~m68k ppc ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-S=${WORKDIR}/${PN}
PATCHES=( "${FILESDIR}"/${P}-64bit.patch )
src_compile() {
- emake STRIP=true CC=$(tc-getCC)
+ emake STRIP=":" CC="$(tc-getCC)"
}
src_install() {
diff --git a/app-arch/bsdsfv/metadata.xml b/app-arch/bsdsfv/metadata.xml
index 7bd408f4a8ba..73bbf0a97f95 100644
--- a/app-arch/bsdsfv/metadata.xml
+++ b/app-arch/bsdsfv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<upstream>
diff --git a/app-arch/bzip2/Manifest b/app-arch/bzip2/Manifest
index 697d1445ac9e..099151807c27 100644
--- a/app-arch/bzip2/Manifest
+++ b/app-arch/bzip2/Manifest
@@ -1,3 +1,2 @@
-DIST bzip2-1.0.6.tar.gz 782025 BLAKE2B b31533af7c71d715e6600874bb0a11b9b3aebbb08af0414a6d88bd5a2ad879a482ad408338159cb6c241815da8f48798d2ea7789ea971431d0be42ee827b0a7e SHA512 00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12
-DIST bzip2-1.0.7.tar.gz 809680 BLAKE2B da185d9771dd83d59f2c13ea32e9a514ce50c97d69145ca2c4c8f28749fc85c1aec491c5100f4fc6b2183ee397015b7e74a0407dc1d7a360db159a0a3676fd7a SHA512 e0e19b493e6b1f7beeb0eeb0be8a6358c24202173f28acb1e902a768835be9e24f2cb966452fbc90fc3e4e692532ce0c7e86d06aef2d52c0d2a9ac16e12ec8c8
DIST bzip2-1.0.8.tar.gz 810029 BLAKE2B 22ab3acd84f4db8c3d6f59340c252faedfd4447cea00dafbd652e65b6cf8a20adf6835c22e58563004cfafdb15348c924996230b4b23cae42da5e25eeac4bdad SHA512 083f5e675d73f3233c7930ebe20425a533feedeaaa9d8cc86831312a6581cefbe6ed0d08d2fa89be81082f2a5abdabca8b3c080bf97218a1bd59dc118a30b9f3
+DIST bzip2-1.0.8.tar.gz.sig 310 BLAKE2B 0d702dcb19f7738da9f05ee9d719f5cd3653540365e78db143404e599ea54bc6f9d5e6a38cdf5cdd3c6550243d34266343467c6b1db9d5d3c134f9353b00f395 SHA512 4a4a3fa0ec1c10a704b9870e8e629fd007cca55184423c6bfc3049a702fb41e4aeb73bfe9ca7442c27d32d278f1f34f27523a6be67d35b37896acdded12bf40d
diff --git a/app-arch/bzip2/bzip2-1.0.6-r11.ebuild b/app-arch/bzip2/bzip2-1.0.6-r11.ebuild
deleted file mode 100644
index b867474e5570..000000000000
--- a/app-arch/bzip2/bzip2-1.0.6-r11.ebuild
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
-# (since we're building shared libs) ...
-
-EAPI=6
-
-inherit toolchain-funcs multilib-minimal usr-ldscript
-
-DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
-HOMEPAGE="https://sourceware.org/bzip2/"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="BZIP2"
-SLOT="0/1" # subslot = SONAME
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="static static-libs"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
- "${FILESDIR}"/${PN}-1.0.6-saneso.patch
- "${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986
- "${FILESDIR}"/${PN}-1.0.6-progress.patch
- "${FILESDIR}"/${PN}-1.0.3-no-test.patch
- "${FILESDIR}"/${PN}-1.0.4-POSIX-shell.patch #193365
- "${FILESDIR}"/${PN}-1.0.6-mingw.patch #393573
- "${FILESDIR}"/${PN}-1.0.6-out-of-tree-build.patch
- "${FILESDIR}"/${PN}-1.0.6-CVE-2016-3189.patch #620466
- "${FILESDIR}"/${PN}-1.0.6-ubsan-error.patch
- "${FILESDIR}"/${PN}-1.0.6-nselectors-upper-bound-check.patch
-)
-
-DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf )
-HTML_DOCS=( manual.html )
-
-src_prepare() {
- default
-
- # - Use right man path
- # - Generate symlinks instead of hardlinks
- # - pass custom variables to control libdir
- sed -i \
- -e 's:\$(PREFIX)/man:\$(PREFIX)/share/man:g' \
- -e 's:ln -s -f $(PREFIX)/bin/:ln -s -f :' \
- -e 's:$(PREFIX)/lib:$(PREFIX)/$(LIBDIR):g' \
- Makefile || die
-}
-
-bemake() {
- emake \
- VPATH="${S}" \
- CC="$(tc-getCC)" \
- AR="$(tc-getAR)" \
- RANLIB="$(tc-getRANLIB)" \
- "$@"
-}
-
-multilib_src_compile() {
- bemake -f "${S}"/Makefile-libbz2_so all
- # Make sure we link against the shared lib #504648
- ln -s libbz2.so.${PV} libbz2.so || die
- bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
-}
-
-multilib_src_install() {
- into /usr
-
- # Install the shared lib manually. We install:
- # .x.x.x - standard shared lib behavior
- # .x.x - SONAME some distros use #338321
- # .x - SONAME Gentoo uses
- dolib.so libbz2.so.${PV}
- local v
- for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
- dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
- done
- use static-libs && dolib.a libbz2.a
-
- if multilib_is_native_abi ; then
- gen_usr_ldscript -a bz2
-
- dobin bzip2recover
- into /
- dobin bzip2
- fi
-}
-
-multilib_src_install_all() {
- # `make install` doesn't cope with out-of-tree builds, nor with
- # installing just non-binaries, so handle things ourselves.
- insinto /usr/include
- doins bzlib.h
- into /usr
- dobin bz{diff,grep,more}
- doman *.1
-
- dosym bzdiff /usr/bin/bzcmp
- dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
-
- dosym bzmore /usr/bin/bzless
- dosym bzmore.1 /usr/share/man/man1/bzless.1
-
- local x
- for x in bunzip2 bzcat bzip2recover ; do
- dosym bzip2.1 /usr/share/man/man1/${x}.1
- done
- for x in bz{e,f}grep ; do
- dosym bzgrep /usr/bin/${x}
- dosym bzgrep.1 /usr/share/man/man1/${x}.1
- done
-
- einstalldocs
-
- # move "important" bzip2 binaries to /bin and use the shared libbz2.so
- dosym bzip2 /bin/bzcat
- dosym bzip2 /bin/bunzip2
-}
diff --git a/app-arch/bzip2/bzip2-1.0.7-r1.ebuild b/app-arch/bzip2/bzip2-1.0.8-r4.ebuild
index 37ab7244dad5..c90c3005af92 100644
--- a/app-arch/bzip2/bzip2-1.0.7-r1.ebuild
+++ b/app-arch/bzip2/bzip2-1.0.8-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
@@ -6,26 +6,34 @@
EAPI=7
-inherit toolchain-funcs multilib-minimal usr-ldscript
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bzip2.gpg
+inherit toolchain-funcs multilib multilib-minimal usr-ldscript verify-sig
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
HOMEPAGE="https://sourceware.org/bzip2/"
SRC_URI="https://sourceware.org/pub/${PN}/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://sourceware.org/pub/${PN}/${P}.tar.gz.sig )"
LICENSE="BZIP2"
SLOT="0/1" # subslot = SONAME
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
IUSE="static static-libs"
+BDEPEND="
+ verify-sig? ( sec-keys/openpgp-keys-bzip2 )
+"
+PDEPEND="
+ app-alternatives/bzip2
+"
+
PATCHES=(
"${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
- "${FILESDIR}"/${PN}-1.0.7-saneso.patch
+ "${FILESDIR}"/${PN}-1.0.8-saneso.patch
"${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986
"${FILESDIR}"/${PN}-1.0.6-progress.patch
"${FILESDIR}"/${PN}-1.0.3-no-test.patch
- "${FILESDIR}"/${PN}-1.0.4-POSIX-shell.patch #193365
- "${FILESDIR}"/${PN}-1.0.6-mingw.patch #393573
- "${FILESDIR}"/${PN}-1.0.7-out-of-tree-build.patch
+ "${FILESDIR}"/${PN}-1.0.8-mingw.patch #393573
+ "${FILESDIR}"/${PN}-1.0.8-out-of-tree-build.patch
)
DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf )
@@ -60,6 +68,11 @@ multilib_src_compile() {
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
}
+multilib_src_test() {
+ cp "${S}"/sample* "${BUILD_DIR}" || die
+ bemake -f "${S}"/Makefile check
+}
+
multilib_src_install() {
into /usr
@@ -72,14 +85,15 @@ multilib_src_install() {
for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
done
+
use static-libs && dolib.a libbz2.a
if multilib_is_native_abi ; then
gen_usr_ldscript -a bz2
- dobin bzip2recover
+ dobin bzip2recover$(get_exeext)
into /
- dobin bzip2
+ newbin bzip2$(get_exeext) bzip2-reference$(get_exeext)
fi
}
@@ -90,7 +104,8 @@ multilib_src_install_all() {
doins bzlib.h
into /usr
dobin bz{diff,grep,more}
- doman *.1
+ doman bz{diff,grep,more}.1
+ newman bzip2.1 bzip2-reference.1
dosym bzdiff /usr/bin/bzcmp
dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
@@ -98,18 +113,23 @@ multilib_src_install_all() {
dosym bzmore /usr/bin/bzless
dosym bzmore.1 /usr/share/man/man1/bzless.1
+ dosym bzip2-reference.1 /usr/share/man/man1/bzip2recover.1
local x
- for x in bunzip2 bzcat bzip2recover ; do
- dosym bzip2.1 /usr/share/man/man1/${x}.1
- done
for x in bz{e,f}grep ; do
dosym bzgrep /usr/bin/${x}
dosym bzgrep.1 /usr/share/man/man1/${x}.1
done
einstalldocs
+}
- # move "important" bzip2 binaries to /bin and use the shared libbz2.so
- dosym bzip2 /bin/bzcat
- dosym bzip2 /bin/bunzip2
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/bzip2
+ # is installed
+ local x
+ for x in bzip2 bunzip2 bzcat; do
+ if [[ ! -h ${EROOT}/bin/${x} ]]; then
+ ln -s bzip2-reference$(get_exeext) "${EROOT}/bin/${x}$(get_exeext)" || die
+ fi
+ done
}
diff --git a/app-arch/bzip2/bzip2-1.0.8-r1.ebuild b/app-arch/bzip2/bzip2-1.0.8-r5.ebuild
index 34b92d2ea541..8b2111a2bfcb 100644
--- a/app-arch/bzip2/bzip2-1.0.8-r1.ebuild
+++ b/app-arch/bzip2/bzip2-1.0.8-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
@@ -6,17 +6,26 @@
EAPI=7
-inherit toolchain-funcs multilib-minimal usr-ldscript
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bzip2.gpg
+inherit toolchain-funcs multilib multilib-minimal verify-sig
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
HOMEPAGE="https://sourceware.org/bzip2/"
SRC_URI="https://sourceware.org/pub/${PN}/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://sourceware.org/pub/${PN}/${P}.tar.gz.sig )"
LICENSE="BZIP2"
SLOT="0/1" # subslot = SONAME
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
IUSE="static static-libs"
+BDEPEND="
+ verify-sig? ( sec-keys/openpgp-keys-bzip2 )
+"
+PDEPEND="
+ app-alternatives/bzip2
+"
+
PATCHES=(
"${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
"${FILESDIR}"/${PN}-1.0.8-saneso.patch
@@ -59,6 +68,11 @@ multilib_src_compile() {
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
}
+multilib_src_test() {
+ cp "${S}"/sample* "${BUILD_DIR}" || die
+ bemake -f "${S}"/Makefile check
+}
+
multilib_src_install() {
into /usr
@@ -72,21 +86,12 @@ multilib_src_install() {
dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
done
- # Install libbz2.so.1.0 due to accidental soname change in 1.0.7.
- # Reference: 98da0ad82192d21ad74ae52366ea8466e2acea24.
- # OK to remove one year after 2020-04-11.
- if [[ ! -L "${ED}/usr/$(get_libdir)/libbz2.so.1.0" ]]; then
- dosym libbz2.so.${PV} "/usr/$(get_libdir)/libbz2.so.1.0"
- fi
-
use static-libs && dolib.a libbz2.a
if multilib_is_native_abi ; then
- gen_usr_ldscript -a bz2
-
- dobin bzip2recover
+ dobin bzip2recover$(get_exeext)
into /
- dobin bzip2
+ newbin bzip2$(get_exeext) bzip2-reference$(get_exeext)
fi
}
@@ -97,7 +102,8 @@ multilib_src_install_all() {
doins bzlib.h
into /usr
dobin bz{diff,grep,more}
- doman *.1
+ doman bz{diff,grep,more}.1
+ newman bzip2.1 bzip2-reference.1
dosym bzdiff /usr/bin/bzcmp
dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
@@ -105,18 +111,23 @@ multilib_src_install_all() {
dosym bzmore /usr/bin/bzless
dosym bzmore.1 /usr/share/man/man1/bzless.1
+ dosym bzip2-reference.1 /usr/share/man/man1/bzip2recover.1
local x
- for x in bunzip2 bzcat bzip2recover ; do
- dosym bzip2.1 /usr/share/man/man1/${x}.1
- done
for x in bz{e,f}grep ; do
dosym bzgrep /usr/bin/${x}
dosym bzgrep.1 /usr/share/man/man1/${x}.1
done
einstalldocs
+}
- # move "important" bzip2 binaries to /bin and use the shared libbz2.so
- dosym bzip2 /bin/bzcat
- dosym bzip2 /bin/bunzip2
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/bzip2
+ # is installed
+ local x
+ for x in bzip2 bunzip2 bzcat; do
+ if [[ ! -h ${EROOT}/bin/${x} ]]; then
+ ln -s bzip2-reference$(get_exeext) "${EROOT}/bin/${x}$(get_exeext)" || die
+ fi
+ done
}
diff --git a/app-arch/bzip2/bzip2-9999.ebuild b/app-arch/bzip2/bzip2-9999.ebuild
index 579f0b8f44dd..e8b4774ac56e 100644
--- a/app-arch/bzip2/bzip2-9999.ebuild
+++ b/app-arch/bzip2/bzip2-9999.ebuild
@@ -1,24 +1,28 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit meson multilib-minimal usr-ldscript
+inherit meson-multilib usr-ldscript
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
-HOMEPAGE="https://gitlab.com/federicomenaquintero/bzip2"
-if [[ "${PV}" == 9999 ]] ; then
+HOMEPAGE="https://gitlab.com/bzip2/bzip2"
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://gitlab.com/bzip2/bzip2"
inherit git-r3
- EGIT_REPO_URI="https://gitlab.com/federicomenaquintero/bzip2.git"
else
- SRC_URI=""
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
fi
+
LICENSE="BZIP2"
SLOT="0/1" # subslot = SONAME
IUSE="static-libs"
+PDEPEND="
+ app-alternatives/bzip2
+"
+
multilib_src_configure() {
local emesonargs=(
-Ddefault_library=$(usex static-libs both shared)
@@ -29,32 +33,22 @@ multilib_src_configure() {
meson_src_configure
}
-multilib_src_compile() {
- meson_src_compile
-}
-
multilib_src_install() {
meson_src_install
- # Install libbz2.so.1.0 due to accidental soname change in 1.0.7.
- # Reference: 98da0ad82192d21ad74ae52366ea8466e2acea24.
- # OK to remove one year after 2020-04-11.
- if [[ ! -L "${ED}/usr/$(get_libdir)/libbz2.so.1.0" ]]; then
- dosym libbz2.so.1 "/usr/$(get_libdir)/libbz2.so.1.0"
- fi
-
if multilib_is_native_abi ; then
gen_usr_ldscript -a bz2
-
- dodir /bin
- mv "${ED}"/usr/bin/bzip2 "${ED}"/bin || die
fi
}
multilib_src_install_all() {
- # move "important" bzip2 binaries to /bin and use the shared libbz2.so
- dosym bzip2 /bin/bzcat
- dosym bzip2 /bin/bunzip2
+ dodir /bin
+ mv "${ED}"/usr/bin/bzip2 "${ED}"/bin/bzip2-reference || die
+ mv "${ED}"/usr/share/man/man1/bzip2{,-reference}.1 || die
+
+ # moved to app-alternatives/bzip2
+ rm "${ED}"/usr/bin/{bzcat,bunzip2} || die
+ rm "${ED}"/usr/share/man/man1/{bzcat,bunzip2.1} || die
dosym bzdiff /usr/bin/bzcmp
dosym bzmore /usr/bin/bzless
@@ -63,8 +57,7 @@ multilib_src_install_all() {
dosym bzgrep /usr/bin/${x}
done
- dosym bzip2.1 /usr/share/man/man1/bzip2recover.1
+ dosym bzip2-reference.1 /usr/share/man/man1/bzip2recover.1
- local DOCS=( AUTHORS NEWS{,-pre-1.0.7} README.md )
einstalldocs
}
diff --git a/app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch b/app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch
deleted file mode 100644
index 74f8df000b1a..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-bzgrep uses !/bin/sh but then uses the bashism ${var//} so replace those
-with calls to sed so POSIX shells work
-
-http://bugs.gentoo.org/193365
-
---- a/bzgrep
-+++ b/bzgrep
-@@ -63,10 +63,9 @@
- bzip2 -cdfq "$i" | $grep $opt "$pat"
- r=$?
- else
-- j=${i//\\/\\\\}
-- j=${j//|/\\|}
-- j=${j//&/\\&}
-- j=`printf "%s" "$j" | tr '\n' ' '`
-+ # the backslashes here are doubled up as we have to escape each one for the
-+ # shell and then escape each one for the sed expression
-+ j=`printf "%s" "${i}" | sed -e 's:\\\\:\\\\\\\\:g' -e 's:[|]:\\\\|:g' -e 's:[&]:\\\\&:g' | tr '\n' ' '`
- bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|"
- r=$?
- fi
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-CVE-2016-3189.patch b/app-arch/bzip2/files/bzip2-1.0.6-CVE-2016-3189.patch
deleted file mode 100644
index b031c808fef3..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-CVE-2016-3189.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Upstream-Status: Backport
-https://bugzilla.suse.com/attachment.cgi?id=681334
-
-CVE: CVE-2016-3189
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
-Index: bzip2-1.0.6/bzip2recover.c
-===================================================================
---- a/bzip2recover.c
-+++ b/bzip2recover.c
-@@ -457,6 +457,7 @@ Int32 main ( Int32 argc, Char** argv )
- bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 );
- bsPutUInt32 ( bsWr, blockCRC );
- bsClose ( bsWr );
-+ outFile = NULL;
- }
- if (wrBlock >= rbCtr) break;
- wrBlock++;
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-mingw.patch b/app-arch/bzip2/files/bzip2-1.0.6-mingw.patch
deleted file mode 100644
index 51469ca4c96e..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-mingw.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-make it build for mingw targets
-
-https://bugs.gentoo.org/393573
-
---- a/bzip2.c
-+++ b/bzip2.c
-@@ -129,7 +129,7 @@
- #if BZ_LCCWIN32
- # include <io.h>
- # include <fcntl.h>
--# include <sys\stat.h>
-+# include <sys/stat.h>
-
- # define NORETURN /**/
- # define PATH_SEP '\\'
---- a/bzlib.h
-+++ b/bzlib.h
-@@ -81,6 +81,9 @@ typedef
- /* windows.h define small to char */
- # undef small
- # endif
-+# ifndef WINAPI
-+# define WINAPI
-+# endif
- # ifdef BZ_EXPORT
- # define BZ_API(func) WINAPI func
- # define BZ_EXTERN extern
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-nselectors-upper-bound-check.patch b/app-arch/bzip2/files/bzip2-1.0.6-nselectors-upper-bound-check.patch
deleted file mode 100644
index a7731f7de8f7..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-nselectors-upper-bound-check.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 13ca8fee0c897121ae79ae644a212418398dfea7 Mon Sep 17 00:00:00 2001
-From: Amin Hassani <ahassani@chromium.org>
-Date: Fri, 8 Mar 2019 09:58:20 -0800
-Subject: [PATCH] Check for upper bounds of nselectors.
-
-Currently there is no check for the upper bounds of the
-nselectors. Hence, a corrupt input can cause a segfault.
-
-This issue was discovered by one of our fuzzers. The actual error was:
-
-../bzip2-1.0.6/decompress.c:299:10: runtime error: index 18002 out of bounds for type 'UChar [18002]'
----
- decompress.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/decompress.c b/decompress.c
-index 311f566..391552d 100644
---- a/decompress.c
-+++ b/decompress.c
-@@ -288,6 +288,7 @@ Int32 BZ2_decompress ( DState* s )
- if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR);
- GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15);
- if (nSelectors < 1) RETURN(BZ_DATA_ERROR);
-+ if (nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR);
- for (i = 0; i < nSelectors; i++) {
- j = 0;
- while (True) {
---
-2.21.0.360.g471c308f928-goog
-
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-out-of-tree-build.patch b/app-arch/bzip2/files/bzip2-1.0.6-out-of-tree-build.patch
deleted file mode 100644
index 806339ebb6b4..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-out-of-tree-build.patch
+++ /dev/null
@@ -1,79 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -53,7 +53,6 @@ libbz2.a: $(OBJS)
-
- check: test
- test: bzip2
-- @cat words1
- ./bzip2 -1 < sample1.ref > sample1.rb2
- ./bzip2 -2 < sample2.ref > sample2.rb2
- ./bzip2 -3 < sample3.ref > sample3.rb2
-@@ -66,7 +65,6 @@ test: bzip2
- cmp sample1.tst sample1.ref
- cmp sample2.tst sample2.ref
- cmp sample3.tst sample3.ref
-- @cat words3
-
- install: bzip2 bzip2recover
- if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
-@@ -115,25 +113,8 @@ clean:
- sample1.rb2 sample2.rb2 sample3.rb2 \
- sample1.tst sample2.tst sample3.tst
-
--blocksort.o: blocksort.c
-- @cat words0
-- $(CC) $(CFLAGS) -c blocksort.c
--huffman.o: huffman.c
-- $(CC) $(CFLAGS) -c huffman.c
--crctable.o: crctable.c
-- $(CC) $(CFLAGS) -c crctable.c
--randtable.o: randtable.c
-- $(CC) $(CFLAGS) -c randtable.c
--compress.o: compress.c
-- $(CC) $(CFLAGS) -c compress.c
--decompress.o: decompress.c
-- $(CC) $(CFLAGS) -c decompress.c
--bzlib.o: bzlib.c
-- $(CC) $(CFLAGS) -c bzlib.c
--bzip2.o: bzip2.c
-- $(CC) $(CFLAGS) -c bzip2.c
--bzip2recover.o: bzip2recover.c
-- $(CC) $(CFLAGS) -c bzip2recover.c
-+%.o: %.c
-+ $(CC) $(CFLAGS) -c $<
-
-
- distclean: clean
---- a/Makefile-libbz2_so
-+++ b/Makefile-libbz2_so
-@@ -36,9 +36,7 @@ OBJS= blocksort.o \
-
- all: $(OBJS)
- $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.6 $(OBJS)
-- $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
-- rm -f libbz2.so.1.0
-- ln -s libbz2.so.1.0.6 libbz2.so.1.0
-+ ln -sf libbz2.so.1.0.6 libbz2.so.1.0
-
- clean:
- rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
-@@ -43,17 +43,5 @@ all: $(OBJS)
- clean:
- rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
-
--blocksort.o: blocksort.c
-- $(CC) $(CFLAGS) -c blocksort.c
--huffman.o: huffman.c
-- $(CC) $(CFLAGS) -c huffman.c
--crctable.o: crctable.c
-- $(CC) $(CFLAGS) -c crctable.c
--randtable.o: randtable.c
-- $(CC) $(CFLAGS) -c randtable.c
--compress.o: compress.c
-- $(CC) $(CFLAGS) -c compress.c
--decompress.o: decompress.c
-- $(CC) $(CFLAGS) -c decompress.c
--bzlib.o: bzlib.c
-- $(CC) $(CFLAGS) -c bzlib.c
-+%.o: %.c
-+ $(CC) $(CFLAGS) -c $<
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-saneso.patch b/app-arch/bzip2/files/bzip2-1.0.6-saneso.patch
deleted file mode 100644
index 52ea791ce34a..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-saneso.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/Makefile-libbz2_so
-+++ b/Makefile-libbz2_so
-@@ -35,8 +35,8 @@
- bzlib.o
-
- all: $(OBJS)
-- $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
-- $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
-+ $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.6 $(OBJS)
-+ $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
- rm -f libbz2.so.1.0
- ln -s libbz2.so.1.0.6 libbz2.so.1.0
-
diff --git a/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch b/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
deleted file mode 100644
index 84b811177ed5..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Manoj Gupta <manojgupta@google.com>
-
-Use unsigned 1 for shifting instead of signed 1.
-
-This fixed an issue with shift caught by undefined behavior
-sanitizer in clang.
-bzip2-1.0.6/blocksort.c:255:7
-runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
-
---- a/blocksort.c
-+++ b/blocksort.c
-@@ -202,9 +202,9 @@ void fallbackQSort3 ( UInt32* fmap,
- bhtab [ 0 .. 2+(nblock/32) ] destroyed
- */
-
--#define SET_BH(zz) bhtab[(zz) >> 5] |= (1 << ((zz) & 31))
--#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1 << ((zz) & 31))
--#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1 << ((zz) & 31)))
-+#define SET_BH(zz) bhtab[(zz) >> 5] |= (1u << ((zz) & 31))
-+#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1u << ((zz) & 31))
-+#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1u << ((zz) & 31)))
- #define WORD_BH(zz) bhtab[(zz) >> 5]
- #define UNALIGNED_BH(zz) ((zz) & 0x01f)
-
diff --git a/app-arch/bzip2/files/bzip2-1.0.7-out-of-tree-build.patch b/app-arch/bzip2/files/bzip2-1.0.7-out-of-tree-build.patch
deleted file mode 100644
index 64cca58eac34..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.7-out-of-tree-build.patch
+++ /dev/null
@@ -1,76 +0,0 @@
---- bzip2-1.0.7/Makefile
-+++ bzip2-1.0.7/Makefile
-@@ -54,7 +54,6 @@
-
- check: test
- test: bzip2
-- @cat words1
- ./bzip2 -1 < sample1.ref > sample1.rb2
- ./bzip2 -2 < sample2.ref > sample2.rb2
- ./bzip2 -3 < sample3.ref > sample3.rb2
-@@ -67,7 +66,6 @@
- cmp sample1.tst sample1.ref
- cmp sample2.tst sample2.ref
- cmp sample3.tst sample3.ref
-- @cat words3
-
- install: bzip2 bzip2recover
- if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
-@@ -113,25 +111,8 @@
- sample1.rb2 sample2.rb2 sample3.rb2 \
- sample1.tst sample2.tst sample3.tst
-
--blocksort.o: blocksort.c
-- @cat words0
-- $(CC) $(CFLAGS) -c blocksort.c
--huffman.o: huffman.c
-- $(CC) $(CFLAGS) -c huffman.c
--crctable.o: crctable.c
-- $(CC) $(CFLAGS) -c crctable.c
--randtable.o: randtable.c
-- $(CC) $(CFLAGS) -c randtable.c
--compress.o: compress.c
-- $(CC) $(CFLAGS) -c compress.c
--decompress.o: decompress.c
-- $(CC) $(CFLAGS) -c decompress.c
--bzlib.o: bzlib.c
-- $(CC) $(CFLAGS) -c bzlib.c
--bzip2.o: bzip2.c
-- $(CC) $(CFLAGS) -c bzip2.c
--bzip2recover.o: bzip2recover.c
-- $(CC) $(CFLAGS) -c bzip2recover.c
-+%.o: %.c
-+ $(CC) $(CFLAGS) -c $<
-
-
- distclean: clean
---- bzip2-1.0.7/Makefile-libbz2_so
-+++ bzip2-1.0.7/Makefile-libbz2_so
-@@ -36,24 +36,10 @@
-
- all: $(OBJS)
- $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.7 $(OBJS)
-- $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.7
-- rm -f libbz2.so.1.0
-- ln -s libbz2.so.1.0.7 libbz2.so.1.0
-+ ln -sf libbz2.so.1.0.7 libbz2.so.1.0
-
- clean:
- rm -f $(OBJS) bzip2.o libbz2.so.1.0.7 libbz2.so.1.0 bzip2-shared
-
--blocksort.o: blocksort.c
-- $(CC) $(CFLAGS) -c blocksort.c
--huffman.o: huffman.c
-- $(CC) $(CFLAGS) -c huffman.c
--crctable.o: crctable.c
-- $(CC) $(CFLAGS) -c crctable.c
--randtable.o: randtable.c
-- $(CC) $(CFLAGS) -c randtable.c
--compress.o: compress.c
-- $(CC) $(CFLAGS) -c compress.c
--decompress.o: decompress.c
-- $(CC) $(CFLAGS) -c decompress.c
--bzlib.o: bzlib.c
-- $(CC) $(CFLAGS) -c bzlib.c
-+%.o: %.c
-+ $(CC) $(CFLAGS) -c $<
diff --git a/app-arch/bzip2/files/bzip2-1.0.7-saneso.patch b/app-arch/bzip2/files/bzip2-1.0.7-saneso.patch
deleted file mode 100644
index d63226684f66..000000000000
--- a/app-arch/bzip2/files/bzip2-1.0.7-saneso.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- bzip2-1.0.7/Makefile-libbz2_so
-+++ bzip2-1.0.7/Makefile-libbz2_so
-@@ -35,8 +35,8 @@
- bzlib.o
-
- all: $(OBJS)
-- $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.7 $(OBJS)
-- $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.7
-+ $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.7 $(OBJS)
-+ $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.7
- rm -f libbz2.so.1.0
- ln -s libbz2.so.1.0.7 libbz2.so.1.0
-
diff --git a/app-arch/bzip2/metadata.xml b/app-arch/bzip2/metadata.xml
index 83d6d32d00a6..e3880e673f7f 100644
--- a/app-arch/bzip2/metadata.xml
+++ b/app-arch/bzip2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:bzip:bzip2</remote-id>
+ <remote-id type="gitlab">bzip2/bzip2</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/bzip3/Manifest b/app-arch/bzip3/Manifest
new file mode 100644
index 000000000000..ae651b30a1be
--- /dev/null
+++ b/app-arch/bzip3/Manifest
@@ -0,0 +1 @@
+DIST bzip3-1.4.0.tar.xz 278424 BLAKE2B d3e4ae283d3b4512e70ffe3ef63c4ee4fe6f7a0a272aacfe67aae155aed547b54c7e46bce2448b140c7af58ec968b33a1ea7660ffa492bd6bf6eed9fd9f9c4d1 SHA512 584eb77b3071b09c15f20ec88248c9295ca2107107fdcb0495364ac60807c688d167a6cbbdd1b67cc851cbebc0791661ecb44b4d03ca5fb7d2b89ce839452062
diff --git a/app-arch/bzip3/bzip3-1.4.0.ebuild b/app-arch/bzip3/bzip3-1.4.0.ebuild
new file mode 100644
index 000000000000..7cdf987ce525
--- /dev/null
+++ b/app-arch/bzip3/bzip3-1.4.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="A better and stronger spiritual successor to BZip2"
+HOMEPAGE="https://github.com/kspalaiologos/bzip3"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/kspalaiologos/${PN}.git"
+else
+ SRC_URI="https://github.com/kspalaiologos/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 arm64 ~loong x86"
+fi
+
+LICENSE="LGPL-3+"
+SLOT="0"
+
+src_configure() {
+ # ./configure script will default to Clang if it is found on the system,
+ # force the use of CC selected by the user with CC=$(tc-getCC)
+ econf CC=$(tc-getCC)
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/app-arch/bzip3/metadata.xml b/app-arch/bzip3/metadata.xml
new file mode 100644
index 000000000000..5dee14e0081f
--- /dev/null
+++ b/app-arch/bzip3/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ A better, faster and stronger spiritual successor to BZip2. Features higher
+ compression ratios and better performance thanks to a order-0 context
+ mixing entropy coder, a fast Burrows-Wheeler transform code making use of
+ suffix arrays and a RLE with Lempel Ziv+Prediction pass based on LZ77-style
+ string matching and PPM-style context modeling.
+ Like its ancestor, BZip3 excels at compressing text or code.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/kspalaiologos/bzip3/issues/</bugs-to>
+ <remote-id type="github">kspalaiologos/bzip3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/cabextract/Manifest b/app-arch/cabextract/Manifest
index d833dc8f192e..ccd96f2e0180 100644
--- a/app-arch/cabextract/Manifest
+++ b/app-arch/cabextract/Manifest
@@ -1,3 +1 @@
-DIST cabextract-1.8.tar.gz 289256 BLAKE2B ba9fea0cd12859b0de97b13362eaf276066650eb7151e0115af7ed2586cfa7497f72be2f9287d3ccb5ce5256ec26ca69e729df5bb0a327bb9f32ded25391460c SHA512 f8d676d6b738b0b13ac1cac7716c2fb46db423ef30b05ee64f00fcb19596131fbd34341c8b417af3de04896e9b6a8abf0d5976ee4bf87d016806a71317246d7a
-DIST cabextract-1.9.1.tar.gz 469369 BLAKE2B 5bfc697b40cbf47b42ab7857804b703c9622d8dae1648aae1bb5c0ec7c7978bff01b7ca2526f1b6090f193d88c00e3f49ae111f348d03fec9f575bddbb4b4096 SHA512 c354a4b20a222b40813f01baf8311c9a76611da427f9f44e977a3fd09508e24a18b486e3eef889a9debdca459f1b0c28d5d25429ccd555d3a2e4ff92d91cec14
-DIST cabextract-1.9.tar.gz 466334 BLAKE2B 1a82bddca826ee35ed13e1c0b50deca3ae1b7e31d7f427f54b5d6cf9651a727b7cbf8049c1a4326237725e007baecb4356721489611bb5e015bd7460e2530758 SHA512 d144c1df9ed8e8c339bcadb3d1be2eb2576bb066e3f75a3480df0d5e81407a633554e4674b3bb43716c0cf33a0f2327e6f798cd6d7825bceefa0ad839fcc3f64
+DIST cabextract-1.11.tar.gz 489656 BLAKE2B c0360e63359c3c3db26d442a92be8ac3f05903015be0f8fc76e81b572e882807b881756d6541aa77e55e8c083cda3363f8d2f9a32a7ab35a0b79482a9c91ef47 SHA512 416bdc5a889c3986b2a5d6ecb8526a69f2d85c34f4856da43951271ff4f31013e4197c56ea5f6b05061b511b980d5a65cb34b9b859d3013c1dbcbb89d43114f9
diff --git a/app-arch/cabextract/cabextract-1.9.1.ebuild b/app-arch/cabextract/cabextract-1.11.ebuild
index d89455a4939d..aa1c7c5dffd9 100644
--- a/app-arch/cabextract/cabextract-1.9.1.ebuild
+++ b/app-arch/cabextract/cabextract-1.11.ebuild
@@ -1,18 +1,18 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-inherit autotools toolchain-funcs
+inherit toolchain-funcs
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/kyz/libmspack.git"
- inherit git-r3
+ inherit autotools git-r3
MY_P="${PN}-9999"
LIBMSPACK_DEPEND="~dev-libs/libmspack-9999:="
else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
MY_PV="${PV/_alpha/alpha}"
MY_P="${PN}-${MY_PV}"
SRC_URI="https://www.cabextract.org.uk/${P}.tar.gz"
@@ -27,10 +27,11 @@ LICENSE="GPL-3"
SLOT="0"
IUSE="extras"
-DEPEND="${LIBMSPACK_DEPEND}
- virtual/pkgconfig"
+DEPEND="${LIBMSPACK_DEPEND}"
RDEPEND="${LIBMSPACK_DEPEND}
extras? ( dev-lang/perl )"
+BDEPEND="sys-devel/gettext
+ virtual/pkgconfig"
src_prepare() {
if [[ ${PV} == "9999" ]] ; then
@@ -44,7 +45,7 @@ src_prepare() {
default
- eautoreconf
+ [[ ${PV} == "9999" ]] && eautoreconf
}
src_configure() {
diff --git a/app-arch/cabextract/cabextract-1.8.ebuild b/app-arch/cabextract/cabextract-1.8.ebuild
deleted file mode 100644
index 4a9f46c508d7..000000000000
--- a/app-arch/cabextract/cabextract-1.8.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Extracts files from Microsoft cabinet archive files"
-HOMEPAGE="https://www.cabextract.org.uk/"
-SRC_URI="https://www.cabextract.org.uk/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="extras"
-
-RDEPEND="extras? ( dev-lang/perl )"
-
-src_prepare() {
- default
- # the code attempts to set up a fnmatch replacement, but then fails to code
- # it properly leading to undefined references to rpl_fnmatch(). This may be
- # removed in the future if building still works by setting "yes" to "no".
- export ac_cv_func_fnmatch_works=yes
-}
-
-src_compile() {
- emake AR="$(tc-getAR)"
-}
-
-src_install() {
- local DOCS=( AUTHORS ChangeLog INSTALL NEWS README TODO doc/magic )
- default
- docinto html
- dodoc doc/wince_cab_format.html
- if use extras; then
- dobin src/{wince_info,wince_rename,cabinfo,cabsplit}
- fi
-}
diff --git a/app-arch/cabextract/cabextract-1.9-r2.ebuild b/app-arch/cabextract/cabextract-1.9-r2.ebuild
deleted file mode 100644
index 07d4e1100a40..000000000000
--- a/app-arch/cabextract/cabextract-1.9-r2.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit autotools toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/kyz/libmspack.git"
- inherit git-r3
- MY_P="${PN}-9999"
-
- LIBMSPACK_DEPEND="~dev-libs/libmspack-9999:="
-else
- KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
- MY_PV="${PV/_alpha/alpha}"
- MY_P="${PN}-${MY_PV}"
- SRC_URI="https://www.cabextract.org.uk/${P}.tar.gz"
-
- LIBMSPACK_DEPEND=">=dev-libs/libmspack-0.8_alpha:="
-fi
-
-DESCRIPTION="Extracts files from Microsoft cabinet archive files"
-HOMEPAGE="https://www.cabextract.org.uk/"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="extras"
-
-DEPEND="${LIBMSPACK_DEPEND}
- virtual/pkgconfig"
-RDEPEND="${LIBMSPACK_DEPEND}
- extras? ( dev-lang/perl )"
-
-PATCHES=(
- "${FILESDIR}"/${P}-fix-bigendian.patch
- "${FILESDIR}"/${P}-remove-spurious-test_files.patch
-)
-
-src_prepare() {
- if [[ ${PV} == "9999" ]] ; then
- # Re-create file layout from release tarball
- pushd "${WORKDIR}" &>/dev/null || die
- cp -aL "${S}"/${PN} "${WORKDIR}"/${PN}-source || die
- rm -r "${S}" || die
- mv "${WORKDIR}"/${PN}-source "${S}" || die
- popd &>/dev/null || die
- fi
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- econf \
- --with-external-libmspack=yes
-}
-
-src_compile() {
- emake AR="$(tc-getAR)"
-}
-
-src_install() {
- local DOCS=( AUTHORS ChangeLog NEWS README TODO doc/magic )
- default
- docinto html
- dodoc doc/wince_cab_format.html
- if use extras; then
- dobin src/{wince_info,wince_rename,cabinfo,cabsplit}
- fi
-}
diff --git a/app-arch/cabextract/cabextract-9999.ebuild b/app-arch/cabextract/cabextract-9999.ebuild
index bbc9988041a9..256ec4427719 100644
--- a/app-arch/cabextract/cabextract-9999.ebuild
+++ b/app-arch/cabextract/cabextract-9999.ebuild
@@ -1,18 +1,18 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-inherit autotools toolchain-funcs
+inherit toolchain-funcs
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/kyz/libmspack.git"
- inherit git-r3
+ inherit autotools git-r3
MY_P="${PN}-9999"
LIBMSPACK_DEPEND="~dev-libs/libmspack-9999:="
else
- KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
MY_PV="${PV/_alpha/alpha}"
MY_P="${PN}-${MY_PV}"
SRC_URI="https://www.cabextract.org.uk/${P}.tar.gz"
@@ -27,10 +27,11 @@ LICENSE="GPL-3"
SLOT="0"
IUSE="extras"
-DEPEND="${LIBMSPACK_DEPEND}
- virtual/pkgconfig"
+DEPEND="${LIBMSPACK_DEPEND}"
RDEPEND="${LIBMSPACK_DEPEND}
extras? ( dev-lang/perl )"
+BDEPEND="sys-devel/gettext
+ virtual/pkgconfig"
src_prepare() {
if [[ ${PV} == "9999" ]] ; then
@@ -44,7 +45,7 @@ src_prepare() {
default
- eautoreconf
+ [[ ${PV} == "9999" ]] && eautoreconf
}
src_configure() {
diff --git a/app-arch/cabextract/files/cabextract-1.9-fix-bigendian.patch b/app-arch/cabextract/files/cabextract-1.9-fix-bigendian.patch
deleted file mode 100644
index 760dd9dbb013..000000000000
--- a/app-arch/cabextract/files/cabextract-1.9-fix-bigendian.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://github.com/kyz/libmspack/commit/c19e707936947b45cf05bc9aaee68517c6c2aca6
-
----
- configure.ac | 1 +
- 1 files changed, 1 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
---- a/configure.ac
-+++ b/configure.ac
-@@ -30,6 +30,7 @@ AC_CHECK_HEADERS([inttypes.h])
- # Checks for typedefs, structures, and compiler characteristics.
- AC_C_CONST
- AC_C_INLINE
-+AC_C_BIGENDIAN
- AC_TYPE_MODE_T
- AC_TYPE_OFF_T
- AC_TYPE_SIZE_T
diff --git a/app-arch/cabextract/files/cabextract-1.9-remove-spurious-test_files.patch b/app-arch/cabextract/files/cabextract-1.9-remove-spurious-test_files.patch
deleted file mode 100644
index d80b8704834c..000000000000
--- a/app-arch/cabextract/files/cabextract-1.9-remove-spurious-test_files.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://github.com/kyz/libmspack/commit/2f78851e3927b05931574b380ca6dccaf91e3807
-
----
- test/bugs.test | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/test/bugs.test
-+++ b/test/bugs.test
-@@ -2,7 +2,7 @@
- # test that known crash bugs remain fixed
- . test/testcase
-
--$cabextract -t $test_files/bugs/*.cab
-+$cabextract -t bugs/*.cab
-
- # fail if exit code indicates a crash (SIGBUS, SIGSEGV, etc.)
- test $? -le 1
diff --git a/app-arch/cabextract/metadata.xml b/app-arch/cabextract/metadata.xml
index 181a78d0cb21..0789fd696930 100644
--- a/app-arch/cabextract/metadata.xml
+++ b/app-arch/cabextract/metadata.xml
@@ -1,14 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>fonts@gentoo.org</email>
- <name>Fonts</name>
- </maintainer>
- <use>
- <flag name="extras">Install experimental extra tools: wince_info and
- wince_rename for examining and processing Windows CE installation cabinet
- header files; cabinfo for examining the structure of a cab file.
- </flag>
- </use>
+ <maintainer type="project">
+ <email>fonts@gentoo.org</email>
+ <name>Fonts</name>
+ </maintainer>
+ <use>
+ <flag name="extras">Install experimental extra tools: wince_info and
+ wince_rename for examining and processing Windows CE installation cabinet
+ header files; cabinfo for examining the structure of a cab file.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="github">kyz/libmspack</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/cfv/Manifest b/app-arch/cfv/Manifest
new file mode 100644
index 000000000000..db038dfc39a1
--- /dev/null
+++ b/app-arch/cfv/Manifest
@@ -0,0 +1 @@
+DIST cfv-3.0.0.gh.tar.gz 91600 BLAKE2B 5a0d53a2b75973967ef976ce55d5262f71af97a8d7c64e8ea94ed9d66fd12778e10321e82bdbc4b8037df3f1a9c9c817694a7cd5e60615fc903127df9057b04f SHA512 9a44bf20f0a4f48a93631353d0b0ab79ea15d19f1da5492296dd4bd4e6208d3f0d71e957165e31d07b5faa7fc75122f0ae5ddbd8d54b9c6b633c43695b362640
diff --git a/app-arch/cfv/cfv-3.0.0.ebuild b/app-arch/cfv/cfv-3.0.0.ebuild
new file mode 100644
index 000000000000..02f12d0e670c
--- /dev/null
+++ b/app-arch/cfv/cfv-3.0.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+# Tests fail with pypy3 as of PyPy 7.3.9 / Python 3.9.12
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Command-line File Verify - versatile file checksum creator and verifier"
+HOMEPAGE="https://github.com/cfv-project/cfv/"
+# Tests aren't included in PyPI tarballs
+SRC_URI="https://github.com/cfv-project/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ app-arch/cksfv
+ )
+"
+
+python_prepare_all() {
+ # Remove upstream's attempt to install the man page
+ sed -i '/\sdata_files=/d' setup.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # In order to run integration tests in addition to unit tests, we can't
+ # just rely on pytest here, we need to use upstream's runner.
+ "${EPYTHON}" "test/test.py" || die "Tests failed with ${EPYTHON}"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ doman cfv.1
+}
+
+pkg_postinst() {
+ optfeature "the dimension column of JPEG Sheriff crc files" dev-python/pillow
+}
diff --git a/app-arch/cfv/metadata.xml b/app-arch/cfv/metadata.xml
new file mode 100644
index 000000000000..373591c9c7a7
--- /dev/null
+++ b/app-arch/cfv/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sbraz@gentoo.org</email>
+ <name>Louis Sautier</name>
+ </maintainer>
+ <longdescription>
+ cfv is a utility to test and create a wide range of checksum
+ verification files. It currently supports testing and creating sfv,
+ sfvmd5, csv, csv2, csv4, md5, bsdmd5, sha1, sha224, sha256, sha384,
+ sha512, torrent and crc files. Test-only support is available for par,
+ par2.
+ </longdescription>
+ <upstream>
+ <remote-id type="pypi">cfv</remote-id>
+ <remote-id type="github">cfv-project/cfv</remote-id>
+ <bugs-to>https://github.com/cfv-project/cfv/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/cksfv/Manifest b/app-arch/cksfv/Manifest
index 516489a30ace..a38f0d99ed88 100644
--- a/app-arch/cksfv/Manifest
+++ b/app-arch/cksfv/Manifest
@@ -1 +1 @@
-DIST cksfv-1.3.14.tar.bz2 26114 BLAKE2B 696ae3499bc2b1c566a40da202b70d30777ee07a7923ac567345872098626c82820a9bb75b711915e2274a3e0f1d7804ba58f8ce41dcca375391d778ba135a02 SHA512 016c2f61632980678957fe4b5bc9ecb30360efd548ff09bfbb7a31cc6fc36f6fe7936d3d819fe468a6208c71f8b625662aa3ae0abd668435d7273e149d7e4519
+DIST cksfv-1.3.15.tar.bz2 27282 BLAKE2B c1df7bac982815915327753d8f6b888cc53395a0066bc5b34fb310d540c50c3006be2b9f31ebfac269d961126b0046a5b63fbbbe9c05c265953b2d2a94602a7a SHA512 a0b5286e0dce610e8b482a55cf8af38f8f8256e175435b6f2518c6566ea844c3cf2981f96c7600c7eb9b23b35cf19f1b55f540ba0f73f1267e4593e744858d43
diff --git a/app-arch/cksfv/cksfv-1.3.14-r1.ebuild b/app-arch/cksfv/cksfv-1.3.15.ebuild
index eb3bd336958d..70423f58ab94 100644
--- a/app-arch/cksfv/cksfv-1.3.14-r1.ebuild
+++ b/app-arch/cksfv/cksfv-1.3.15.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,12 +13,15 @@ LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ~sparc x86 ~amd64-linux ~x86-linux"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.15-destdir.patch
+)
+
src_configure() {
# note: not an autoconf configure script
./configure \
--compiler="$(tc-getCC)" \
--prefix="${EPREFIX}"/usr \
- --package-prefix="${D}" \
--bindir="${EPREFIX}"/usr/bin \
--mandir="${EPREFIX}"/usr/share/man || die
}
diff --git a/app-arch/cksfv/files/cksfv-1.3.15-destdir.patch b/app-arch/cksfv/files/cksfv-1.3.15-destdir.patch
new file mode 100644
index 000000000000..c9ae19b442d3
--- /dev/null
+++ b/app-arch/cksfv/files/cksfv-1.3.15-destdir.patch
@@ -0,0 +1,18 @@
+The build system doesn't know about DESTDIR which is a problem for us
+when we want to have isolation in our phases (src_configure shouldn't
+need to know ${ED}).
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -23,9 +23,9 @@ all:
+ cd src && $(MAKE)
+
+ install: all
+- mkdir -p "$(BINDIR)" "$(MANDIR)/man1/"
+- install src/cksfv "$(BINDIR)"
+- install -m 644 cksfv.1 "$(MANDIR)/man1/"
++ mkdir -p "$(DESTDIR)$(BINDIR)" "$(DESTDIR)$(MANDIR)/man1/"
++ install src/cksfv "$(DESTDIR)$(BINDIR)"
++ install -m 644 cksfv.1 "$(DESTDIR)$(MANDIR)/man1/"
+
+ clean:
+ rm -f *.o *~ *.core core
diff --git a/app-arch/cksfv/metadata.xml b/app-arch/cksfv/metadata.xml
index 6f49eba8f496..4ef29e5f0a2c 100644
--- a/app-arch/cksfv/metadata.xml
+++ b/app-arch/cksfv/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="gitlab">heikkiorsila/cksfv</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/clzip/Manifest b/app-arch/clzip/Manifest
new file mode 100644
index 000000000000..b2f74c5e9c73
--- /dev/null
+++ b/app-arch/clzip/Manifest
@@ -0,0 +1,2 @@
+DIST clzip-1.14.tar.gz 125412 BLAKE2B e28dc890ef233871f8b38e1d4c306032131b714a560e7ebfe756ce3bddb84c9fd0ac3a04e789884951b74760e248503ec2f3555eccf568244c3b3efeae80cb4a SHA512 54047979cc4477e8edba648074ff64b512627aba4da693052052e96faf2c41386db986d73a477aab8ebaef974d753e6b42fa53a0fd293b047efcf60b1fc7483d
+DIST clzip-1.14.tar.gz.sig 72 BLAKE2B f397d586ae3c052bdda80229993746c085196bd01e7e4eddd843ed053b8449109c774199c74c7cd97f1a19623d57965188cf3d3a046e581d9cfbae58f16723c8 SHA512 31e23c3deb63c2c09b71bc9b11d12337a629bed097905d37560f3b8cbcb4730355dc8effa050ec95c1e7e0e00eb4651fa891d9fabdf58df66563e38b3f8b6380
diff --git a/app-arch/clzip/clzip-1.14.ebuild b/app-arch/clzip/clzip-1.14.ebuild
new file mode 100644
index 000000000000..156f044902ad
--- /dev/null
+++ b/app-arch/clzip/clzip-1.14.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
+
+DESCRIPTION="C language version of lzip"
+HOMEPAGE="https://www.nongnu.org/lzip/clzip.html"
+SRC_URI="https://download.savannah.gnu.org/releases/lzip/clzip/${P/_/-}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz.sig )"
+S="${WORKDIR}/${P/_/-}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
+
+src_configure() {
+ # not autotools-based
+ local myconf=(
+ --prefix="${EPREFIX}"/usr
+ CC="$(tc-getCC)"
+ CPPFLAGS="${CPPFLAGS}"
+ CFLAGS="${CFLAGS}"
+ LDFLAGS="${LDFLAGS}"
+ )
+
+ ./configure "${myconf[@]}" || die
+}
diff --git a/app-arch/clzip/metadata.xml b/app-arch/clzip/metadata.xml
new file mode 100644
index 000000000000..076793e3f54b
--- /dev/null
+++ b/app-arch/clzip/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-arch/cpio/Manifest b/app-arch/cpio/Manifest
index e3d8f9e77f92..fd953b128e70 100644
--- a/app-arch/cpio/Manifest
+++ b/app-arch/cpio/Manifest
@@ -1,2 +1,4 @@
-DIST cpio-2.12.tar.bz2 1258605 BLAKE2B 4b6d42a1d8aaeaa980cab5894b2e264451e96a108f2c3aa89d3e6fde0bff338e026ee233ebd7c8cf41f3c926d42d38b866778244db774055736ca8792889e160 SHA512 0cd4da5f2fbca179ab4e666a5f878414c086a5f98bce4c76273f21d9b2a6fe422d901b5d453826c5f81bbe363aa015047a1e99779ad1a451c8feca6205c63120
+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
+DIST cpio-2.15.tar.bz2 1651320 BLAKE2B ca2aae6a00239be7aff5558a2e62b4fb4b43c2ed7f4d7a23699c958ae10b348c4ebf39233f0dd0242cba895fdac4d0ff3b4e56fefa0b1afe3db41eb6916e0b23 SHA512 e3c3d0344d13d540887198ee5d6209a9254ed34b87c3b3cabe6dc3ce22ef94d3f380bb60d3395eee44e4b0ec8460b957032c6251f101b4a9fbc5951a701aadff
diff --git a/app-arch/cpio/cpio-2.12-r1.ebuild b/app-arch/cpio/cpio-2.12-r1.ebuild
deleted file mode 100644
index 08fcea1fbad4..000000000000
--- a/app-arch/cpio/cpio-2.12-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils
-
-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 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch #275295
- epatch "${FILESDIR}"/${PN}-2.12-name-overflow.patch #572428
- epatch "${FILESDIR}"/${PN}-2.12-gcc-10.patch #705900
-}
-
-src_configure() {
- econf \
- $(use_enable nls) \
- --bindir="${EPREFIX}"/bin \
- --with-rmt="${EPREFIX}"/usr/sbin/rmt
-}
diff --git a/app-arch/cpio/cpio-2.13-r5.ebuild b/app-arch/cpio/cpio-2.13-r5.ebuild
new file mode 100644
index 000000000000..6eb8fef26047
--- /dev/null
+++ b/app-arch/cpio/cpio-2.13-r5.ebuild
@@ -0,0 +1,55 @@
+# 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"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-CVE-2021-38185.patch.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="nls"
+
+PDEPEND="
+ app-alternatives/cpio
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch #275295
+ "${WORKDIR}"/${P}-CVE-2021-38185.patch
+ "${FILESDIR}"/${PN}-2.13-sysmacros-glibc-2.26.patch
+ "${FILESDIR}"/${PN}-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch
+ "${FILESDIR}"/${PN}-2.13-wincompatible-function-pointer-types.patch
+)
+
+src_prepare() {
+ default
+
+ # Drop after 2.13 (only here for CVE patch)
+ 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/cpio-2.13.ebuild b/app-arch/cpio/cpio-2.13.ebuild
deleted file mode 100644
index 1c53d1e5fb82..000000000000
--- a/app-arch/cpio/cpio-2.13.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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 ~m68k ~mips ~ppc ~ppc64 ~s390 sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch #275295
- "${FILESDIR}"/${PN}-2.12-gcc-10.patch #705900
-)
-
-src_configure() {
- local myeconfargs=(
- $(use_enable nls)
- --bindir="${EPREFIX}"/bin
- --with-rmt="${EPREFIX}"/usr/sbin/rmt
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/app-arch/cpio/cpio-2.14.ebuild b/app-arch/cpio/cpio-2.14.ebuild
new file mode 100644
index 000000000000..3e229fd5d932
--- /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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-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/cpio-2.15.ebuild b/app-arch/cpio/cpio-2.15.ebuild
new file mode 100644
index 000000000000..fe1d24ebc861
--- /dev/null
+++ b/app-arch/cpio/cpio-2.15.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing
+
+DESCRIPTION="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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="nls"
+
+PDEPEND="
+ app-alternatives/cpio
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch # bug #275295
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ unreachable
+ MIN
+ alignof
+ static_assert
+)
+
+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[@]}"
+}
+
+src_test() {
+ emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)"
+}
+
+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.12-gcc-10.patch b/app-arch/cpio/files/cpio-2.12-gcc-10.patch
deleted file mode 100644
index 9c7d7edd88f5..000000000000
--- a/app-arch/cpio/files/cpio-2.12-gcc-10.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 641d3f489cf6238bb916368d4ba0d9325a235afb Mon Sep 17 00:00:00 2001
-From: Sergey Poznyakoff <gray@gnu.org>
-Date: Mon, 20 Jan 2020 07:45:39 +0200
-Subject: Minor fix * src/global.c: Remove superfluous declaration of
- program_name
-
----
- src/global.c | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/src/global.c b/src/global.c
-index fb3abe9..acf92bc 100644
---- a/src/global.c
-+++ b/src/global.c
-@@ -184,9 +184,6 @@ unsigned int warn_option = 0;
- /* Extract to standard output? */
- bool to_stdout_option = false;
-
--/* The name this program was run with. */
--char *program_name;
--
- /* A pointer to either lstat or stat, depending on whether
- dereferencing of symlinks is done for input files. */
- int (*xstat) ();
---
-cgit v1.2.1
-
diff --git a/app-arch/cpio/files/cpio-2.12-name-overflow.patch b/app-arch/cpio/files/cpio-2.12-name-overflow.patch
deleted file mode 100644
index f85246884c39..000000000000
--- a/app-arch/cpio/files/cpio-2.12-name-overflow.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-https://bugs.gentoo.org/572428
-https://lists.gnu.org/archive/html/bug-cpio/2016-01/msg00002.html
-http://seclists.org/oss-sec/2016/q1/136
-
---- a/src/copyin.c
-+++ b/src/copyin.c
-@@ -1385,6 +1385,8 @@
- break;
- }
-
-+ if (file_hdr.c_namesize <= 1)
-+ file_hdr.c_name = xrealloc (file_hdr.c_name, 2);
- cpio_safer_name_suffix (file_hdr.c_name, false, !no_abs_paths_flag,
- false);
-
diff --git a/app-arch/cpio/files/cpio-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch b/app-arch/cpio/files/cpio-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch
new file mode 100644
index 000000000000..326489a54943
--- /dev/null
+++ b/app-arch/cpio/files/cpio-2.13-fix-no-absolute-filenames-revert-CVE-2015-1197-handling.patch
@@ -0,0 +1,47 @@
+https://sources.debian.org/patches/cpio/2.13%2Bdfsg-7.1/revert-CVE-2015-1197-handling.patch/
+https://bugs.gentoo.org/700020
+
+From: Chris Lamb <lamby@debian.org>
+Date: Sat, 1 Feb 2020 13:36:37 +0100
+Subject: Fix a regression in handling of CVE-2015-1197 &
+ --no-absolute-filenames.
+
+See:
+
+ * https://bugs.debian.org/946267
+ * https://bugs.debian.org/946469
+
+This reverts (most of): https://git.savannah.gnu.org/cgit/cpio.git/diff/?id=45b0ee2b407913c533f7ded8d6f8cbeec16ff6ca&id2=3177d660a4c62a6acb538b0f7c54ba423698889a
+--- a/src/copyin.c
++++ b/src/copyin.c
+@@ -646,8 +646,6 @@ copyin_link (struct cpio_file_stat *file_hdr, int in_file_des)
+ link_name = xstrdup (file_hdr->c_tar_linkname);
+ }
+
+- cpio_safer_name_suffix (link_name, true, !no_abs_paths_flag, false);
+-
+ res = UMASKED_SYMLINK (link_name, file_hdr->c_name,
+ file_hdr->c_mode);
+ if (res < 0 && create_dir_flag)
+--- a/tests/testsuite
++++ b/tests/testsuite
+@@ -2787,7 +2787,7 @@ read at_status <"$at_status_file"
+ #AT_START_14
+ at_fn_group_banner 14 'CVE-2015-1197.at:17' \
+ "CVE-2015-1197 (--no-absolute-filenames for symlinks)" ""
+-at_xfail=no
++at_xfail=yes
+ (
+ $as_echo "14. $at_setup_line: testing $at_desc ..."
+ $at_traceon
+
+--- a/tests/CVE-2015-1197.at
++++ b/tests/CVE-2015-1197.at
+@@ -15,6 +15,7 @@
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ AT_SETUP([CVE-2015-1197 (--no-absolute-filenames for symlinks)])
++AT_XFAIL_IF([true])
+ AT_CHECK([
+ tempdir=$(pwd)/tmp
+ mkdir $tempdir
diff --git a/app-arch/cpio/files/cpio-2.13-sysmacros-glibc-2.26.patch b/app-arch/cpio/files/cpio-2.13-sysmacros-glibc-2.26.patch
new file mode 100644
index 000000000000..90e7bc77bd9b
--- /dev/null
+++ b/app-arch/cpio/files/cpio-2.13-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
+@@ -39,14 +39,11 @@ AC_C_PROTOTYPES
+ AC_SYS_LARGEFILE
+
+ AC_TYPE_SIGNAL
+-AC_HEADER_MAJOR
+ AC_C_CONST
+ AC_TYPE_UID_T
+ AC_CHECK_TYPE(gid_t, int)
+ AC_HEADER_STDC
+ AC_HEADER_DIRENT
+-AC_COMPILE_CHECK_RETTYPE([major], [0])
+-AC_COMPILE_CHECK_RETTYPE([minor], [0])
+
+ AC_CHECK_FUNCS([fchmod fchown])
+ # This is needed for mingw build
+@@ -67,7 +64,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>
diff --git a/app-arch/cpio/files/cpio-2.13-wincompatible-function-pointer-types.patch b/app-arch/cpio/files/cpio-2.13-wincompatible-function-pointer-types.patch
new file mode 100644
index 000000000000..4f2dc3153656
--- /dev/null
+++ b/app-arch/cpio/files/cpio-2.13-wincompatible-function-pointer-types.patch
@@ -0,0 +1,23 @@
+https://bugs.gentoo.org/880373
+https://savannah.gnu.org/bugs/index.php?63349
+https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=0cc39712803ade7b2d4b89c36b143dad72404063
+
+From 0cc39712803ade7b2d4b89c36b143dad72404063 Mon Sep 17 00:00:00 2001
+From: Bruno Haible <bruno@clisp.org>
+Date: Sun, 18 Oct 2020 14:37:13 +0200
+Subject: obstack: Fix a clang warning.
+
+* lib/obstack.c (print_and_abort): Mark as __attribute_noreturn__.
+--- a/gnu/obstack.c
++++ b/gnu/obstack.c
+@@ -326,7 +326,7 @@ int obstack_exit_failure = EXIT_FAILURE;
+ # include <libio/iolibio.h>
+ # endif
+
+-static _Noreturn void
++static __attribute_noreturn__ void
+ print_and_abort (void)
+ {
+ /* Don't change any of these strings. Yes, it would be possible to add
+--
+cgit v1.1
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>
diff --git a/app-arch/cpio/metadata.xml b/app-arch/cpio/metadata.xml
index 867891812d33..3f89d2d29322 100644
--- a/app-arch/cpio/metadata.xml
+++ b/app-arch/cpio/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/createrepo_c/Manifest b/app-arch/createrepo_c/Manifest
new file mode 100644
index 000000000000..cdb51ffe2cf8
--- /dev/null
+++ b/app-arch/createrepo_c/Manifest
@@ -0,0 +1,2 @@
+DIST createrepo_c-1.0.4.tar.gz 630635 BLAKE2B d1ed426642471ae9a92a342553a0c841de676c23056edae1f4f7360e2334e6f809296296009a7bd5818f0aa50406ff773a2b3b9feb88a7e2b838e51efae82c2e SHA512 1871697a95e75163ea79e509a3d3ae15a4f7c873699962419b5011dd9b960d9764a6f3782c18b094e1bd0d6c90330d8225589a0362fe199440844c5359dbee0c
+DIST createrepo_c-1.1.0.tar.gz 637506 BLAKE2B 9e8ccc9da83f071b2426f3be08a363281f30356d5811648eeaa322d2761d2152310af6ca87a744e9024ac54e46368496d0b9b4fb2b6702e99ab965bafa0203cc SHA512 9e09a2a1dcc0b285975037b70b961f66f08f43b84b384c87b607aaa76462956e2dee305fd2ac620956e4bf365aa3fcf3874e1145054c96c0e41656957835d97e
diff --git a/app-arch/createrepo_c/createrepo_c-1.0.4.ebuild b/app-arch/createrepo_c/createrepo_c-1.0.4.ebuild
new file mode 100644
index 000000000000..afc050773235
--- /dev/null
+++ b/app-arch/createrepo_c/createrepo_c-1.0.4.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C implementation of createrepo"
+HOMEPAGE="https://github.com/rpm-software-management/createrepo_c"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rpm-software-management/createrepo_c.git"
+else
+ SRC_URI="https://github.com/rpm-software-management/createrepo_c/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="legacy test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/drpm
+ app-arch/rpm
+ app-arch/xz-utils
+ app-arch/zchunk
+ app-arch/zstd:=
+ >=dev-db/sqlite-3.6.18:3
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ net-misc/curl
+ sys-apps/file
+ sys-libs/libmodulemd
+ sys-libs/zlib:=
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_DRPM=ON
+ # As best I can tell, this enables distribution as a wheel. No need for this on gentoo!
+ -DENABLE_PYTHON=OFF
+ # Upstream enables some 'Legacy' stuff by default, let's put that behind a USE flag
+ -DENABLE_LEGACY_WEAKDEPS=$(usex legacy ON OFF)
+ -DWITH_LEGACY_HASHES=$(usex legacy ON OFF)
+ -DWITH_LIBMODULEMD=ON
+ -DWITH_ZCHUNK=ON
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ # Tests have a magic target!
+ use test && cmake_src_compile tests
+}
+
+src_test() {
+ "${S}"_build/tests/run_tests.sh || die "Failed to run C library tests"
+}
diff --git a/app-arch/createrepo_c/createrepo_c-1.1.0.ebuild b/app-arch/createrepo_c/createrepo_c-1.1.0.ebuild
new file mode 100644
index 000000000000..afc050773235
--- /dev/null
+++ b/app-arch/createrepo_c/createrepo_c-1.1.0.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C implementation of createrepo"
+HOMEPAGE="https://github.com/rpm-software-management/createrepo_c"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rpm-software-management/createrepo_c.git"
+else
+ SRC_URI="https://github.com/rpm-software-management/createrepo_c/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="legacy test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/drpm
+ app-arch/rpm
+ app-arch/xz-utils
+ app-arch/zchunk
+ app-arch/zstd:=
+ >=dev-db/sqlite-3.6.18:3
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ net-misc/curl
+ sys-apps/file
+ sys-libs/libmodulemd
+ sys-libs/zlib:=
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_DRPM=ON
+ # As best I can tell, this enables distribution as a wheel. No need for this on gentoo!
+ -DENABLE_PYTHON=OFF
+ # Upstream enables some 'Legacy' stuff by default, let's put that behind a USE flag
+ -DENABLE_LEGACY_WEAKDEPS=$(usex legacy ON OFF)
+ -DWITH_LEGACY_HASHES=$(usex legacy ON OFF)
+ -DWITH_LIBMODULEMD=ON
+ -DWITH_ZCHUNK=ON
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ # Tests have a magic target!
+ use test && cmake_src_compile tests
+}
+
+src_test() {
+ "${S}"_build/tests/run_tests.sh || die "Failed to run C library tests"
+}
diff --git a/app-arch/createrepo_c/createrepo_c-9999.ebuild b/app-arch/createrepo_c/createrepo_c-9999.ebuild
new file mode 100644
index 000000000000..afc050773235
--- /dev/null
+++ b/app-arch/createrepo_c/createrepo_c-9999.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C implementation of createrepo"
+HOMEPAGE="https://github.com/rpm-software-management/createrepo_c"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rpm-software-management/createrepo_c.git"
+else
+ SRC_URI="https://github.com/rpm-software-management/createrepo_c/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="legacy test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/drpm
+ app-arch/rpm
+ app-arch/xz-utils
+ app-arch/zchunk
+ app-arch/zstd:=
+ >=dev-db/sqlite-3.6.18:3
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ net-misc/curl
+ sys-apps/file
+ sys-libs/libmodulemd
+ sys-libs/zlib:=
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_DRPM=ON
+ # As best I can tell, this enables distribution as a wheel. No need for this on gentoo!
+ -DENABLE_PYTHON=OFF
+ # Upstream enables some 'Legacy' stuff by default, let's put that behind a USE flag
+ -DENABLE_LEGACY_WEAKDEPS=$(usex legacy ON OFF)
+ -DWITH_LEGACY_HASHES=$(usex legacy ON OFF)
+ -DWITH_LIBMODULEMD=ON
+ -DWITH_ZCHUNK=ON
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ # Tests have a magic target!
+ use test && cmake_src_compile tests
+}
+
+src_test() {
+ "${S}"_build/tests/run_tests.sh || die "Failed to run C library tests"
+}
diff --git a/app-arch/createrepo_c/metadata.xml b/app-arch/createrepo_c/metadata.xml
new file mode 100644
index 000000000000..d68ba2954545
--- /dev/null
+++ b/app-arch/createrepo_c/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>jaco@uls.co.za</email>
+ <name>Jaco Kroon</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="legacy">Build with support for legacy weakdeps and hashes (not recommended!)</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">rpm-software-management/createrepo_c</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/csnappy/Manifest b/app-arch/csnappy/Manifest
new file mode 100644
index 000000000000..c2e159458d59
--- /dev/null
+++ b/app-arch/csnappy/Manifest
@@ -0,0 +1 @@
+DIST csnappy-0_pre20220804.tar.gz 594988 BLAKE2B ce82ef7945ba3110d0d2878d4fcd3d48631f260dad94c1b40f7811de17e60568b2934d33e43966f559b0d840f5eed659bde84eab46954679754e9de5306508a1 SHA512 53f602c58a3a9932ac580412d90f3aa7f820cb9bbc9e2dec240dd28de55210fd17ac61a5f8e4a2cebffe2914837c7cabba1061536abd96e35da57c799e8ee7b7
diff --git a/app-arch/csnappy/csnappy-0_pre20220804.ebuild b/app-arch/csnappy/csnappy-0_pre20220804.ebuild
new file mode 100644
index 000000000000..4e2334f7054e
--- /dev/null
+++ b/app-arch/csnappy/csnappy-0_pre20220804.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_COMMIT="6c10c305e8dde193546e6b33cf8a785d5dc123e2"
+
+DESCRIPTION="Google's snappy compression library for the Linux Kernel"
+HOMEPAGE="https://github.com/zeevt/csnappy"
+SRC_URI="https://github.com/zeevt/csnappy/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${MY_COMMIT}
+
+# https://github.com/zeevt/csnappy/issues/21
+LICENSE="BSD"
+# 0/${PV} b/c of the SONAME situation (see below).
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ia64 ppc ppc64 sparc x86"
+
+# https://github.com/zeevt/csnappy/issues/33
+# No SONAME yet.
+QA_SONAME="usr/lib.*/libcsnappy.so"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0_pre20220804-fix-tests.patch
+)
+
+src_compile() {
+ emake CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
+ libcsnappy.so
+}
+
+src_test() {
+ # We don't want to run the Valgrind tests as it's fragile in sandbox
+ # and makes life harder for some arches.
+ emake CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
+ check_unaligned_uint64 \
+ cl_test
+}
+
+src_install() {
+ emake DESTDIR="${ED}" LIBDIR="/usr/$(get_libdir)" install
+}
diff --git a/app-arch/csnappy/files/csnappy-0_pre20220804-fix-tests.patch b/app-arch/csnappy/files/csnappy-0_pre20220804-fix-tests.patch
new file mode 100644
index 000000000000..e4d11f7d9021
--- /dev/null
+++ b/app-arch/csnappy/files/csnappy-0_pre20220804-fix-tests.patch
@@ -0,0 +1,41 @@
+https://github.com/zeevt/csnappy/pull/40
+
+From 60ac30054eae4bbc50f90f8228ac53d014400619 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Thu, 16 Dec 2021 14:24:26 +0100
+Subject: [PATCH] Fix parallel tests by only testing the current optimization
+ level
+
+https://github.com/zeevt/csnappy/issues/39
+--- a/Makefile
++++ b/Makefile
+@@ -34,25 +34,14 @@ check_leaks: cl_tester
+ LD_LIBRARY_PATH=. valgrind --leak-check=full --show-reachable=yes ./cl_tester -c <testdata/urls.10K >/dev/null
+ LD_LIBRARY_PATH=. valgrind --leak-check=full --show-reachable=yes ./cl_tester -S d
+
+-check_unaligned_uint64:
++check_unaligned_uint64: cl_tester
+ gzip -dc <testdata/unaligned_uint64_test.snappy.gz >testdata/unaligned_uint64_test.snappy
+ gzip -dc <testdata/unaligned_uint64_test.bin.gz >testdata/unaligned_uint64_test.bin
+- EXTRA_TEST_CFLAGS="-O0" make check_unaligned_uint64_extra_cflags
+- EXTRA_TEST_CFLAGS="-O1" make check_unaligned_uint64_extra_cflags
+- EXTRA_TEST_CFLAGS="-O2" make check_unaligned_uint64_extra_cflags
+- EXTRA_TEST_CFLAGS="-O3" make check_unaligned_uint64_extra_cflags
+- EXTRA_TEST_CFLAGS="-O2 -march=native" make check_unaligned_uint64_extra_cflags
+- EXTRA_TEST_CFLAGS="-O3 -march=native" make check_unaligned_uint64_extra_cflags
+- rm -f testdata/unaligned_uint64_test.snappy testdata/unaligned_uint64_test.bin
+-
+-check_unaligned_uint64_extra_cflags:
+- make clean
+- make cl_tester
+ rm -f tmp
+ LD_LIBRARY_PATH=. ./cl_tester -d testdata/unaligned_uint64_test.snappy tmp
+- diff testdata/unaligned_uint64_test.bin tmp >/dev/null && echo "${EXTRA_TEST_CFLAGS} ok"
+- make clean
++ diff testdata/unaligned_uint64_test.bin tmp >/dev/null && echo "Unaligned test is ok"
+ rm -f tmp
++ rm -f testdata/unaligned_uint64_test.snappy testdata/unaligned_uint64_test.bin
+
+ libcsnappy.so: csnappy_compress.c csnappy_decompress.c csnappy_internal.h csnappy_internal_userspace.h
+ $(CC) $(CFLAGS) $(EXTRA_TEST_CFLAGS) -fPIC -DPIC -c -o csnappy_compress.o csnappy_compress.c
+
diff --git a/app-arch/csnappy/metadata.xml b/app-arch/csnappy/metadata.xml
new file mode 100644
index 000000000000..d377f25e89c3
--- /dev/null
+++ b/app-arch/csnappy/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zeevt/csnappy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/deb2targz/deb2targz-1-r3.ebuild b/app-arch/deb2targz/deb2targz-1-r3.ebuild
index 7d7e092e9d90..a00c1f32268b 100644
--- a/app-arch/deb2targz/deb2targz-1-r3.ebuild
+++ b/app-arch/deb2targz/deb2targz-1-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -9,7 +9,7 @@ SRC_URI="http://www.miketaylor.org.uk/tech/deb/${PN}"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
RDEPEND="dev-lang/perl"
diff --git a/app-arch/deb2targz/metadata.xml b/app-arch/deb2targz/metadata.xml
index c10b09fa8f36..85e4ed814fa2 100644
--- a/app-arch/deb2targz/metadata.xml
+++ b/app-arch/deb2targz/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person"><email>chainsaw@gentoo.org</email></maintainer>
+<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/app-arch/dpkg/Manifest b/app-arch/dpkg/Manifest
index 1a74fef658d4..9b7b7bf109c1 100644
--- a/app-arch/dpkg/Manifest
+++ b/app-arch/dpkg/Manifest
@@ -1,7 +1,5 @@
-DIST dpkg_1.19.0.5.tar.xz 4557428 BLAKE2B 99c31705bfad1cfa024366c788264f4e747a7143f87c581730797975303c1054003e41fd65ecf80df1dc053ba87c0e8449ec574ddcb158228b41ae57a23db18f SHA512 60d7198ffe6ea759c30ad82143b3107d41ce59224b853cb5a7beb79af0de6ba6a69414c365e6b3555a0a9c60e3cf9b543a3a448d80a734be38ccecb77ae963a9
-DIST dpkg_1.19.6.tar.xz 4802832 BLAKE2B e35a805942e2b26a90cec80493a14697461cfb1c1352fa7fadce7171c8cca88785ff2590d34b8f0bd4763642cb21ee7bf449df86b01eef223554daba4604d1b1 SHA512 71981079835ea4bd5c4a381ca8702cf489c788034e29c129899eb288cfaf4ec55eb58c0aea13145dcde99f15a47d2de71fba7b5e7eb8e6b1b1d6f016de8a919d
-DIST dpkg_1.19.7.tar.xz 4716724 BLAKE2B d65200fc5da986db8b66e31e1ea45b9757b87e0fa15f7fc0579f1c1c63de78829c1a10bbc72726fe3b75bf6c11cbe1fe3c9b62f8374c796f990835f9f0e79dd2 SHA512 9ca441dc265baf5359c71617aef1c57504a7097c26ea57108b88dadc511bfa9918fcc765d8c67cec9def9916c5df92d6cabe508446dbc7223a29b45260445e81
-DIST dpkg_1.20.0.tar.xz 4738556 BLAKE2B 2e58b3881abd46854416b05b0f9d2e972c3b545412a506b7bc18f1ebae5d82eac8bc2b55920d706fee0ca02239871c4f1c121e0c780aef31404e0408fbfa76e8 SHA512 5dd7961bde19ccc891fd5b77ca0085f7fc0308c20380e20b393397ff92e50d1c0f54e7b57676c05876021b44aa3788af8258c21ff2b672110ac92c7ce0b408f9
-DIST dpkg_1.20.2.tar.xz 4710300 BLAKE2B 0d10ee7f5cc863a6496fd8340cf0457f9af3d7d7a74821d561d0cc500a056d52664d1418453fa45dcb27d01ef59e55eb299ce1fcccd1ae7cb72b7c9e43b6b120 SHA512 523713e40d4f49332d96fdcabaeaf4d97f56b40bbbd51f18d17b5c79598249d04fdf96dfc5c8684408a666cf04f622cbd30da60efe68ba2cf1cd836cb2503e02
-DIST dpkg_1.20.3.tar.xz 4712980 BLAKE2B 92a1ff07dbb01f8942452eee269eb45d4c164272bf3ae5d0a62a6086c4321e7fc3dd5b164089d7f2e476258f8ec8c480c1614d4f43e3a7a7f1e632bf13191d2e SHA512 5893ae34efc6f9d54e47fc403487c79233501666968681b827bbabbf39b1401cb7064f8fe8797708ed32bb37345dbb78a1daac04c6dc7064f2811265f3a4e82c
-DIST dpkg_1.20.5.tar.xz 4715684 BLAKE2B 32b88cbd1ae75685b6c0b04b7c829372df323a9508ddd088076097e8bf2ac9050f1f4ec591fb7d40c4d4ea34207cef0edd430d0326cb73e1f7c8dd560db916be SHA512 6b3789c25c81022181b87a28ca9baa4a463a68940a871568c699a2a30e3b4ce705835ed6a171ac8c5902e377200b31cc0be1e03cbd7d35c4eaf92c7300d9227f
+DIST dpkg_1.20.12.tar.xz 5009108 BLAKE2B 47ecb53c331503c72081a4c472acd6e94a5b7fca2032358809aa8c546cfd6c1542c7cdfad2a5ceff0e40dc454a61974ec47233061b98cf99aabbb8e53621858c SHA512 ce20b1b00b972e6fa5d5cd6427003415a92a78742dc02a9055fee6f00db22b037c54560170e657d7b74c2ae542fff4b7eba46f642adf911dc2f3b90eebefc3ff
+DIST dpkg_1.20.9.tar.xz 4954428 BLAKE2B 4e04f7a90c8696971895081e18b220d9dee4bc5930428f131556ae71c673e61e18c363e279b566c2218da60a5aca421807c14cf518952502e707c7397769097b SHA512 904a4742f5f340dc65b2137364dce102a0b2eb42ccedb2a73f79c207362c699fbffaaf1379f1f6c8b8b0e490321af1d03c34b50ebe0c703f5ce8a7f75f17a839
+DIST dpkg_1.21.1.tar.xz 4986936 BLAKE2B f5b0f9fe7ac5fe7ba47191a9e467356e748418846ce0fc9f3c61d731e035eb096932848b15e6a85a15938d3bbd6fa069c786ab0e89c77119958fe632a91c309f SHA512 3f3f263e1300f3e4b55e84521847703dcfe465aa54829a69c31c174a2ad5e8b6a8a251da7c6020d31a38e9e6744113924a71e9579469e32289328e91a48db07f
+DIST dpkg_1.21.15.tar.xz 5350148 BLAKE2B f26611db365266ef9f43484c20d3150889238b34b156cac26f0ae8ae9572e7e4a9839e08a0073a25c886cd2891fc6d84afc97262ae6992267b47fa6e86c03a33 SHA512 eb31db63dd454048c3b7539b539720ed71239303ca679df92b934e971914d63dd771da09149054048e24dde1f5627ee24d43dbd8782ca1dc28c4a2bd3ed8f26a
+DIST dpkg_1.21.19.tar.xz 5360888 BLAKE2B 1a48781c136b47b74fb947a14ddfde8e3d8441f728215257d4c7b9618b5af79225be6312a31166181acbf5c05a408332d9faae2c7e16f7757a442e8d4e6a0afd SHA512 660297e678326350b70e6a49635642347413046ebab05bdc076505511e844f7de0261a12c6c07e586d661f6536b987e3c32c21b8cc95d7135538a5c2f6d1514e
diff --git a/app-arch/dpkg/dpkg-1.19.0.5.ebuild b/app-arch/dpkg/dpkg-1.19.0.5.ebuild
deleted file mode 100644
index 8e4d1b70a04d..000000000000
--- a/app-arch/dpkg/dpkg-1.19.0.5.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils multilib autotools ltprune 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 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="+bzip2 +lzma nls selinux test unicode +update-alternatives +zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-lang/perl-5.14.2:=
- bzip2? ( app-arch/bzip2 )
- lzma? ( app-arch/xz-utils )
- selinux? ( sys-libs/libselinux )
- zlib? ( >=sys-libs/zlib-1.1.4 )
-"
-DEPEND="
- ${RDEPEND}
- app-arch/xz-utils
- sys-devel/flex
- virtual/pkgconfig
- nls? (
- app-text/po4a
- >=sys-devel/gettext-0.18.2
- )
- test? (
- dev-perl/IO-String
- dev-perl/Test-Pod
- virtual/perl-Test-Harness
- )
-"
-
-DOCS=(
- ChangeLog
- THANKS
- TODO
-)
-PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
- "${FILESDIR}"/${PN}-1.18.12-flags.patch
- "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
-)
-
-src_prepare() {
- use nls && strip-linguas -i po
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- tc-export CC
- econf \
- $(use_enable nls) \
- $(use_enable unicode) \
- $(use_enable update-alternatives) \
- $(use_with bzip2 libbz2) \
- $(use_with lzma liblzma) \
- $(use_with selinux libselinux) \
- $(use_with zlib libz) \
- --disable-compiler-warnings \
- --disable-dselect \
- --disable-start-stop-daemon \
- --localstatedir="${EPREFIX}"/var \
- --without-libmd
-}
-
-src_compile() {
- emake AR=$(tc-getAR)
-}
-
-src_install() {
- default
-
- keepdir /usr/$(get_libdir)/db/methods/{mnt,floppy,disk}
- keepdir /usr/$(get_libdir)/db/{alternatives,info,methods,parts,updates}
-
- prune_libtool_files
-}
diff --git a/app-arch/dpkg/dpkg-1.19.6.ebuild b/app-arch/dpkg/dpkg-1.19.6.ebuild
deleted file mode 100644
index 8caed6c98c4f..000000000000
--- a/app-arch/dpkg/dpkg-1.19.6.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils multilib autotools ltprune 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 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-lang/perl-5.14.2:=
- bzip2? ( app-arch/bzip2 )
- libmd? ( app-crypt/libmd )
- 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
- sys-devel/flex
- virtual/pkgconfig
- nls? (
- app-text/po4a
- >=sys-devel/gettext-0.18.2
- )
- test? (
- dev-perl/IO-String
- dev-perl/Test-Pod
- virtual/perl-Test-Harness
- )
-"
-DOCS=(
- ChangeLog
- THANKS
- TODO
-)
-PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
- "${FILESDIR}"/${PN}-1.18.12-flags.patch
- "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
-)
-
-src_prepare() {
- use nls && strip-linguas -i po
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- tc-export CC
- econf \
- $(use_enable nls) \
- $(use_enable static-libs static) \
- $(use_enable unicode) \
- $(use_enable update-alternatives) \
- $(use_with bzip2 libbz2) \
- $(use_with libmd) \
- $(use_with lzma liblzma) \
- $(use_with selinux libselinux) \
- $(use_with zlib libz) \
- --disable-compiler-warnings \
- --disable-dselect \
- --disable-start-stop-daemon \
- --localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
- emake AR=$(tc-getAR)
-}
-
-src_install() {
- default
-
- keepdir \
- /usr/$(get_libdir)/db/methods/{mnt,floppy,disk} \
- /var/lib/dpkg/{alternatives,info,parts,updates}
-# /usr/$(get_libdir)/db/{alternatives,info,parts,updates} \
-
- prune_libtool_files
-}
diff --git a/app-arch/dpkg/dpkg-1.19.7.ebuild b/app-arch/dpkg/dpkg-1.19.7.ebuild
deleted file mode 100644
index 8caed6c98c4f..000000000000
--- a/app-arch/dpkg/dpkg-1.19.7.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils multilib autotools ltprune 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 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-lang/perl-5.14.2:=
- bzip2? ( app-arch/bzip2 )
- libmd? ( app-crypt/libmd )
- 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
- sys-devel/flex
- virtual/pkgconfig
- nls? (
- app-text/po4a
- >=sys-devel/gettext-0.18.2
- )
- test? (
- dev-perl/IO-String
- dev-perl/Test-Pod
- virtual/perl-Test-Harness
- )
-"
-DOCS=(
- ChangeLog
- THANKS
- TODO
-)
-PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
- "${FILESDIR}"/${PN}-1.18.12-flags.patch
- "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
-)
-
-src_prepare() {
- use nls && strip-linguas -i po
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- tc-export CC
- econf \
- $(use_enable nls) \
- $(use_enable static-libs static) \
- $(use_enable unicode) \
- $(use_enable update-alternatives) \
- $(use_with bzip2 libbz2) \
- $(use_with libmd) \
- $(use_with lzma liblzma) \
- $(use_with selinux libselinux) \
- $(use_with zlib libz) \
- --disable-compiler-warnings \
- --disable-dselect \
- --disable-start-stop-daemon \
- --localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
- emake AR=$(tc-getAR)
-}
-
-src_install() {
- default
-
- keepdir \
- /usr/$(get_libdir)/db/methods/{mnt,floppy,disk} \
- /var/lib/dpkg/{alternatives,info,parts,updates}
-# /usr/$(get_libdir)/db/{alternatives,info,parts,updates} \
-
- prune_libtool_files
-}
diff --git a/app-arch/dpkg/dpkg-1.20.0.ebuild b/app-arch/dpkg/dpkg-1.20.0.ebuild
deleted file mode 100644
index 07b8ea26604c..000000000000
--- a/app-arch/dpkg/dpkg-1.20.0.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils multilib 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 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-lang/perl-5.14.2:=
- bzip2? ( app-arch/bzip2 )
- libmd? ( app-crypt/libmd )
- 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
- sys-devel/flex
- virtual/pkgconfig
- nls? (
- app-text/po4a
- >=sys-devel/gettext-0.18.2
- )
- test? (
- dev-perl/IO-String
- dev-perl/Test-Pod
- virtual/perl-Test-Harness
- )
-"
-DOCS=(
- ChangeLog
- THANKS
- TODO
-)
-PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
- "${FILESDIR}"/${PN}-1.18.12-flags.patch
- "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
-)
-
-src_prepare() {
- use nls && strip-linguas -i po
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- tc-export CC
- econf \
- $(use_enable nls) \
- $(use_enable static-libs static) \
- $(use_enable unicode) \
- $(use_enable update-alternatives) \
- $(use_with bzip2 libbz2) \
- $(use_with libmd) \
- $(use_with lzma liblzma) \
- $(use_with selinux libselinux) \
- $(use_with zlib libz) \
- --disable-compiler-warnings \
- --disable-dselect \
- --disable-start-stop-daemon \
- --localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
- emake AR=$(tc-getAR)
-}
-
-src_install() {
- default
-
- keepdir \
- /usr/$(get_libdir)/db/methods/{mnt,floppy,disk} \
- /var/lib/dpkg/{alternatives,info,parts,updates}
-
- find "${ED}" -name '*.la' -delete || die
-}
diff --git a/app-arch/dpkg/dpkg-1.20.2.ebuild b/app-arch/dpkg/dpkg-1.20.12-r1.ebuild
index 732d0c6d35b0..f903010ac4a5 100644
--- a/app-arch/dpkg/dpkg-1.20.2.ebuild
+++ b/app-arch/dpkg/dpkg-1.20.12-r1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-inherit multilib autotools toolchain-funcs
+EAPI=8
+inherit autotools toolchain-funcs
DESCRIPTION="Package maintenance system for Debian"
HOMEPAGE="https://packages.qa.debian.org/dpkg"
@@ -10,12 +10,14 @@ SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="+bzip2 libmd +lzma nls selinux static-libs test +update-alternatives +zlib"
RESTRICT="!test? ( test )"
RDEPEND="
+ >=app-arch/tar-1.34-r1
>=dev-lang/perl-5.14.2:=
+ sys-libs/ncurses:=[unicode(+)]
bzip2? ( app-arch/bzip2 )
libmd? ( app-crypt/libmd )
lzma? ( app-arch/xz-utils )
@@ -34,41 +36,46 @@ DEPEND="
)
"
BDEPEND="
- sys-devel/flex
+ app-alternatives/lex
nls? (
app-text/po4a
>=sys-devel/gettext-0.18.2
)
"
+RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )"
+
DOCS=(
ChangeLog
THANKS
TODO
)
PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
"${FILESDIR}"/${PN}-1.18.12-flags.patch
"${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
+ "${FILESDIR}"/${PN}-1.20.5-dpkg_buildpackage-test.patch
+ "${FILESDIR}"/${PN}-1.20.12-m4-stdio.patch
)
src_prepare() {
default
+ sed -i -e 's|\<ar\>|${AR}|g' t-func/deb-format.at t-func/testsuite || die
+
eautoreconf
}
src_configure() {
- tc-export CC
+ tc-export AR CC
+
econf \
$(use_enable nls) \
- $(use_enable static-libs static) \
- $(use_enable unicode) \
$(use_enable update-alternatives) \
$(use_with bzip2 libbz2) \
$(use_with libmd) \
$(use_with lzma liblzma) \
$(use_with selinux libselinux) \
$(use_with zlib libz) \
+ --enable-unicode \
--disable-compiler-warnings \
--disable-dselect \
--disable-start-stop-daemon \
@@ -76,7 +83,7 @@ src_configure() {
}
src_compile() {
- emake AR=$(tc-getAR)
+ emake AR="$(tc-getAR)"
}
src_install() {
@@ -87,4 +94,8 @@ src_install() {
/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
}
diff --git a/app-arch/dpkg/dpkg-1.20.5.ebuild b/app-arch/dpkg/dpkg-1.20.9-r1.ebuild
index e72dc080fa4c..1b349d8f52c9 100644
--- a/app-arch/dpkg/dpkg-1.20.5.ebuild
+++ b/app-arch/dpkg/dpkg-1.20.9-r1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit multilib autotools toolchain-funcs
+inherit autotools toolchain-funcs
DESCRIPTION="Package maintenance system for Debian"
HOMEPAGE="https://packages.qa.debian.org/dpkg"
@@ -10,7 +10,7 @@ SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
RESTRICT="!test? ( test )"
@@ -34,7 +34,7 @@ DEPEND="
)
"
BDEPEND="
- sys-devel/flex
+ app-alternatives/lex
nls? (
app-text/po4a
>=sys-devel/gettext-0.18.2
@@ -49,6 +49,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-1.18.12-flags.patch
"${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
"${FILESDIR}"/${PN}-1.20.5-dpkg_buildpackage-test.patch
+ "${FILESDIR}"/${P}-CVE-2022-1664.patch
)
src_prepare() {
@@ -78,7 +79,7 @@ src_configure() {
}
src_compile() {
- emake AR=$(tc-getAR)
+ emake AR="$(tc-getAR)"
}
src_install() {
diff --git a/app-arch/dpkg/dpkg-1.20.3.ebuild b/app-arch/dpkg/dpkg-1.21.1.ebuild
index 732d0c6d35b0..1155e0f445a1 100644
--- a/app-arch/dpkg/dpkg-1.20.3.ebuild
+++ b/app-arch/dpkg/dpkg-1.21.1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit multilib autotools toolchain-funcs
+inherit autotools toolchain-funcs
DESCRIPTION="Package maintenance system for Debian"
HOMEPAGE="https://packages.qa.debian.org/dpkg"
@@ -10,11 +10,12 @@ SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="+bzip2 libmd +lzma nls selinux static-libs test unicode +update-alternatives +zlib"
RESTRICT="!test? ( test )"
RDEPEND="
+ >=app-arch/gzip-1.7
>=dev-lang/perl-5.14.2:=
bzip2? ( app-arch/bzip2 )
libmd? ( app-crypt/libmd )
@@ -34,7 +35,7 @@ DEPEND="
)
"
BDEPEND="
- sys-devel/flex
+ app-alternatives/lex
nls? (
app-text/po4a
>=sys-devel/gettext-0.18.2
@@ -46,22 +47,23 @@ DOCS=(
TODO
)
PATCHES=(
- "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
"${FILESDIR}"/${PN}-1.18.12-flags.patch
- "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
+ "${FILESDIR}"/${PN}-1.20.5-dpkg_buildpackage-test.patch
)
src_prepare() {
default
+ sed -i -e 's|\<ar\>|${AR}|g' t-func/deb-format.at t-func/testsuite || die
+
eautoreconf
}
src_configure() {
- tc-export CC
+ tc-export AR CC
+
econf \
$(use_enable nls) \
- $(use_enable static-libs static) \
$(use_enable unicode) \
$(use_enable update-alternatives) \
$(use_with bzip2 libbz2) \
@@ -76,7 +78,7 @@ src_configure() {
}
src_compile() {
- emake AR=$(tc-getAR)
+ emake AR="$(tc-getAR)"
}
src_install() {
@@ -87,4 +89,8 @@ src_install() {
/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
}
diff --git a/app-arch/dpkg/dpkg-1.21.15-r2.ebuild b/app-arch/dpkg/dpkg-1.21.15-r2.ebuild
new file mode 100644
index 000000000000..0af2f9f4e99f
--- /dev/null
+++ b/app-arch/dpkg/dpkg-1.21.15-r2.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2024 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="
+ app-alternatives/lex
+ nls? (
+ app-text/po4a
+ >=sys-devel/gettext-0.18.2
+ )
+"
+RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.18.12-flags.patch
+ "${FILESDIR}"/${P}-buf-overflow.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
+
+ 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
+
+ # 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
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
diff --git a/app-arch/dpkg/dpkg-1.21.15-r3.ebuild b/app-arch/dpkg/dpkg-1.21.15-r3.ebuild
new file mode 100644
index 000000000000..5c90c53eb9bd
--- /dev/null
+++ b/app-arch/dpkg/dpkg-1.21.15-r3.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2024 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="
+ app-alternatives/lex
+ nls? (
+ app-text/po4a
+ >=sys-devel/gettext-0.18.2
+ )
+"
+RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.18.12-flags.patch
+ "${FILESDIR}"/${P}-buf-overflow.patch
+ "${FILESDIR}"/${PN}-1.21.15-arch_pm.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
+
+ 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
+
+ # 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
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
diff --git a/app-arch/dpkg/dpkg-1.21.19-r1.ebuild b/app-arch/dpkg/dpkg-1.21.19-r1.ebuild
new file mode 100644
index 000000000000..cb9bdfb3ded0
--- /dev/null
+++ b/app-arch/dpkg/dpkg-1.21.19-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2024 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 +zstd"
+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 )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+ test? (
+ dev-perl/IO-String
+ dev-perl/Test-Pod
+ virtual/perl-Test-Harness
+ )
+"
+BDEPEND="
+ app-alternatives/lex
+ nls? (
+ app-text/po4a
+ >=sys-devel/gettext-0.18.2
+ )
+"
+RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.18.12-flags.patch
+ "${FILESDIR}"/${PN}-1.21.15-arch_pm.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
+
+ 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)
+ $(use_with zstd libzstd)
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ local DOCS=( debian/changelog THANKS TODO )
+ default
+
+ # 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
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
diff --git a/app-arch/dpkg/dpkg-1.21.19.ebuild b/app-arch/dpkg/dpkg-1.21.19.ebuild
new file mode 100644
index 000000000000..6a1d79854236
--- /dev/null
+++ b/app-arch/dpkg/dpkg-1.21.19.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2024 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 +zstd"
+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 )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+ test? (
+ dev-perl/IO-String
+ dev-perl/Test-Pod
+ virtual/perl-Test-Harness
+ )
+"
+BDEPEND="
+ app-alternatives/lex
+ nls? (
+ app-text/po4a
+ >=sys-devel/gettext-0.18.2
+ )
+"
+RDEPEND+=" selinux? ( sec-policy/selinux-dpkg )"
+
+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
+
+ 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)
+ $(use_with zstd libzstd)
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ local DOCS=( debian/changelog THANKS TODO )
+ default
+
+ # 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
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
diff --git a/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch b/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch
deleted file mode 100644
index e9716758d41b..000000000000
--- a/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/scripts/Makefile.am
-+++ b/scripts/Makefile.am
-@@ -238,7 +238,6 @@
- t/Dpkg_Source_Package.t \
- t/Dpkg_Dist_Files.t \
- t/dpkg_source.t \
-- t/dpkg_buildpackage.t \
- t/merge_changelogs.t \
- t/mk.t \
- $(nil)
diff --git a/app-arch/dpkg/files/dpkg-1.20.12-m4-stdio.patch b/app-arch/dpkg/files/dpkg-1.20.12-m4-stdio.patch
new file mode 100644
index 000000000000..5124c54b43ed
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.20.12-m4-stdio.patch
@@ -0,0 +1,25 @@
+From 9a1c670b66818fc0044eaa9a95a13da553bebcd3 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Mon, 21 Nov 2022 23:09:59 -0800
+Subject: [PATCH] m4/dpkg-funcs.m4: include stdio.h in __progname conftest
+
+Bug: https://bugs.gentoo.org/869884
+---
+ m4/dpkg-funcs.m4 | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/m4/dpkg-funcs.m4 b/m4/dpkg-funcs.m4
+index 74acf22..0720ac3 100644
+--- a/m4/dpkg-funcs.m4
++++ b/m4/dpkg-funcs.m4
+@@ -142,6 +142,7 @@ AC_DEFUN([DPKG_CHECK_PROGNAME], [
+ AC_MSG_CHECKING([for __progname])
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM(
++ [[#include <stdio.h>]],
+ [[extern char *__progname;]],
+ [[printf("%s", __progname);]])
+ ], [
+--
+2.38.1
+
diff --git a/app-arch/dpkg/files/dpkg-1.20.9-CVE-2022-1664.patch b/app-arch/dpkg/files/dpkg-1.20.9-CVE-2022-1664.patch
new file mode 100644
index 000000000000..aa1570148de1
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.20.9-CVE-2022-1664.patch
@@ -0,0 +1,324 @@
+From 58814cacee39c4ce9e2cd0e3a3b9b57ad437eff5 Mon Sep 17 00:00:00 2001
+From: Guillem Jover <guillem@debian.org>
+Date: Tue, 3 May 2022 02:09:32 +0200
+Subject: Dpkg::Source::Archive: Prevent directory traversal for in-place
+ extracts
+
+For untrusted v2 and v3 source package formats that include a debian.tar
+archive, when we are extracting it, we do that as an in-place extraction,
+which can lead to directory traversal situations on specially crafted
+orig.tar and debian.tar tarballs.
+
+GNU tar replaces entries on the filesystem by the entries present on
+the tarball, but it will follow symlinks when the symlink pathname
+itself is not present as an actual directory on the tarball.
+
+This means we can create an orig.tar where there's a symlink pointing
+out of the source tree root directory, and then a debian.tar that
+contains an entry within that symlink as if it was a directory, without
+a directory entry for the symlink pathname itself, which will be
+extracted following the symlink outside the source tree root.
+
+This is currently noted as expected in GNU tar documentation. But even
+if there was a new extraction mode avoiding this problem we'd need such
+new version. Using perl's Archive::Tar would solve the problem, but
+switching to such different pure perl implementation, could cause
+compatibility or performance issues.
+
+What we do is when we are requested to perform an in-place extract, we
+instead still use a temporary directory, then walk that directory and
+remove any matching entry in the destination directory, replicating what
+GNU tar would do, but in addition avoiding the directory traversal issue
+for symlinks. Which should work with any tar implementation and be safe.
+
+Reported-by: Max Justicz <max@justi.cz>
+Stable-Candidates: 1.18.x 1.19.x 1.20.x
+Fixes: commit 0c0057a27fecccab77d2b3cffa9a7d172846f0b4 (1.14.17)
+Fixes: CVE-2022-1664
+(cherry picked from commit 7a6c03cb34d4a09f35df2f10779cbf1b70a5200b)
+---
+ scripts/Dpkg/Source/Archive.pm | 122 +++++++++++++++++++++++++++++++---------
+ scripts/t/Dpkg_Source_Archive.t | 110 +++++++++++++++++++++++++++++++++++-
+ 2 files changed, 204 insertions(+), 28 deletions(-)
+
+diff --git a/scripts/Dpkg/Source/Archive.pm b/scripts/Dpkg/Source/Archive.pm
+index 33c181b20..2ddd04af8 100644
+--- a/scripts/Dpkg/Source/Archive.pm
++++ b/scripts/Dpkg/Source/Archive.pm
+@@ -21,9 +21,11 @@ use warnings;
+ our $VERSION = '0.01';
+
+ use Carp;
++use Errno qw(ENOENT);
+ use File::Temp qw(tempdir);
+ use File::Basename qw(basename);
+ use File::Spec;
++use File::Find;
+ use Cwd;
+
+ use Dpkg ();
+@@ -110,19 +112,13 @@ sub extract {
+ my %spawn_opts = (wait_child => 1);
+
+ # Prepare destination
+- my $tmp;
+- if ($opts{in_place}) {
+- $spawn_opts{chdir} = $dest;
+- $tmp = $dest; # So that fixperms call works
+- } else {
+- my $template = basename($self->get_filename()) . '.tmp-extract.XXXXX';
+- unless (-e $dest) {
+- # Kludge so that realpath works
+- mkdir($dest) or syserr(g_('cannot create directory %s'), $dest);
+- }
+- $tmp = tempdir($template, DIR => Cwd::realpath("$dest/.."), CLEANUP => 1);
+- $spawn_opts{chdir} = $tmp;
++ my $template = basename($self->get_filename()) . '.tmp-extract.XXXXX';
++ unless (-e $dest) {
++ # Kludge so that realpath works
++ mkdir($dest) or syserr(g_('cannot create directory %s'), $dest);
+ }
++ my $tmp = tempdir($template, DIR => Cwd::realpath("$dest/.."), CLEANUP => 1);
++ $spawn_opts{chdir} = $tmp;
+
+ # Prepare stuff that handles the input of tar
+ $self->ensure_open('r', delete_sig => [ 'PIPE' ]);
+@@ -145,22 +141,94 @@ sub extract {
+ # have to be calculated using mount options and other madness.
+ fixperms($tmp) unless $opts{no_fixperms};
+
+- # Stop here if we extracted in-place as there's nothing to move around
+- return if $opts{in_place};
+-
+- # Rename extracted directory
+- opendir(my $dir_dh, $tmp) or syserr(g_('cannot opendir %s'), $tmp);
+- my @entries = grep { $_ ne '.' && $_ ne '..' } readdir($dir_dh);
+- closedir($dir_dh);
+- my $done = 0;
+- erasedir($dest);
+- if (scalar(@entries) == 1 && ! -l "$tmp/$entries[0]" && -d _) {
+- rename("$tmp/$entries[0]", $dest)
+- or syserr(g_('unable to rename %s to %s'),
+- "$tmp/$entries[0]", $dest);
++ # If we are extracting "in-place" do not remove the destination directory.
++ if ($opts{in_place}) {
++ my $canon_basedir = Cwd::realpath($dest);
++ # On Solaris /dev/null points to /devices/pseudo/mm@0:null.
++ my $canon_devnull = Cwd::realpath('/dev/null');
++ my $check_symlink = sub {
++ my $pathname = shift;
++ my $canon_pathname = Cwd::realpath($pathname);
++ if (not defined $canon_pathname) {
++ return if $! == ENOENT;
++
++ syserr(g_("pathname '%s' cannot be canonicalized"), $pathname);
++ }
++ return if $canon_pathname eq $canon_devnull;
++ return if $canon_pathname eq $canon_basedir;
++ return if $canon_pathname =~ m{^\Q$canon_basedir/\E};
++ warning(g_("pathname '%s' points outside source root (to '%s')"),
++ $pathname, $canon_pathname);
++ };
++
++ my $move_in_place = sub {
++ my $relpath = File::Spec->abs2rel($File::Find::name, $tmp);
++ my $destpath = File::Spec->catfile($dest, $relpath);
++
++ my ($mode, $atime, $mtime);
++ lstat $File::Find::name
++ or syserr(g_('cannot get source pathname %s metadata'), $File::Find::name);
++ ((undef) x 2, $mode, (undef) x 5, $atime, $mtime) = lstat _;
++ my $src_is_dir = -d _;
++
++ my $dest_exists = 1;
++ if (not lstat $destpath) {
++ if ($! == ENOENT) {
++ $dest_exists = 0;
++ } else {
++ syserr(g_('cannot get target pathname %s metadata'), $destpath);
++ }
++ }
++ my $dest_is_dir = -d _;
++ if ($dest_exists) {
++ if ($dest_is_dir && $src_is_dir) {
++ # Refresh the destination directory attributes with the
++ # ones from the tarball.
++ chmod $mode, $destpath
++ or syserr(g_('cannot change directory %s mode'), $File::Find::name);
++ utime $atime, $mtime, $destpath
++ or syserr(g_('cannot change directory %s times'), $File::Find::name);
++
++ # We should do nothing, and just walk further tree.
++ return;
++ } elsif ($dest_is_dir) {
++ rmdir $destpath
++ or syserr(g_('cannot remove destination directory %s'), $destpath);
++ } else {
++ $check_symlink->($destpath);
++ unlink $destpath
++ or syserr(g_('cannot remove destination file %s'), $destpath);
++ }
++ }
++ # If we are moving a directory, we do not need to walk it.
++ if ($src_is_dir) {
++ $File::Find::prune = 1;
++ }
++ rename $File::Find::name, $destpath
++ or syserr(g_('cannot move %s to %s'), $File::Find::name, $destpath);
++ };
++
++ find({
++ wanted => $move_in_place,
++ no_chdir => 1,
++ dangling_symlinks => 0,
++ }, $tmp);
+ } else {
+- rename($tmp, $dest)
+- or syserr(g_('unable to rename %s to %s'), $tmp, $dest);
++ # Rename extracted directory
++ opendir(my $dir_dh, $tmp) or syserr(g_('cannot opendir %s'), $tmp);
++ my @entries = grep { $_ ne '.' && $_ ne '..' } readdir($dir_dh);
++ closedir($dir_dh);
++
++ erasedir($dest);
++
++ if (scalar(@entries) == 1 && ! -l "$tmp/$entries[0]" && -d _) {
++ rename("$tmp/$entries[0]", $dest)
++ or syserr(g_('unable to rename %s to %s'),
++ "$tmp/$entries[0]", $dest);
++ } else {
++ rename($tmp, $dest)
++ or syserr(g_('unable to rename %s to %s'), $tmp, $dest);
++ }
+ }
+ erasedir($tmp);
+ }
+diff --git a/scripts/t/Dpkg_Source_Archive.t b/scripts/t/Dpkg_Source_Archive.t
+index 7b70da68e..504fbe1d4 100644
+--- a/scripts/t/Dpkg_Source_Archive.t
++++ b/scripts/t/Dpkg_Source_Archive.t
+@@ -16,12 +16,120 @@
+ use strict;
+ use warnings;
+
+-use Test::More tests => 1;
++use Test::More tests => 4;
++use Test::Dpkg qw(:paths);
++
++use File::Spec;
++use File::Path qw(make_path rmtree);
+
+ BEGIN {
+ use_ok('Dpkg::Source::Archive');
+ }
+
++use Dpkg;
++
++my $tmpdir = test_get_temp_path();
++
++rmtree($tmpdir);
++
++sub test_touch
++{
++ my ($name, $data) = @_;
++
++ open my $fh, '>', $name
++ or die "cannot touch file $name\n";
++ print { $fh } $data if $data;
++ close $fh;
++}
++
++sub test_path_escape
++{
++ my $name = shift;
++
++ my $treedir = File::Spec->rel2abs("$tmpdir/$name-tree");
++ my $overdir = File::Spec->rel2abs("$tmpdir/$name-overlay");
++ my $outdir = "$tmpdir/$name-out";
++ my $expdir = "$tmpdir/$name-exp";
++
++ # This is the base directory, where we are going to be extracting stuff
++ # into, which include traps.
++ make_path("$treedir/subdir-a");
++ test_touch("$treedir/subdir-a/file-a");
++ test_touch("$treedir/subdir-a/file-pre-a");
++ make_path("$treedir/subdir-b");
++ test_touch("$treedir/subdir-b/file-b");
++ test_touch("$treedir/subdir-b/file-pre-b");
++ symlink File::Spec->abs2rel($outdir, $treedir), "$treedir/symlink-escape";
++ symlink File::Spec->abs2rel("$outdir/nonexistent", $treedir), "$treedir/symlink-nonexistent";
++ symlink "$treedir/file", "$treedir/symlink-within";
++ test_touch("$treedir/supposed-dir");
++
++ # This is the overlay directory, which we'll pack and extract over the
++ # base directory.
++ make_path($overdir);
++ make_path("$overdir/subdir-a/aa");
++ test_touch("$overdir/subdir-a/aa/file-aa", 'aa');
++ test_touch("$overdir/subdir-a/file-a", 'a');
++ make_path("$overdir/subdir-b/bb");
++ test_touch("$overdir/subdir-b/bb/file-bb", 'bb');
++ test_touch("$overdir/subdir-b/file-b", 'b');
++ make_path("$overdir/symlink-escape");
++ test_touch("$overdir/symlink-escape/escaped-file", 'escaped');
++ test_touch("$overdir/symlink-nonexistent", 'nonexistent');
++ make_path("$overdir/symlink-within");
++ make_path("$overdir/supposed-dir");
++ test_touch("$overdir/supposed-dir/supposed-file", 'something');
++
++ # Generate overlay tar.
++ system($Dpkg::PROGTAR, '-cf', "$overdir.tar", '-C', $overdir, qw(
++ subdir-a subdir-b
++ symlink-escape/escaped-file symlink-nonexistent symlink-within
++ supposed-dir
++ )) == 0
++ or die "cannot create overlay tar archive\n";
++
++ # This is the expected directory, which we'll be comparing against.
++ make_path($expdir);
++ system('cp', '-a', $overdir, $expdir) == 0
++ or die "cannot copy overlay hierarchy into expected directory\n";
++
++ # Store the expected and out reference directories into a tar to compare
++ # its structure against the result reference.
++ system($Dpkg::PROGTAR, '-cf', "$expdir.tar", '-C', $overdir, qw(
++ subdir-a subdir-b
++ symlink-escape/escaped-file symlink-nonexistent symlink-within
++ supposed-dir
++ ), '-C', $treedir, qw(
++ subdir-a/file-pre-a
++ subdir-b/file-pre-b
++ )) == 0
++ or die "cannot create expected tar archive\n";
++
++ # This directory is supposed to remain empty, anything inside implies a
++ # directory traversal.
++ make_path($outdir);
++
++ my $warnseen;
++ local $SIG{__WARN__} = sub { $warnseen = $_[0] };
++
++ # Perform the extraction.
++ my $tar = Dpkg::Source::Archive->new(filename => "$overdir.tar");
++ $tar->extract($treedir, in_place => 1);
++
++ # Store the result into a tar to compare its structure against a reference.
++ system($Dpkg::PROGTAR, '-cf', "$treedir.tar", '-C', $treedir, '.');
++
++ # Check results
++ ok(length $warnseen && $warnseen =~ m/points outside source root/,
++ 'expected warning seen');
++ ok(system($Dpkg::PROGTAR, '--compare', '-f', "$expdir.tar", '-C', $treedir) == 0,
++ 'expected directory matches');
++ ok(! -e "$outdir/escaped-file",
++ 'expected output directory is empty, directory traversal');
++}
++
++test_path_escape('in-place');
++
+ # TODO: Add actual test cases.
+
+ 1;
+--
+cgit v1.2.3
+
diff --git a/app-arch/dpkg/files/dpkg-1.21.15-arch_pm.patch b/app-arch/dpkg/files/dpkg-1.21.15-arch_pm.patch
new file mode 100644
index 000000000000..5982336a3574
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.21.15-arch_pm.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/876031
+https://git.yoctoproject.org/poky/tree/meta/recipes-devtools/dpkg/dpkg/arch_pm.patch
+
+configure cannot determine the proper cpu, os, or
+architecture for mips64, and possibly other arch's
+because of faulty code added to Arch.pm in the latest
+release from upstream. We remove that code.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joe Slater <jslater@windriver.com>
+
+---
+ scripts/Dpkg/Arch.pm | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/scripts/Dpkg/Arch.pm b/scripts/Dpkg/Arch.pm
+index 1720847b8..6345ce3b9 100644
+--- a/scripts/Dpkg/Arch.pm
++++ b/scripts/Dpkg/Arch.pm
+@@ -323,9 +323,6 @@ sub _load_tupletable()
+ (my $dt = $debtuple) =~ s/<cpu>/$_cpu/;
+ (my $da = $debarch) =~ s/<cpu>/$_cpu/;
+
+- next if exists $debarch_to_debtuple{$da}
+- or exists $debtuple_to_debarch{$dt};
+-
+ $debarch_to_debtuple{$da} = $dt;
+ $debtuple_to_debarch{$dt} = $da;
+ }
+--
+2.11.0
diff --git a/app-arch/dpkg/files/dpkg-1.21.15-buf-overflow.patch b/app-arch/dpkg/files/dpkg-1.21.15-buf-overflow.patch
new file mode 100644
index 000000000000..864d57b98a5c
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.21.15-buf-overflow.patch
@@ -0,0 +1,45 @@
+From 5356621172d669d8f62e7e746a6c7a11345aec4e Mon Sep 17 00:00:00 2001
+From: Guillem Jover <guillem@debian.org>
+Date: Tue, 3 Jan 2023 23:29:05 +0100
+Subject: dpkg-deb: Fix buffer overflow on long directory names with old deb
+ formats
+
+The handling for deb 0.x formats that relocates files around once
+extracted was using a buffer with a hardcoded size, not taking into
+account the length of the directory which would overflow it.
+
+Switch to use a dynamically allocated buffer to handle any destination
+directory length.
+
+Reported-by: Georgy Yakovlev <gyakovlev@gentoo.org>
+---
+ src/deb/extract.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/deb/extract.c b/src/deb/extract.c
+index a09853962..6466fa6f2 100644
+--- a/src/deb/extract.c
++++ b/src/deb/extract.c
+@@ -53,15 +53,16 @@
+ static void
+ movecontrolfiles(const char *dir, const char *thing)
+ {
+- char buf[200];
++ char *cmd;
+ pid_t pid;
+
+- sprintf(buf, "mv %s/%s/* %s/ && rmdir %s/%s", dir, thing, dir, dir, thing);
++ cmd = str_fmt("mv %s/%s/* %s/ && rmdir %s/%s", dir, thing, dir, dir, thing);
+ pid = subproc_fork();
+ if (pid == 0) {
+- command_shell(buf, _("shell command to move files"));
++ command_shell(cmd, _("shell command to move files"));
+ }
+ subproc_reap(pid, _("shell command to move files"), 0);
++ free(cmd);
+ }
+
+ static void DPKG_ATTR_NORET
+--
+cgit v1.2.3
+
diff --git a/app-arch/dpkg/metadata.xml b/app-arch/dpkg/metadata.xml
index f7244bcd0e2b..9511a3ee6146 100644
--- a/app-arch/dpkg/metadata.xml
+++ b/app-arch/dpkg/metadata.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
-<email>deb-tools@gentoo.org</email>
-<name>Gentoo Debian Tools Project</name>
-</maintainer>
-<use>
-<flag name="libmd">Use <pkg>app-crypt/libmd</pkg> library for message digest functions</flag>
-<flag name="update-alternatives">Install update-alternatives</flag>
-</use>
+ <!-- maintainer-needed -->
+ <use>
+ <flag name="libmd">Use <pkg>app-crypt/libmd</pkg> library for message digest functions</flag>
+ <flag name="update-alternatives">Install update-alternatives</flag>
+ </use>
</pkgmetadata>
diff --git a/app-arch/drpm/Manifest b/app-arch/drpm/Manifest
new file mode 100644
index 000000000000..63017e871b0f
--- /dev/null
+++ b/app-arch/drpm/Manifest
@@ -0,0 +1 @@
+DIST drpm-0.5.2.tar.gz 138930 BLAKE2B b2d57e35bf62e94ba23212518a57c22a5638c270a38b07e77799e4c054e82391a08bd40a34adb78e5e5a9cf6c895895146b3619c953a1f0d312a8790652fda55 SHA512 591ffb6b28b1d4c6dda25746a76563c0fa15f48368e2593dbd00a2652dea78b635c8e28f6e50cf824450d9938652ddf3712c877135d66a7b762f1223b38e9ab4
diff --git a/app-arch/drpm/drpm-0.5.2.ebuild b/app-arch/drpm/drpm-0.5.2.ebuild
new file mode 100644
index 000000000000..737011a8cc67
--- /dev/null
+++ b/app-arch/drpm/drpm-0.5.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="A library for making, reading and applying deltarpm packages"
+HOMEPAGE="https://github.com/rpm-software-management/drpm"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rpm-software-management/drpm/"
+else
+ SRC_URI="https://github.com/rpm-software-management/drpm/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+
+IUSE="lzip test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/rpm
+ app-arch/xz-utils
+ dev-libs/openssl:=
+ sys-libs/zlib
+ lzip? ( app-arch/lzlib )
+ zstd? ( app-arch/zstd:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="${DEPEND}
+ test? ( dev-util/cmocka )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHAVE_LZLIB_DEVEL=$(usex lzip ON OFF)
+ -DWITH_ZSTD=$(usex zstd ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/drpm/drpm-9999.ebuild b/app-arch/drpm/drpm-9999.ebuild
new file mode 100644
index 000000000000..737011a8cc67
--- /dev/null
+++ b/app-arch/drpm/drpm-9999.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="A library for making, reading and applying deltarpm packages"
+HOMEPAGE="https://github.com/rpm-software-management/drpm"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rpm-software-management/drpm/"
+else
+ SRC_URI="https://github.com/rpm-software-management/drpm/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+
+IUSE="lzip test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/rpm
+ app-arch/xz-utils
+ dev-libs/openssl:=
+ sys-libs/zlib
+ lzip? ( app-arch/lzlib )
+ zstd? ( app-arch/zstd:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="${DEPEND}
+ test? ( dev-util/cmocka )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHAVE_LZLIB_DEVEL=$(usex lzip ON OFF)
+ -DWITH_ZSTD=$(usex zstd ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/drpm/metadata.xml b/app-arch/drpm/metadata.xml
new file mode 100644
index 000000000000..ebbca5189fad
--- /dev/null
+++ b/app-arch/drpm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rpm-software-management/drpm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/dtrx/Manifest b/app-arch/dtrx/Manifest
new file mode 100644
index 000000000000..b257f06a52bb
--- /dev/null
+++ b/app-arch/dtrx/Manifest
@@ -0,0 +1 @@
+DIST dtrx-8.5.3.tar.gz 34147 BLAKE2B 156d2305f777b63870490736fd769a9d480f390d41ac0aa6acac16d4c5b21bb5b3f88d7b2cea6ecbf74511895bb3c3d923a6186d5189ebf3f7a5f4bb5db6c0f1 SHA512 0c29f0d9ca03d11206297669c20c3443c420db4aa0d91da54a5f6ac7236120af04a1a8d7e2e4f85b3d7e6c6050786cc0293bab02f424fe3be52a40f069d397be
diff --git a/app-arch/dtrx/dtrx-8.5.3-r1.ebuild b/app-arch/dtrx/dtrx-8.5.3-r1.ebuild
new file mode 100644
index 000000000000..7a6ccf0a7793
--- /dev/null
+++ b/app-arch/dtrx/dtrx-8.5.3-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
+HOMEPAGE="https://github.com/dtrx-py/dtrx/
+ https://pypi.org/project/dtrx/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
+else
+ inherit pypi
+ KEYWORDS="amd64 ~arm ~arm64 ~riscv ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+
+DOCS=( README.md )
+
+src_prepare() {
+ sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
+
+ distutils-r1_src_prepare
+}
+
+pkg_postinst() {
+ local supported_format
+ local -a supported_formats=(
+ arj
+ bzip2
+ cpio
+ gzip
+ lrzip
+ lzip
+ p7zip
+ rpm
+ unrar
+ unzip
+ xz-utils
+ zip
+ zstd
+ )
+
+ for supported_format in ${supported_formats[@]}; do
+ optfeature \
+ "extraction of supported archives using ${supported_format}" \
+ app-arch/${supported_format}
+ done
+}
diff --git a/app-arch/dtrx/dtrx-9999.ebuild b/app-arch/dtrx/dtrx-9999.ebuild
new file mode 100644
index 000000000000..efeeace6e9ef
--- /dev/null
+++ b/app-arch/dtrx/dtrx-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
+HOMEPAGE="https://github.com/dtrx-py/dtrx/
+ https://pypi.org/project/dtrx/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
+else
+ inherit pypi
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+
+DOCS=( README.md )
+
+src_prepare() {
+ sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
+
+ distutils-r1_src_prepare
+}
+
+pkg_postinst() {
+ local supported_format
+ local -a supported_formats=(
+ arj
+ bzip2
+ cpio
+ gzip
+ lrzip
+ lzip
+ p7zip
+ rpm
+ unrar
+ unzip
+ xz-utils
+ zip
+ zstd
+ )
+
+ for supported_format in ${supported_formats[@]}; do
+ optfeature \
+ "extraction of supported archives using ${supported_format}" \
+ app-arch/${supported_format}
+ done
+}
diff --git a/app-arch/dtrx/metadata.xml b/app-arch/dtrx/metadata.xml
new file mode 100644
index 000000000000..ed325e58479b
--- /dev/null
+++ b/app-arch/dtrx/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/dtrx-py/dtrx/issues/</bugs-to>
+ <remote-id type="github">dtrx-py/dtrx</remote-id>
+ <remote-id type="pypi">dtrx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/duff/duff-0.5.2.ebuild b/app-arch/duff/duff-0.5.2.ebuild
index 94522ba771dd..f41ed1e86ad0 100644
--- a/app-arch/duff/duff-0.5.2.ebuild
+++ b/app-arch/duff/duff-0.5.2.ebuild
@@ -1,19 +1,17 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
DESCRIPTION="Command-line utility for quickly finding duplicates in a given set of files"
HOMEPAGE="http://duff.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
LICENSE="ZLIB"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
-DEPEND=""
-RDEPEND=""
src_install() {
- emake DESTDIR="${D}" install
- dodoc AUTHORS ChangeLog HACKING NEWS README* TODO
+ default
+ dodoc HACKING
}
diff --git a/app-arch/duff/metadata.xml b/app-arch/duff/metadata.xml
index cd5e6341af23..decb1b5ecac5 100644
--- a/app-arch/duff/metadata.xml
+++ b/app-arch/duff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/app-arch/dump/Manifest b/app-arch/dump/Manifest
index 02c875b0defc..09804a91cee3 100644
--- a/app-arch/dump/Manifest
+++ b/app-arch/dump/Manifest
@@ -1 +1 @@
-DIST dump-0.4b46.tar.gz 578200 BLAKE2B 91102bdba06f3affdf4ebd9de525145c0a4cc1b9fb4c6ff222c411c118b3b7835f3aad666d530019d8b9ee46590e4a283a143d188d6800218100cecf67877274 SHA512 a30e72ab6c4d18497dffe3d25634c2e55ca90861d1cd8a6c0fd44709e735a217dbf4cdabb8c80e02053def94d9a22cf1d685ee0d0f24f5b748ee5f0de19cf17d
+DIST dump-0.4b47.tar.gz 583380 BLAKE2B a5a6c507fc67451e6ce5117b28b9e97e45783059358c357e1f6d4b268437c8340f13e0d77e97631112824eca8205c49d206a8a7904bc3e00b1f0d5abb31418f7 SHA512 e9c567fe2ffad196b9657c551d83f7607758f3704cad6cb407514bbe2bc765c16968997dc3a5bc92b9eb5900fa5bd6e7cebc92c81afff53339fca92891a5259d
diff --git a/app-arch/dump/dump-0.4.46-r1.ebuild b/app-arch/dump/dump-0.4.47-r1.ebuild
index c768fa8534d8..e96321b3fc1b 100644
--- a/app-arch/dump/dump-0.4.46-r1.ebuild
+++ b/app-arch/dump/dump-0.4.47-r1.ebuild
@@ -1,42 +1,42 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
MY_P="${PN}-$(ver_rs 2 b)"
-S=${WORKDIR}/${MY_P}
+
DESCRIPTION="Dump/restore ext2fs backup utilities"
HOMEPAGE="http://dump.sourceforge.net/"
SRC_URI="mirror://sourceforge/dump/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ppc64 sparc x86"
# We keep uuid USE flag default dsiabled for this version. Don't forget
# to default enable it for later versions as this is the upstream default.
-IUSE="bzip2 debug ermt libressl lzo readline selinux sqlite ssl static test uuid zlib"
+IUSE="bzip2 debug ermt lzo readline selinux sqlite ssl static test uuid zlib"
RESTRICT="!test? ( test )"
REQUIRED_USE="
ermt? ( ssl )
ssl? ( zlib )
- test? ( sqlite? ( uuid ) )
-"
+ test? ( sqlite? ( uuid ) )"
-RDEPEND=">=sys-fs/e2fsprogs-1.27:=
- >=sys-libs/e2fsprogs-libs-1.27:=
+RDEPEND="
+ >=sys-fs/e2fsprogs-1.27:=
sys-apps/util-linux
- bzip2? ( >=app-arch/bzip2-1.0.2:= )
- zlib? ( >=sys-libs/zlib-1.1.4:= )
- lzo? ( dev-libs/lzo:2= )
- sqlite? ( dev-db/sqlite:3= )
- ermt? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ bzip2? (
+ app-arch/bzip2:=
+ static? ( app-arch/bzip2[static-libs] )
)
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ zlib? ( >=sys-libs/zlib-1.1.4:= )
+ lzo? (
+ dev-libs/lzo:2=
+ static? ( dev-libs/lzo:2[static-libs] )
)
+ sqlite? ( dev-db/sqlite:3= )
+ ermt? ( dev-libs/openssl:0= )
+ ssl? ( dev-libs/openssl:0= )
readline? (
sys-libs/readline:0=
sys-libs/ncurses:=
@@ -44,13 +44,7 @@ RDEPEND=">=sys-fs/e2fsprogs-1.27:=
)"
DEPEND="${RDEPEND}
virtual/os-headers"
-BDEPEND="
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${P}-openssl11.patch
-)
+BDEPEND="virtual/pkgconfig"
src_configure() {
local myeconfargs=(
@@ -74,12 +68,17 @@ src_configure() {
src_install() {
default
+
mv "${ED}"/usr/sbin/{,dump-}rmt || die
mv "${ED}"/usr/share/man/man8/{,dump-}rmt.8 || die
use ermt && newsbin rmt/ermt dump-ermt
dodoc KNOWNBUGS MAINTAINERS REPORTING-BUGS
dodoc -r examples
+
+ # Don't install pre-compressed files
+ gunzip "${ED}"/usr/share/doc/${PF}/examples/cron_dump_to_disk/backupskel.tar.gz \
+ || die
}
pkg_postinst() {
diff --git a/app-arch/dump/dump-0.4.47-r2.ebuild b/app-arch/dump/dump-0.4.47-r2.ebuild
new file mode 100644
index 000000000000..2f42c5dfca0d
--- /dev/null
+++ b/app-arch/dump/dump-0.4.47-r2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit readme.gentoo-r1
+
+MY_P="${PN}-$(ver_rs 2 b)"
+
+DESCRIPTION="Dump/restore ext2fs backup utilities"
+HOMEPAGE="https://dump.sourceforge.io/"
+SRC_URI="mirror://sourceforge/dump/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ppc64 sparc x86"
+# We keep uuid USE flag default dsiabled for this version. Don't forget
+# to default enable it for later versions as this is the upstream default.
+IUSE="bzip2 debug ermt lzo readline selinux sqlite ssl static test uuid zlib"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ ermt? ( ssl )
+ ssl? ( zlib )
+ test? ( sqlite? ( uuid ) )"
+
+RDEPEND="
+ >=sys-fs/e2fsprogs-1.27:=
+ sys-apps/util-linux
+ bzip2? (
+ app-arch/bzip2:=
+ static? ( app-arch/bzip2[static-libs] )
+ )
+ zlib? ( >=sys-libs/zlib-1.1.4:= )
+ lzo? (
+ dev-libs/lzo:2=
+ static? ( dev-libs/lzo:2[static-libs] )
+ )
+ sqlite? ( dev-db/sqlite:3= )
+ ermt? ( dev-libs/openssl:0= )
+ ssl? ( dev-libs/openssl:0= )
+ readline? (
+ sys-libs/readline:0=
+ sys-libs/ncurses:=
+ static? ( sys-libs/ncurses:=[static-libs] )
+ )"
+DEPEND="${RDEPEND}
+ virtual/os-headers"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ local myeconfargs=(
+ --with-dumpdatespath=/etc/dumpdates
+ --with-rmtpath='$(sbindir)/rmt'
+ --enable-blkid
+ $(use_enable bzip2)
+ $(use_enable debug)
+ $(use_enable ermt)
+ $(use_enable lzo)
+ $(use_enable readline)
+ $(use_enable selinux)
+ $(use_enable sqlite)
+ $(use_enable ssl)
+ $(use_enable static static-progs)
+ $(use_enable uuid)
+ $(use_enable zlib)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ mv "${ED}"/usr/sbin/{,dump-}rmt || die
+ mv "${ED}"/usr/share/man/man8/{,dump-}rmt.8 || die
+ use ermt && newsbin rmt/ermt dump-ermt
+
+ dodoc KNOWNBUGS MAINTAINERS REPORTING-BUGS
+ dodoc -r examples
+
+ # Don't install pre-compressed files
+ gunzip "${ED}"/usr/share/doc/${PF}/examples/cron_dump_to_disk/backupskel.tar.gz \
+ || die
+
+ local DOC_CONTENTS="dump has serious bugs
+ (see https://sourceforge.net/p/dump/bugs/162/ and
+ https://sourceforge.net/p/dump/bugs/174/). This tool should only
+ be used for restoring old backups, not for creating new ones.
+ \n\n${CATEGORY}/${PN} installs 'rmt' as 'dump-rmt'.
+ This is to avoid conflicts with app-arch/tar 'rmt'."
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/app-arch/dump/dump-0.4.47-r3.ebuild b/app-arch/dump/dump-0.4.47-r3.ebuild
new file mode 100644
index 000000000000..ea26f905f91f
--- /dev/null
+++ b/app-arch/dump/dump-0.4.47-r3.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic readme.gentoo-r1
+
+MY_P="${PN}-$(ver_rs 2 b)"
+
+DESCRIPTION="Dump/restore ext2fs backup utilities"
+HOMEPAGE="https://dump.sourceforge.io/"
+SRC_URI="mirror://sourceforge/dump/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ppc64 ~sparc x86"
+# We keep uuid USE flag default dsiabled for this version. Don't forget
+# to default enable it for later versions as this is the upstream default.
+IUSE="bzip2 debug ermt lzo readline selinux sqlite ssl static test uuid zlib"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ ermt? ( ssl )
+ ssl? ( zlib )
+ test? ( sqlite? ( uuid ) )"
+
+RDEPEND="
+ >=sys-fs/e2fsprogs-1.27:=
+ sys-apps/util-linux
+ bzip2? (
+ app-arch/bzip2:=
+ static? ( app-arch/bzip2[static-libs] )
+ )
+ zlib? ( >=sys-libs/zlib-1.1.4:= )
+ lzo? (
+ dev-libs/lzo:2=
+ static? ( dev-libs/lzo:2[static-libs] )
+ )
+ sqlite? ( dev-db/sqlite:3= )
+ ermt? ( dev-libs/openssl:0= )
+ ssl? ( dev-libs/openssl:0= )
+ readline? (
+ sys-libs/readline:0=
+ sys-libs/ncurses:=
+ static? ( sys-libs/ncurses:=[static-libs] )
+ )"
+DEPEND="${RDEPEND}
+ virtual/os-headers"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-fix-incompatible-pointer-to-integer-conversion.patch
+)
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/854204
+ #
+ # Abandoned upstream for 3 years. Known corruptions reported in
+ # pkg_postinst. Sourceforge software. Not bothering to report a bug...
+ filter-lto
+
+ local myeconfargs=(
+ --with-dumpdatespath=/etc/dumpdates
+ --with-rmtpath='$(sbindir)/rmt'
+ --enable-blkid
+ $(use_enable bzip2)
+ $(use_enable debug)
+ $(use_enable ermt)
+ $(use_enable lzo)
+ $(use_enable readline)
+ $(use_enable selinux)
+ $(use_enable sqlite)
+ $(use_enable ssl)
+ $(use_enable static static-progs)
+ $(use_enable uuid)
+ $(use_enable zlib)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ mv "${ED}"/usr/sbin/{,dump-}rmt || die
+ mv "${ED}"/usr/share/man/man8/{,dump-}rmt.8 || die
+ use ermt && newsbin rmt/ermt dump-ermt
+
+ dodoc KNOWNBUGS MAINTAINERS REPORTING-BUGS
+ dodoc -r examples
+
+ # Don't install pre-compressed files
+ gunzip "${ED}"/usr/share/doc/${PF}/examples/cron_dump_to_disk/backupskel.tar.gz \
+ || die
+
+ local DOC_CONTENTS="dump has serious bugs
+ (see https://sourceforge.net/p/dump/bugs/162/ and
+ https://sourceforge.net/p/dump/bugs/174/). This tool should only
+ be used for restoring old backups, not for creating new ones.
+ \n\n${CATEGORY}/${PN} installs 'rmt' as 'dump-rmt'.
+ This is to avoid conflicts with app-arch/tar 'rmt'."
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/app-arch/dump/files/dump-0.4.46-openssl11.patch b/app-arch/dump/files/dump-0.4.46-openssl11.patch
deleted file mode 100644
index db18e8190f5c..000000000000
--- a/app-arch/dump/files/dump-0.4.46-openssl11.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-Index: dump-0.4b46/common/transformation_ssl.c
-===================================================================
---- dump-0.4b46.orig/common/transformation_ssl.c
-+++ dump-0.4b46/common/transformation_ssl.c
-@@ -215,7 +215,10 @@ generateIV(Transformation *xform, unsign
- /* to be exposed to any attacker anyway. */
- *saltlen = 16;
- if (xform->enc == 1) {
-- RAND_pseudo_bytes(salt, *saltlen);
-+ if (!RAND_bytes(salt, *saltlen) != 1) {
-+ /* PRNG not sufficiently seeded */
-+ return -1;
-+ }
- }
- memcpy(ivbuffer, salt, 16);
-
-@@ -274,7 +277,7 @@ ssl_compress(Transformation *xform, stru
- digestlen = sizeof(digest);
-
- /* generate salt, put it in header */
-- generateIV(xform, salt, &saltlen, iv, &ivlen);
-+ generateIV(xform, salt, &saltlen, iv, &ivlen); /* TODO: check return value */
- memcpy(tpbin->buf, salt, saltlen);
-
- /* compress the buffer first - increase the entropy */
-@@ -351,7 +354,7 @@ ssl_decompress(Transformation *xform, st
-
- // how to know salt length?
- memcpy(salt, src, saltlen);
-- generateIV(xform, salt, &saltlen, iv, &ivlen);
-+ generateIV(xform, salt, &saltlen, iv, &ivlen); /* TODO: check return value */
-
- EVP_DecryptInit_ex(xform->state.ssl.dataCtx, xform->state.ssl.cipher, xform->state.ssl.engine, NULL, NULL);
- //EVP_CIPHER_CTX_set_key_length(&ctx, 8);
-@@ -515,7 +518,7 @@ Transformation
- //EVP_CIPHER_CTX_rand_key(ctx, t->state.ssl.key);
- //EVP_CIPHER_CTX_cleanup(ctx);
- //EVP_CIPHER_CTX_free(ctx);
-- RAND_bytes(t->state.ssl.key, t->state.ssl.cipher->key_len);
-+ RAND_bytes(t->state.ssl.key, EVP_CIPHER_key_length(t->state.ssl.cipher));
- } else {
- // how do we get keys?
- }
-Index: dump-0.4b46/rmt/cipher.c
-===================================================================
---- dump-0.4b46.orig/rmt/cipher.c
-+++ dump-0.4b46/rmt/cipher.c
-@@ -23,7 +23,7 @@
- char *
- cipher(char *buf, int buflen, int do_encrypt)
- {
-- static EVP_CIPHER_CTX ctx;
-+ EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new();
- static char *out = NULL; /* return value, grown as necessary */
- static int outlen = 0;
- static int init = 0, which, blocksize;
-@@ -71,13 +71,13 @@ cipher(char *buf, int buflen, int do_enc
- }
- EVP_BytesToKey(cipher, EVP_md5(), NULL,
- buf, strlen(buf), 1, key, iv);
-- EVP_CIPHER_CTX_init(&ctx);
-- EVP_CipherInit_ex(&ctx, cipher, NULL, key, iv, do_encrypt);
-- EVP_CIPHER_CTX_set_padding(&ctx, 0); // -nopad
-+ EVP_CIPHER_CTX_init(ctx);
-+ EVP_CipherInit_ex(ctx, cipher, NULL, key, iv, do_encrypt);
-+ EVP_CIPHER_CTX_set_padding(ctx, 0); // -nopad
- OPENSSL_cleanse(buf, sizeof buf);
- OPENSSL_cleanse(key, sizeof key);
- OPENSSL_cleanse(iv, sizeof iv);
-- blocksize = EVP_CIPHER_CTX_block_size(&ctx);
-+ blocksize = EVP_CIPHER_CTX_block_size(ctx);
- which = do_encrypt;
- init = 1;
- }
-@@ -95,7 +95,7 @@ cipher(char *buf, int buflen, int do_enc
- outlen = (buflen+blocksize) * 2;
- out = realloc(out, outlen);
- }
-- if (!EVP_CipherUpdate(&ctx, out, &n, buf, buflen)) {
-+ if (!EVP_CipherUpdate(ctx, out, &n, buf, buflen)) {
- syslog(LOG_ERR, "EVP_CipherUpdate failed");
- errno = EINVAL;
- return NULL;
-@@ -106,6 +106,7 @@ cipher(char *buf, int buflen, int do_enc
- return NULL;
- }
- // assert(ctx->buf_len == 0);
-+ EVP_CIPHER_CTX_free(ctx);
- return out;
- }
-
diff --git a/app-arch/dump/files/dump-fix-incompatible-pointer-to-integer-conversion.patch b/app-arch/dump/files/dump-fix-incompatible-pointer-to-integer-conversion.patch
new file mode 100644
index 000000000000..220e37bb7f57
--- /dev/null
+++ b/app-arch/dump/files/dump-fix-incompatible-pointer-to-integer-conversion.patch
@@ -0,0 +1,25 @@
+From: listout <listout@protonmail.com>
+Date: Mon, 17 Apr 2023 12:36:40 +0530
+Subject: [PATCH] Fix incompatible pointer to integer conversion
+
+transformation_null was initializing one of it's elements with NULL
+which is zero type casted to void. Hence, instead of initializing with
+NULL, now we are initializing that element with zero.
+
+Refer: https://bugs.gentoo.org/874675
+
+Signed-off-by: listout <listout@protonmail.com>
+--- a/common/transformation_null.c
++++ b/common/transformation_null.c
+@@ -81,7 +81,7 @@ null_decompress(Transformation *xform, struct tapebuf *tpbin, unsigned long *des
+ Transformation transformation_null =
+ {
+ 0,
+- NULL,
++ 0,
+ "null",
+ 0,
+ &null_initialize,
+--
+2.39.2
+
diff --git a/app-arch/dump/metadata.xml b/app-arch/dump/metadata.xml
index 256f76fc5bff..762d33d0a55f 100644
--- a/app-arch/dump/metadata.xml
+++ b/app-arch/dump/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/engrampa/Manifest b/app-arch/engrampa/Manifest
index f96b0abe5f3f..1a705f21bf13 100644
--- a/app-arch/engrampa/Manifest
+++ b/app-arch/engrampa/Manifest
@@ -1,2 +1,3 @@
-DIST engrampa-1.24.0.tar.xz 1678920 BLAKE2B c40ba6a77d667f25853f6ae8cef51a54b32402e9446d6712bcfe8b6cfbddcc39e076604fad6ead1717bcedc52716be028ac9bf912c5762fa204e3ee5d6be10bb SHA512 b6996e224ef52d8fd7102e4498193faa62056e8c22aa260ab5c6361533744f78755d500536ec0e03fd8b42b71da56d3f58d9d760809d20b572bee02fdee07cce
-DIST engrampa-1.24.1.tar.xz 1680000 BLAKE2B 3059f98e5db99aabe270a89d7edf334ddca8b9cfd963a34f8b7b99356a1b7a9b14c9f641ea6582f893a5f6e4fe46dde00e5375d7b1c71b80299a7f5121839549 SHA512 9d51f24987cecfdd2c560b1ac8f8699bb5ed010bcd5b4a449a1103f725bc63046d0813d28424a3ae7dfcee0568dbf2a282f27ac5512b1c342dafeaec5bcd3b4b
+DIST engrampa-1.26.1.tar.xz 1792452 BLAKE2B ff87f21848919654a2392c02e6050ac0b4c80308361ec7c829a2acf3fb25b088e164a3722be0312b2c814022bf0e06c80ae0796add182e6ac8e5d696409c5afe SHA512 6e3e59503d3d55df3eddc63f5f8f67c80a84b2b602801f9bcbaf4e38b6e991fffaa879e1cd44c1173b5c11096587122438bda51401c2694654c99b87a52b9f5e
+DIST engrampa-1.26.2.tar.xz 1790984 BLAKE2B a3812240947f3bdc39845852a69d90c660f9ca3b03b167a5fbe1373024827b1abac93f3dc854316ae0368717cf7aef2512b84f47b93453a3a49a64c99ae3865a SHA512 4e9a55d9bc834616d8a8f5b7b0882fd4581ad2efdade33367ede85800ebb1e70241d20c9c37fadbef468d16088419fcf85daec0718c68bdbefe2301f8b0b40a3
+DIST engrampa-1.28.1.tar.xz 1720164 BLAKE2B a2776cbf7040bcb7baf992caa323afaabffe316ad94a222613cc8bc8c59490f389005ecdec66de519c88f2ad89167739b3934c2bed6c212846b20f6b4b60a6ae SHA512 912bec0e1b2bf8f79e89bda4cb72e28a96d4d1b2ab32fca14b3d28bf75be93cdd4a9e43315fe6ad2c8cac5af95686915cfa3d0a3182973a8b6e42817cfdd936f
diff --git a/app-arch/engrampa/engrampa-1.24.0-r1.ebuild b/app-arch/engrampa/engrampa-1.24.0-r1.ebuild
deleted file mode 100644
index 97e69c4bfce8..000000000000
--- a/app-arch/engrampa/engrampa-1.24.0-r1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MATE_LA_PUNT="yes"
-
-inherit mate optfeature readme.gentoo-r1
-
-if [[ ${PV} != 9999 ]]; then
- KEYWORDS="amd64 ~arm ~arm64 x86"
-fi
-
-DESCRIPTION="Engrampa archive manager for MATE"
-LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
-SLOT="0"
-
-IUSE="caja magic packagekit"
-
-COMMON_DEPEND="
- >=dev-libs/glib-2.50:2
- >=dev-libs/json-glib-0.14
- virtual/libintl
- x11-libs/gdk-pixbuf:2
- >=x11-libs/gtk+-3.22:3[X]
- x11-libs/libSM
- x11-libs/pango
- caja? ( >=mate-base/caja-1.17.1 )
- magic? ( sys-apps/file )
- packagekit? ( app-admin/packagekit-base )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/libintl
- !!app-arch/mate-file-archiver
-"
-
-DEPEND="${COMMON_DEPEND}
- app-text/yelp-tools
- dev-util/glib-utils
- >=sys-devel/gettext-0.19.8:*
- virtual/pkgconfig
-"
-
-src_configure() {
- mate_src_configure \
- --disable-run-in-place \
- $(use_enable caja caja-actions) \
- $(use_enable magic) \
- $(use_enable packagekit)
-}
-
-src_install() {
- mate_src_install
-}
-
-pkg_postinst() {
- mate_pkg_postinst
- optfeature "Support for 7-zip" app-arch/p7zip
- optfeature "Support for ace" app-arch/unace
- optfeature "Support for arj" app-arch/arj
- optfeature "Support for cpio" app-arch/cpio
- optfeature "Support for deb" app-arch/dpkg
- optfeature "Support for iso" app-cdr/cdrtools
- optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
- optfeature "Support for lha" app-arch/lha
- optfeature "Support for lzma" app-arch/xz-utils
- optfeature "Support for lzop" app-arch/lzop
- optfeature "Support for rar" app-arch/unrar
- optfeature "Support for rpm" app-arch/rpm
- optfeature "Support for unstuff" app-arch/stuffit
- optfeature "Support for zoo" app-arch/zoo
-}
diff --git a/app-arch/engrampa/engrampa-1.24.1.ebuild b/app-arch/engrampa/engrampa-1.24.1.ebuild
deleted file mode 100644
index d1e58a38197e..000000000000
--- a/app-arch/engrampa/engrampa-1.24.1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MATE_LA_PUNT="yes"
-
-inherit mate readme.gentoo-r1
-
-if [[ ${PV} != 9999 ]]; then
- KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-fi
-
-DESCRIPTION="Engrampa archive manager for MATE"
-LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
-SLOT="0"
-
-IUSE="caja magic packagekit"
-
-COMMON_DEPEND="
- >=dev-libs/glib-2.50:2
- >=dev-libs/json-glib-0.14
- virtual/libintl
- x11-libs/gdk-pixbuf:2
- >=x11-libs/gtk+-3.22:3[X]
- x11-libs/libSM
- x11-libs/pango
- caja? ( >=mate-base/caja-1.17.1 )
- magic? ( sys-apps/file )
- packagekit? ( app-admin/packagekit-base )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/libintl
- !!app-arch/mate-file-archiver
-"
-
-DEPEND="${COMMON_DEPEND}
- app-text/yelp-tools
- dev-util/glib-utils
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_configure() {
- mate_src_configure \
- --disable-run-in-place \
- $(use_enable caja caja-actions) \
- $(use_enable magic) \
- $(use_enable packagekit)
-}
-
-pkg_postinst() {
- mate_pkg_postinst
- optfeature "Support for 7-zip" app-arch/p7zip
- optfeature "Support for ace" app-arch/unace
- optfeature "Support for arj" app-arch/arj
- optfeature "Support for cpio" app-arch/cpio
- optfeature "Support for deb" app-arch/dpkg
- optfeature "Support for iso" app-cdr/cdrtools
- optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
- optfeature "Support for lha" app-arch/lha
- optfeature "Support for lzma" app-arch/xz-utils
- optfeature "Support for lzop" app-arch/lzop
- optfeature "Support for rar" app-arch/unrar
- optfeature "Support for rpm" app-arch/rpm
- optfeature "Support for unstuff" app-arch/stuffit
- optfeature "Support for zoo" app-arch/zoo
-}
diff --git a/app-arch/engrampa/engrampa-1.26.1.ebuild b/app-arch/engrampa/engrampa-1.26.1.ebuild
new file mode 100644
index 000000000000..f4f1aded41e1
--- /dev/null
+++ b/app-arch/engrampa/engrampa-1.26.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="https://github.com/mate-desktop/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/mate-desktop/${PN}/archive/${P}.tar.xz"
+ KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86"
+fi
+
+inherit mate optfeature
+
+DESCRIPTION="Engrampa archive manager for MATE"
+HOMEPAGE="https://mate-desktop.org/ https://github.com/mate-desktop/engrampa"
+
+LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="caja magic"
+
+DEPEND="
+ >=dev-libs/glib-2.50:2
+ >=dev-libs/json-glib-0.14
+ virtual/libintl
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.22:3[X]
+ x11-libs/libSM
+ x11-libs/pango
+ caja? ( >=mate-base/caja-1.17.1 )
+ magic? ( sys-apps/file )
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/libintl
+"
+BDEPEND="
+ app-text/yelp-tools
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.26.0-clang16.patch
+)
+
+src_configure() {
+ mate_src_configure \
+ --disable-run-in-place \
+ $(use_enable caja caja-actions) \
+ $(use_enable magic) \
+ --disable-packagekit
+}
+
+pkg_postinst() {
+ mate_pkg_postinst
+
+ optfeature "Support for 7-zip" app-arch/p7zip
+ optfeature "Support for ace" app-arch/unace
+ optfeature "Support for arj" app-arch/arj
+ optfeature "Support for cpio" app-alternatives/cpio
+ optfeature "Support for deb" app-arch/dpkg
+ optfeature "Support for iso" app-cdr/cdrtools
+ optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
+ optfeature "Support for lha" app-arch/lha
+ optfeature "Support for lzma" app-arch/xz-utils
+ optfeature "Support for lzop" app-arch/lzop
+ optfeature "Support for rar" app-arch/unrar
+ optfeature "Support for rpm" app-arch/rpm
+ optfeature "Support for unstuff" app-arch/stuffit
+ optfeature "Support for zoo" app-arch/zoo
+}
diff --git a/app-arch/engrampa/engrampa-1.26.2.ebuild b/app-arch/engrampa/engrampa-1.26.2.ebuild
new file mode 100644
index 000000000000..da1636e52756
--- /dev/null
+++ b/app-arch/engrampa/engrampa-1.26.2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="https://github.com/mate-desktop/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/mate-desktop/${PN}/archive/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+fi
+
+inherit mate optfeature
+
+DESCRIPTION="Engrampa archive manager for MATE"
+HOMEPAGE="https://mate-desktop.org/ https://github.com/mate-desktop/engrampa"
+
+LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="caja magic"
+
+DEPEND="
+ >=dev-libs/glib-2.50:2
+ >=dev-libs/json-glib-0.14
+ virtual/libintl
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.22:3[X]
+ x11-libs/libSM
+ x11-libs/pango
+ caja? ( >=mate-base/caja-1.17.1 )
+ magic? ( sys-apps/file )
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/libintl
+"
+BDEPEND="
+ app-text/yelp-tools
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.26.0-clang16.patch
+)
+
+src_configure() {
+ mate_src_configure \
+ --disable-run-in-place \
+ $(use_enable caja caja-actions) \
+ $(use_enable magic) \
+ --disable-packagekit
+}
+
+pkg_postinst() {
+ mate_pkg_postinst
+
+ optfeature "Support for 7-zip" app-arch/p7zip
+ optfeature "Support for ace" app-arch/unace
+ optfeature "Support for arj" app-arch/arj
+ optfeature "Support for cpio" app-alternatives/cpio
+ optfeature "Support for deb" app-arch/dpkg
+ optfeature "Support for iso" app-cdr/cdrtools
+ optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
+ optfeature "Support for lha" app-arch/lha
+ optfeature "Support for lzma" app-arch/xz-utils
+ optfeature "Support for lzop" app-arch/lzop
+ optfeature "Support for rar" app-arch/unrar
+ optfeature "Support for rpm" app-arch/rpm
+ optfeature "Support for unstuff" app-arch/stuffit
+ optfeature "Support for zoo" app-arch/zoo
+}
diff --git a/app-arch/engrampa/engrampa-1.28.1.ebuild b/app-arch/engrampa/engrampa-1.28.1.ebuild
new file mode 100644
index 000000000000..f0fa99ba4f21
--- /dev/null
+++ b/app-arch/engrampa/engrampa-1.28.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MINOR=$(($(ver_cut 2) % 2))
+if [[ ${MINOR} -eq 0 ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+fi
+
+inherit mate optfeature
+
+DESCRIPTION="Engrampa archive manager for MATE"
+HOMEPAGE="https://mate-desktop.org/ https://github.com/mate-desktop/engrampa"
+
+LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="caja magic"
+
+DEPEND="
+ >=dev-libs/glib-2.50:2
+ >=dev-libs/json-glib-0.14
+ virtual/libintl
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.22:3[X]
+ x11-libs/libSM
+ x11-libs/pango
+ caja? ( >=mate-base/caja-1.17.1 )
+ magic? ( >=sys-apps/file-5.38 )
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/libintl
+"
+BDEPEND="
+ app-text/yelp-tools
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+src_configure() {
+ mate_src_configure \
+ --disable-run-in-place \
+ $(use_enable caja caja-actions) \
+ $(use_enable magic) \
+ --disable-packagekit
+}
+
+pkg_postinst() {
+ mate_pkg_postinst
+
+ optfeature "Support for 7-zip" app-arch/p7zip
+ optfeature "Support for ace" app-arch/unace
+ optfeature "Support for arj" app-arch/arj
+ optfeature "Support for cpio" app-alternatives/cpio
+ optfeature "Support for deb" app-arch/dpkg
+ optfeature "Support for iso" app-cdr/cdrtools
+ optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
+ optfeature "Support for lha" app-arch/lha
+ optfeature "Support for lzma" app-arch/xz-utils
+ optfeature "Support for lzop" app-arch/lzop
+ optfeature "Support for rar" app-arch/unrar
+ optfeature "Support for rpm" app-arch/rpm
+ optfeature "Support for unstuff" app-arch/stuffit
+ optfeature "Support for zoo" app-arch/zoo
+}
diff --git a/app-arch/engrampa/files/engrampa-1.26.0-clang16.patch b/app-arch/engrampa/files/engrampa-1.26.0-clang16.patch
new file mode 100644
index 000000000000..334987a40baf
--- /dev/null
+++ b/app-arch/engrampa/files/engrampa-1.26.0-clang16.patch
@@ -0,0 +1,24 @@
+https://bugs.gentoo.org/875404
+https://github.com/mate-desktop/engrampa/pull/477
+
+From f54425f1f994fc235c6cdd4013eb9fcf17da9f29 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Fri, 14 Apr 2023 22:35:08 +0200
+Subject: [PATCH] file-utils: Include <strings.h> for strcasecmp
+
+The _XOPEN_SOURCE macro definition overrides _DEFAULT_SOURCE
+and disables the declaration in <string.h>.
+
+This avoids an implicit function declaration and build failures
+with future compilers.
+--- a/src/file-utils.c
++++ b/src/file-utils.c
+@@ -27,6 +27,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <strings.h>
+ #include <ctype.h>
+ #include <time.h>
+ #include <unistd.h>
+
diff --git a/app-arch/engrampa/metadata.xml b/app-arch/engrampa/metadata.xml
index 5ba07f72e73b..9a73784dd824 100644
--- a/app-arch/engrampa/metadata.xml
+++ b/app-arch/engrampa/metadata.xml
@@ -1,16 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>mate@gentoo.org</email>
- <name>Gentoo MATE Desktop</name>
+ <maintainer type="person" proxied="yes">
+ <email>oz.tiram@gmail.com</email>
+ <name>Oz Tiram</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>immoloism@gmail.com</email>
+ <name>Ian Jordan</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<use>
<flag name="caja">Enable engrampa to integrate with
<pkg>mate-base/caja</pkg> by providing entries in its context
menu</flag>
- <flag name="packagekit">Enable support for installing via Packagekit
- based on archive type</flag>
</use>
<upstream>
<remote-id type="github">mate-desktop/engrampa</remote-id>
diff --git a/app-arch/fastjar/Manifest b/app-arch/fastjar/Manifest
deleted file mode 100644
index 0d9d1f53842e..000000000000
--- a/app-arch/fastjar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fastjar-0.98.tar.gz 717984 BLAKE2B 1715f1917076799fc58c6c6cea8fb53fc3261a694fa2392c0dc6e30101a7d42de0c5c55cd593627b4d2d0ffa45e3d44ef220c9579caec669721c6b1b9996e43c SHA512 c0f9fca7b58d6acd00b90a5184dbde9ba3ffc5bf4d69512743e450649a272baf1f6af98b15d79d2b53990eaf84ef402c986035e6b615a19e35ed424348143903
diff --git a/app-arch/fastjar/fastjar-0.98-r3.ebuild b/app-arch/fastjar/fastjar-0.98-r3.ebuild
deleted file mode 100644
index c33c9d06c5b7..000000000000
--- a/app-arch/fastjar/fastjar-0.98-r3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils
-
-DESCRIPTION="A jar program written in C"
-HOMEPAGE="https://savannah.nongnu.org/projects/fastjar"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~x86-macos ~sparc-solaris"
-
-IUSE=""
-
-# bug #188542
-RDEPEND="!<=dev-java/kaffe-1.1.7-r5"
-
-src_prepare() {
- # bug #325557
- epatch "${FILESDIR}/0.98-traversal.patch"
-}
diff --git a/app-arch/fastjar/files/0.98-traversal.patch b/app-arch/fastjar/files/0.98-traversal.patch
deleted file mode 100644
index 511f4c6cd838..000000000000
--- a/app-arch/fastjar/files/0.98-traversal.patch
+++ /dev/null
@@ -1,112 +0,0 @@
---- fastjar-0.98.orig/jartool.c
-+++ fastjar-0.98/jartool.c
-@@ -790,6 +790,7 @@
- progname, jarfile);
- return 1;
- }
-+ ze->filename[len] = '\0';
- len = UNPACK_UB4(header, CEN_EFLEN);
- len += UNPACK_UB4(header, CEN_COMLEN);
- if (lseek (fd, len, SEEK_CUR) == -1)
-@@ -1257,7 +1258,7 @@
- exit_on_error("write");
-
- /* write the file name to the zip file */
-- if (1 == write(jfd, fname, file_name_length))
-+ if (-1 == write(jfd, fname, file_name_length))
- exit_on_error("write");
-
- if(verbose){
-@@ -1730,7 +1731,17 @@
- struct stat sbuf;
- int depth = 0;
-
-- tmp_buff = malloc(sizeof(char) * strlen((const char *)filename));
-+ if(*filename == '/'){
-+ fprintf(stderr, "Absolute path names are not allowed.\n");
-+ exit(EXIT_FAILURE);
-+ }
-+
-+ tmp_buff = malloc(strlen((const char *)filename));
-+
-+ if(tmp_buff == NULL) {
-+ fprintf(stderr, "Out of memory.\n");
-+ exit(EXIT_FAILURE);
-+ }
-
- for(;;){
- const ub1 *idx = (const unsigned char *)strchr((const char *)start, '/');
-@@ -1738,25 +1749,28 @@
- if(idx == NULL)
- break;
- else if(idx == start){
-+ tmp_buff[idx - filename] = '/';
- start++;
- continue;
- }
-- start = idx + 1;
-
-- strncpy(tmp_buff, (const char *)filename, (idx - filename));
-- tmp_buff[(idx - filename)] = '\0';
-+ memcpy(tmp_buff + (start - filename), (const char *)start, (idx - start));
-+ tmp_buff[idx - filename] = '\0';
-
- #ifdef DEBUG
- printf("checking the existance of %s\n", tmp_buff);
- #endif
-- if(strcmp(tmp_buff, "..") == 0){
-+ if(idx - start == 2 && memcmp(start, "..", 2) == 0){
- --depth;
- if (depth < 0){
- fprintf(stderr, "Traversal to parent directories during unpacking!\n");
- exit(EXIT_FAILURE);
- }
-- } else if (strcmp(tmp_buff, ".") != 0)
-+ } else if (idx - start != 1 || *start != '.')
- ++depth;
-+
-+ start = idx + 1;
-+
- if(stat(tmp_buff, &sbuf) < 0){
- if(errno != ENOENT)
- exit_on_error("stat");
-@@ -1765,6 +1779,7 @@
- #ifdef DEBUG
- printf("Directory exists\n");
- #endif
-+ tmp_buff[idx - filename] = '/';
- continue;
- }else {
- fprintf(stderr, "Hmmm.. %s exists but isn't a directory!\n",
-@@ -1781,10 +1796,11 @@
- if(verbose && handle)
- printf("%10s: %s/\n", "created", tmp_buff);
-
-+ tmp_buff[idx - filename] = '/';
- }
-
- /* only a directory */
-- if(strlen((const char *)start) == 0)
-+ if(*start == '\0')
- dir = TRUE;
-
- #ifdef DEBUG
-@@ -1792,7 +1808,7 @@
- #endif
-
- /* If the entry was just a directory, don't write to file, etc */
-- if(strlen((const char *)start) == 0)
-+ if(*start == '\0')
- f_fd = -1;
-
- free(tmp_buff);
-@@ -1876,7 +1892,8 @@
- exit(EXIT_FAILURE);
- }
-
-- close(f_fd);
-+ if (f_fd != -1)
-+ close(f_fd);
-
- if(verbose && dir == FALSE && handle)
- printf("%10s: %s\n",
diff --git a/app-arch/fastjar/metadata.xml b/app-arch/fastjar/metadata.xml
deleted file mode 100644
index 0d201b2da538..000000000000
--- a/app-arch/fastjar/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- Fastjar is a version of Sun's 'jar' utility, written entirely in C,
- and therefore quite a bit faster. Fastjar can be up to 100x faster
- than the stock 'jar' program running without a JIT.
- </longdescription>
-</pkgmetadata>
diff --git a/app-arch/file-roller/Manifest b/app-arch/file-roller/Manifest
index ac24e4f4c111..52e6538bbc51 100644
--- a/app-arch/file-roller/Manifest
+++ b/app-arch/file-roller/Manifest
@@ -1,2 +1,2 @@
-DIST file-roller-3.32.4.tar.xz 854444 BLAKE2B 04264e64af8ab4376fa6985683b16be7fef730a4e24044f726933b885aaaa6b630f347a256b09c2ce6183d0a0a392b33b4328715bf6d19cf7128c1980f9f4792 SHA512 16b5ddbdeacf4e9e61265ecff05e8f2e0034147c67ae7355d2442f9b26098ff253d24cb34c8e686c2ac031da6acac8e1e3c8a9f978e1eb2b446b1e045babafc7
-DIST file-roller-3.36.3.tar.xz 870608 BLAKE2B 4c57b99f2ca0eb4db3fac0216b63207d1664829ee54e21eb976a327bd65aec5abfd2a02b84bc80246fde131ede6ff63deaf8b63451db6a0fecc0121c8bce1a5b SHA512 41558ca8061276b1248fd3599e856051dcd69ca831fb4d8a33666dc373b4abed56e7ef204a6e041ceace05ea7234448d15bc7be8c48dc1809ac6d445de251370
+DIST file-roller-44.1.tar.xz 927156 BLAKE2B 60ced1711298989eda90a675095b5e7b8f1e9b84b5f4cf364bce4683ba9eac6a8a4a1857b0248cd9a49ea2161cbc5c2c36df94ebc164e195de528ba50220d1da SHA512 de0d0ce93ecba822ec495227cd484cb164a81f8b5349033d80207acc19584985f0c88bfa766a46468349e2b16b020371e2e6b73b4fb7f2f18f40f115f2391b30
+DIST file-roller-44.tar.xz 924236 BLAKE2B 12eebd312afdec8f87141d384d1476be7296073f911791328158af1ab93fcb4092ee79e0c65743c36eaa28e06b5b59503357b6c4cff87b4896d3969a67d08e45 SHA512 d40ac036161397828ded2bab7bdf1c029ef0b53fad65e0922e6eeec40442eb7a9898a7d5c3208f6dfda3ad6f51b0771f248ab64c177769b655493a44c403f824
diff --git a/app-arch/file-roller/file-roller-3.32.4.ebuild b/app-arch/file-roller/file-roller-44.1.ebuild
index ddcfe39897c2..6b9c0f7cfa2c 100644
--- a/app-arch/file-roller/file-roller-3.32.4.ebuild
+++ b/app-arch/file-roller/file-roller-44.1.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
inherit gnome.org gnome2-utils meson readme.gentoo-r1 xdg
DESCRIPTION="Archive manager for GNOME"
@@ -9,23 +10,24 @@ HOMEPAGE="https://wiki.gnome.org/Apps/FileRoller"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
-IUSE="libnotify nautilus packagekit"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="gtk-doc +introspection nautilus"
+REQUIRED_USE="gtk-doc? ( introspection )"
# gdk-pixbuf used extensively in the source
# cairo used in eggtreemultidnd.c
# pango used in fr-window
RDEPEND="
- >=app-arch/libarchive-3:=
- >=dev-libs/glib-2.36:2
+ >=dev-libs/glib-2.38:2
+ >=gui-libs/gtk-4.8.1:4[introspection?]
+ >=gui-libs/libadwaita-1.2:1
+ nautilus? ( >=gnome-base/nautilus-43.0 )
>=dev-libs/json-glib-0.14
- >=x11-libs/gtk+-3.13.2:3
+ >=app-arch/libarchive-3.2:=
+ introspection? ( dev-libs/gobject-introspection )
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/pango
- libnotify? ( >=x11-libs/libnotify-0.4.3:= )
- nautilus? ( >=gnome-base/nautilus-2.22.2 )
- packagekit? ( app-admin/packagekit-base )
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -33,6 +35,7 @@ BDEPEND="
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
+ gtk-doc? ( dev-util/gi-docgen )
"
DISABLE_AUTOFORMATTING="yes"
@@ -44,7 +47,7 @@ and install the relevant package. For example:
ace - app-arch/unace
arj - app-arch/arj
brotli - app-arch/brotli
-cpio - app-arch/cpio
+cpio - app-alternatives/cpio
deb - app-arch/dpkg
iso - app-cdr/cdrtools
jar,zip - app-arch/zip and app-arch/unzip
@@ -54,33 +57,37 @@ lz4 - app-arch/lz4
rar - app-arch/unrar or app-arch/unar
rpm - app-arch/rpm
unstuff - app-arch/stuffit
+zstd - app-arch/zstd
zoo - app-arch/zoo"
-PATCHES=(
- # https://gitlab.gnome.org/GNOME/file-roller/merge_requests/31
- "${FILESDIR}"/${PN}-3.32.4-fno-common.patch
-)
-
src_prepare() {
# File providing Gentoo package names for various archivers
- cp -v "${FILESDIR}"/3.32-packages.match data/packages.match || die
+ cp -v "${FILESDIR}"/3.36-packages.match data/packages.match || die
- xdg_src_prepare
+ default
+ xdg_environment_reset
}
src_configure() {
local emesonargs=(
-Drun-in-place=false
- $(meson_use nautilus nautilus-actions)
- $(meson_use libnotify notification)
- $(meson_use packagekit)
- -Dlibarchive=true
+ $(meson_feature nautilus nautilus-actions)
+ -Dnotification=enabled
+ -Duse_native_appchooser=false
+ -Dpackagekit=false
+ -Dlibarchive=enabled
+ $(meson_feature introspection)
+ $(meson_feature gtk-doc api_docs)
)
meson_src_configure
}
src_install() {
meson_src_install
+ if use gtk-doc; then
+ mkdir -p "${ED}"/usr/share/gtk-doc/ || die
+ mv "${ED}"/usr/share/doc/file-roller "${ED}"/usr/share/gtk-doc/file-roller || die
+ fi
readme.gentoo_create_doc
}
diff --git a/app-arch/file-roller/file-roller-3.36.3.ebuild b/app-arch/file-roller/file-roller-44.ebuild
index 4e98102c8e8b..dcb5b5610d53 100644
--- a/app-arch/file-roller/file-roller-3.36.3.ebuild
+++ b/app-arch/file-roller/file-roller-44.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
inherit gnome.org gnome2-utils meson readme.gentoo-r1 xdg
DESCRIPTION="Archive manager for GNOME"
@@ -9,23 +10,24 @@ HOMEPAGE="https://wiki.gnome.org/Apps/FileRoller"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
-IUSE="libnotify nautilus packagekit"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
+IUSE="gtk-doc +introspection nautilus"
+REQUIRED_USE="gtk-doc? ( introspection )"
# gdk-pixbuf used extensively in the source
# cairo used in eggtreemultidnd.c
# pango used in fr-window
RDEPEND="
- >=app-arch/libarchive-3:=
>=dev-libs/glib-2.38:2
+ >=gui-libs/gtk-4.8.1:4[introspection?]
+ >=gui-libs/libadwaita-1.2:1
+ nautilus? ( >=gnome-base/nautilus-43.0 )
>=dev-libs/json-glib-0.14
- >=x11-libs/gtk+-3.22.0:3
+ >=app-arch/libarchive-3.2:=
+ introspection? ( dev-libs/gobject-introspection )
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/pango
- libnotify? ( >=x11-libs/libnotify-0.4.3:= )
- nautilus? ( >=gnome-base/nautilus-3.28.0 )
- packagekit? ( app-admin/packagekit-base )
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -33,6 +35,7 @@ BDEPEND="
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
+ gtk-doc? ( dev-util/gi-docgen )
"
DISABLE_AUTOFORMATTING="yes"
@@ -44,7 +47,7 @@ and install the relevant package. For example:
ace - app-arch/unace
arj - app-arch/arj
brotli - app-arch/brotli
-cpio - app-arch/cpio
+cpio - app-alternatives/cpio
deb - app-arch/dpkg
iso - app-cdr/cdrtools
jar,zip - app-arch/zip and app-arch/unzip
@@ -61,22 +64,30 @@ src_prepare() {
# File providing Gentoo package names for various archivers
cp -v "${FILESDIR}"/3.36-packages.match data/packages.match || die
- xdg_src_prepare
+ default
+ xdg_environment_reset
}
src_configure() {
local emesonargs=(
-Drun-in-place=false
- $(meson_use nautilus nautilus-actions)
- $(meson_use libnotify notification)
- $(meson_use packagekit)
- -Dlibarchive=true
+ $(meson_feature nautilus nautilus-actions)
+ -Dnotification=enabled
+ -Duse_native_appchooser=false
+ -Dpackagekit=false
+ -Dlibarchive=enabled
+ $(meson_feature introspection)
+ $(meson_feature gtk-doc api_docs)
)
meson_src_configure
}
src_install() {
meson_src_install
+ if use gtk-doc; then
+ mkdir -p "${ED}"/usr/share/gtk-doc/ || die
+ mv "${ED}"/usr/share/doc/file-roller "${ED}"/usr/share/gtk-doc/file-roller || die
+ fi
readme.gentoo_create_doc
}
diff --git a/app-arch/file-roller/files/3.32-packages.match b/app-arch/file-roller/files/3.32-packages.match
deleted file mode 100644
index 09f1513968e3..000000000000
--- a/app-arch/file-roller/files/3.32-packages.match
+++ /dev/null
@@ -1,34 +0,0 @@
-[Package Matches]
-arj=app-arch/arj
-binutils=sys-devel/binutils
-brotli=app-arch/brotli
-bzip2=app-arch/bzip2
-cpio=app-arch/cpio
-dpkg=app-arch/dpkg
-genisoimage=virtual/cdrtools
-gzip=app-arch/gzip
-lha=app-arch/lha
-lrzip=app-arch/lrzip
-lz4=app-arch/lz4
-lzip=app-arch/lzip
-lzma=app-arch/xz-utils
-lzop=app-arch/lzop
-ncompress=app-arch/ncompress
-p7zip=app-arch/p7zip
-p7zip-full=
-p7zip-rar=
-rar=app-arch/rar
-rpm=app-arch/rpm
-rzip=app-arch/rzip
-zip=app-arch/zip
-zoo=app-arch/zoo
-tar=app-arch/tar
-unace=app-arch/unace
-unalz=
-unarchiver=app-arch/unar
-unrar=app-arch/unrar
-unsquashfs=sys-fs/squashfs-tools
-unstaff=
-unzip=app-arch/unzip
-xz=app-arch/xz-utils
-
diff --git a/app-arch/file-roller/files/3.36-packages.match b/app-arch/file-roller/files/3.36-packages.match
index 0a26adebb250..c84d4517a59b 100644
--- a/app-arch/file-roller/files/3.36-packages.match
+++ b/app-arch/file-roller/files/3.36-packages.match
@@ -3,9 +3,9 @@ arj=app-arch/arj
binutils=sys-devel/binutils
brotli=app-arch/brotli
bzip2=app-arch/bzip2
-cpio=app-arch/cpio
+cpio=app-alternatives/cpio
dpkg=app-arch/dpkg
-genisoimage=virtual/cdrtools
+genisoimage=app-cdr/cdrtools
gzip=app-arch/gzip
lha=app-arch/lha
lrzip=app-arch/lrzip
diff --git a/app-arch/file-roller/files/file-roller-3.32.4-fno-common.patch b/app-arch/file-roller/files/file-roller-3.32.4-fno-common.patch
deleted file mode 100644
index 9239810c901d..000000000000
--- a/app-arch/file-roller/files/file-roller-3.32.4-fno-common.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 55fa0fb287e7fb7cee336cac0a6c1a94e505dc84 Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Wed, 19 Feb 2020 13:18:18 +0100
-Subject: [PATCH] Fix compiling with GCC 10
-
-* GCC 10 defaults to `-fno-common`.
-
-Bug: https://bugs.gentoo.org/706728
----
- src/fr-application.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/src/fr-application.c b/src/fr-application.c
-index c148c4f9..00ebe552 100644
---- a/src/fr-application.c
-+++ b/src/fr-application.c
-@@ -42,7 +42,6 @@
- #define SERVICE_TIMEOUT 10
-
-
--gint ForceDirectoryCreation;
- static char **remaining_args;
- static char *arg_add_to = NULL;
- static int arg_add = FALSE;
---
-2.25.1
-
diff --git a/app-arch/file-roller/metadata.xml b/app-arch/file-roller/metadata.xml
index c6657ffe3f7f..95e520228548 100644
--- a/app-arch/file-roller/metadata.xml
+++ b/app-arch/file-roller/metadata.xml
@@ -1,18 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
- <use>
- <flag name="nautilus">Build contextual menu extension for
- <pkg>gnome-base/nautilus</pkg>.</flag>
- <flag name="packagekit">Enable support for the distro-neutral package
- manager GUI PackageKit</flag>
- </use>
- <upstream>
- <remote-id type="sourceforge">fileroller</remote-id>
- <remote-id type="cpe">cpe:/a:paolo_bacchilega:file_roller</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <use>
+ <flag name="nautilus">Build contextual menu extension for <pkg>gnome-base/nautilus</pkg>.</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:paolo_bacchilega:file_roller</remote-id>
+ <remote-id type="gnome-gitlab">GNOME/file-roller</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/funzix/funzix-1.0.ebuild b/app-arch/funzix/funzix-1.0-r1.ebuild
index 8f62fd7801f6..eb1b037916a9 100644
--- a/app-arch/funzix/funzix-1.0.ebuild
+++ b/app-arch/funzix/funzix-1.0-r1.ebuild
@@ -1,18 +1,20 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
-DESCRIPTION="unpacker for the bogus ZIX format"
-HOMEPAGE="http://funzix.sourceforge.net/"
+DESCRIPTION="Unpacker for the bogus ZIX format"
+HOMEPAGE="https://funzix.sourceforge.io/"
SRC_URI="mirror://sourceforge/funzix/${P}.tar.bz2"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
+
+RDEPEND="sys-libs/zlib"
+DEPEND="${RDEPEND}"
PATCHES=( "${FILESDIR}"/${PN}-1.0-fix-build-system.patch )
diff --git a/app-arch/funzix/metadata.xml b/app-arch/funzix/metadata.xml
index ce25c1c68815..4148b90f4337 100644
--- a/app-arch/funzix/metadata.xml
+++ b/app-arch/funzix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/gcab/Manifest b/app-arch/gcab/Manifest
index 8922b04345a1..52c80cbf9c84 100644
--- a/app-arch/gcab/Manifest
+++ b/app-arch/gcab/Manifest
@@ -1 +1 @@
-DIST gcab-1.4.tar.xz 78240 BLAKE2B 8b857c116fab636db93463cee7d6b809c3c7b2bdf3896b7b5b5b66ebf270b284b356710933ec17584143bcef5c1f5c555811dd05ea98399f327047476a33fc16 SHA512 66a2e0d0a5888c555153356ce808f602053e71b76af19794db7e3bbf9516fe791805068838b4e208698cd645ada7a08610ac95f846fa81e00a9b955016306299
+DIST gcab-1.6.tar.xz 82088 BLAKE2B 04e78229649f1c5cee8d9a9a52e6489264a0356fd21830b71f09c7a22ac73a91ae721f5a99bedbe7556265c1bdd134b3500aad580407c31b0aac487ef1810bf8 SHA512 26b8dcf47ba98e7cc073a551d1c965c13a72d298c8a4e124823bdbb20fe314c8f687232df9ae824a54d81f96fe7d9ac1a40aed24e51f8706595079cec2c61fc9
diff --git a/app-arch/gcab/gcab-1.4.ebuild b/app-arch/gcab/gcab-1.6.ebuild
index ae198f6020d2..c97807f55159 100644
--- a/app-arch/gcab/gcab-1.4.ebuild
+++ b/app-arch/gcab/gcab-1.6.ebuild
@@ -1,19 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-VALA_USE_DEPEND="vapigen"
+EAPI=8
inherit gnome.org meson vala xdg
DESCRIPTION="Library and tool for working with Microsoft Cabinet (CAB) files"
-HOMEPAGE="https://wiki.gnome.org/msitools"
+HOMEPAGE="https://wiki.gnome.org/msitools https://gitlab.gnome.org/GNOME/gcab"
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="gtk-doc +introspection test vala"
+RESTRICT="!test? ( test )"
REQUIRED_USE="vala? ( introspection )"
RDEPEND="
@@ -23,20 +23,20 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="
- >=dev-util/meson-0.50.0
dev-util/glib-utils
- gtk-doc? ( >=dev-util/gtk-doc-1.14
- app-text/docbook-xml-dtd:4.3 )
+ gtk-doc? (
+ >=dev-util/gtk-doc-1.14
+ app-text/docbook-xml-dtd:4.3
+ )
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
vala? ( $(vala_depend) )
"
-RESTRICT="!test? ( test )"
-
src_prepare() {
- xdg_src_prepare
- use vala && vala_src_prepare
+ default
+ xdg_environment_reset
+ use vala && vala_setup
}
src_configure() {
diff --git a/app-arch/gcab/metadata.xml b/app-arch/gcab/metadata.xml
index 39980802b1da..ca769f6cf4a9 100644
--- a/app-arch/gcab/metadata.xml
+++ b/app-arch/gcab/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gnome-gitlab">GNOME/gcab</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/gnome-autoar/Manifest b/app-arch/gnome-autoar/Manifest
index b1d6d031346a..1e2bed18fb1e 100644
--- a/app-arch/gnome-autoar/Manifest
+++ b/app-arch/gnome-autoar/Manifest
@@ -1 +1 @@
-DIST gnome-autoar-0.2.4.tar.xz 294956 BLAKE2B 20e2054f996443f7c3d84d91c41705c8c63df8aea626cb54c17a9cb0c20c7109dc1dba99ad9489d8870674b0a3bbdef23da6ef07684f9c01870d421873d5bed1 SHA512 66750ae30bf9f59820f06653898eb33ac4edbb63976a02d15417118a068abd9292350220713813ddfdd1f2e77db7b3a8f8980f0c70a93d1bb87a9405e013de19
+DIST gnome-autoar-0.4.4.tar.xz 51300 BLAKE2B db3390f771205166aaf9b6a90da15bd68c80ad5e874cc7ddc14b2a79d4dc2b3d41b9636acd6f44e4a6ce3590c3659c51cd8a910ab4e588aba41cdc7dbcf72725 SHA512 c38d3703e61d7338b97c362127bdc61f77d259eecd662f3963f28bfcb1ce7be8a948e9a57e79a8181a55dfc3635f671f2160ade947a1b5122204a2dc0025682d
diff --git a/app-arch/gnome-autoar/gnome-autoar-0.2.4.ebuild b/app-arch/gnome-autoar/gnome-autoar-0.2.4.ebuild
deleted file mode 100644
index 136e3777af79..000000000000
--- a/app-arch/gnome-autoar/gnome-autoar-0.2.4.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-VALA_USE_DEPEND="vapigen"
-
-inherit gnome2 vala
-
-DESCRIPTION="Automatic archives creating and extracting library"
-HOMEPAGE="https://git.gnome.org/browse/gnome-autoar"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-IUSE="gtk +introspection vala"
-REQUIRED_USE="vala? ( introspection )"
-
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-RDEPEND="
- >=app-arch/libarchive-3.2.0
- >=dev-libs/glib-2.35.6:2
- gtk? ( >=x11-libs/gtk+-3.2:3[introspection?] )
- introspection? ( >=dev-libs/gobject-introspection-1.30.0:= )
-"
-DEPEND="${RDEPEND}
- >=dev-util/gtk-doc-am-1.14
- virtual/pkgconfig
- vala? ( $(vala_depend) )
-"
-
-src_prepare() {
- use vala && vala_src_prepare
- gnome2_src_prepare
-}
-
-src_configure() {
- gnome2_src_configure \
- --disable-static \
- $(use_enable introspection) \
- $(use_enable vala) \
- $(use_enable gtk)
-}
diff --git a/app-arch/gnome-autoar/gnome-autoar-0.4.4.ebuild b/app-arch/gnome-autoar/gnome-autoar-0.4.4.ebuild
new file mode 100644
index 000000000000..b9065f4e4615
--- /dev/null
+++ b/app-arch/gnome-autoar/gnome-autoar-0.4.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+VALA_USE_DEPEND="vapigen"
+
+inherit gnome.org meson vala
+
+DESCRIPTION="Automatic archives creating and extracting library"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-autoar"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE="gtk gtk-doc +introspection test vala"
+REQUIRED_USE="vala? ( introspection ) gtk-doc? ( gtk )"
+RESTRICT="!test? ( test )"
+
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
+
+RDEPEND="
+ >=app-arch/libarchive-3.4.0:=
+ >=dev-libs/glib-2.35.6:2
+ gtk? ( >=x11-libs/gtk+-3.2:3[introspection?] )
+ introspection? ( >=dev-libs/gobject-introspection-1.30.0:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-util/glib-utils
+ gtk-doc? ( dev-util/gtk-doc
+ app-text/docbook-xml-dtd:4.3 )
+ vala? ( $(vala_depend) )
+"
+
+src_prepare() {
+ use vala && vala_src_prepare
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use gtk)
+ $(meson_feature introspection)
+ $(meson_use vala vapi)
+ $(meson_use test tests)
+ $(meson_use gtk-doc gtk_doc)
+ )
+ meson_src_configure
+}
diff --git a/app-arch/gnome-autoar/metadata.xml b/app-arch/gnome-autoar/metadata.xml
index 073497f97b3c..28848d12a0dd 100644
--- a/app-arch/gnome-autoar/metadata.xml
+++ b/app-arch/gnome-autoar/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
- <longdescription lang="en">
- gnome-autoar provides functions, widgets, and gschemas for GNOME applications which want to use archives as a method to transfer directories over the Internet.
- </longdescription>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <longdescription lang="en">
+ gnome-autoar provides functions, widgets, and gschemas for GNOME applications which want to use archives as a method to transfer directories over the Internet.
+ </longdescription>
+ <upstream>
+ <remote-id type="gnome-gitlab">GNOME/gnome-autoar</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/gtk-splitter/files/gtk-splitter-2.2.1-format-security.patch b/app-arch/gtk-splitter/files/gtk-splitter-2.2.1-format-security.patch
new file mode 100644
index 000000000000..7c8cb0e382a4
--- /dev/null
+++ b/app-arch/gtk-splitter/files/gtk-splitter-2.2.1-format-security.patch
@@ -0,0 +1,44 @@
+--- a/src/dostextfile.c
++++ b/src/dostextfile.c
+@@ -30,14 +30,14 @@
+ /* Write a string to the file pointed to by b without the eoln. */
+ void write_dostextfile(FILE *b, char *data)
+ {
+- fprintf( b, data );
++ fprintf( b, "%s", data );
+ fflush( b );
+ }
+
+ /* Write a string to the file pointed to by b with the eoln. */
+ void writeln_dostextfile(FILE *b, char *data)
+ {
+- fprintf( b, data );
++ fprintf( b, "%s", data );
+ fputc( 0x0d, b );
+ fputc( 0x0a, b );
+ fflush( b );
+--- a/src/interface.c
++++ b/src/interface.c
+@@ -216,6 +216,7 @@
+ GTK_DIALOG_MODAL,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ error );
+
+ /* Display the error dialog. */
+@@ -233,12 +234,14 @@
+ GTK_DIALOG_MODAL,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ "File verification successful" );
+ else
+ dialog = gtk_message_dialog_new( NULL,
+ GTK_DIALOG_MODAL,
+ GTK_MESSAGE_WARNING,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ "File verification unsuccessful" );
+
+ /* Display the error dialog. */
diff --git a/app-arch/gtk-splitter/gtk-splitter-2.2.1-r1.ebuild b/app-arch/gtk-splitter/gtk-splitter-2.2.1-r2.ebuild
index 0ccad4c508c7..6aefd867f9c7 100644
--- a/app-arch/gtk-splitter/gtk-splitter-2.2.1-r1.ebuild
+++ b/app-arch/gtk-splitter/gtk-splitter-2.2.1-r2.ebuild
@@ -1,12 +1,10 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
-
-inherit eutils
+EAPI=7
DESCRIPTION="Split files into smaller pieces and combine them back together"
-HOMEPAGE="http://gtk-splitter.sourceforge.net"
+HOMEPAGE="https://gtk-splitter.sourceforge.net"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
@@ -14,18 +12,19 @@ SLOT="0"
KEYWORDS="amd64 ppc x86"
IUSE="crypt"
-RDEPEND="x11-libs/gtk+:2
+RDEPEND="
+ x11-libs/gtk+:2
virtual/libintl:0
crypt? ( >=app-crypt/mhash-0.8:0 )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
-DEPEND="${RDEPEND}
- virtual/pkgconfig:*"
-
-src_prepare() {
- epatch "${FILESDIR}/"${P}-r1-desktop-QA-fixes.patch
-}
+PATCHES=(
+ "${FILESDIR}"/${P}-r1-desktop-QA-fixes.patch
+ "${FILESDIR}"/${P}-format-security.patch
+)
-src_compile() {
+src_configure() {
default
if ! use crypt ; then
@@ -35,5 +34,5 @@ src_compile() {
}
src_install() {
- emake DESTDIR="${D}" docdir="/usr/share/doc/${PF}" install
+ emake DESTDIR="${D}" docdir="${EPREFIX}/usr/share/doc/${PF}" install
}
diff --git a/app-arch/gtk-splitter/metadata.xml b/app-arch/gtk-splitter/metadata.xml
index 7bb322c23f5a..00a5b6ddf3eb 100644
--- a/app-arch/gtk-splitter/metadata.xml
+++ b/app-arch/gtk-splitter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/gxz/Manifest b/app-arch/gxz/Manifest
new file mode 100644
index 000000000000..3fac29d8d583
--- /dev/null
+++ b/app-arch/gxz/Manifest
@@ -0,0 +1 @@
+DIST gxz-0.5.12.tar.gz 4176087 BLAKE2B 0bf4795ec1d008ef956d42d9d78b3f3f65bb9555436c64869a82aa6c058ac3aa5e8912a8e451cdafccaeaf4d9bb30404e2cd60a00f620baf01e6b6d892d59a3f SHA512 13928dfbd8514eb7c778a84405ba2342159da8f59783f82b5774643190b12d5fc1aed927b67946d5ef246d5cc61b3be23eaa08695c61aea70229617b1ce757ff
diff --git a/app-arch/gxz/gxz-0.5.12.ebuild b/app-arch/gxz/gxz-0.5.12.ebuild
new file mode 100644
index 000000000000..5413b88e41b4
--- /dev/null
+++ b/app-arch/gxz/gxz-0.5.12.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pure golang package for reading and writing xz-compressed files"
+HOMEPAGE="https://github.com/ulikunitz/xz"
+SRC_URI="https://github.com/ulikunitz/xz/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/xz-${PV}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ ego build ./cmd/gxz
+}
+
+src_test() {
+ # TODO: Need to give it test data?
+ ego test ./cmd/gxz
+}
+
+src_install() {
+ dobin gxz
+}
diff --git a/app-arch/gxz/metadata.xml b/app-arch/gxz/metadata.xml
new file mode 100644
index 000000000000..dbf55dc84298
--- /dev/null
+++ b/app-arch/gxz/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ulikunitz/xz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/gzip/Manifest b/app-arch/gzip/Manifest
index 81f9c56bf5d5..694ed8bba701 100644
--- a/app-arch/gzip/Manifest
+++ b/app-arch/gzip/Manifest
@@ -1,2 +1,2 @@
-DIST gzip-1.10.tar.xz 775144 BLAKE2B 431dc0fd11061eabd9db86594777b86510b124b124fd74799eacd67334631af60f638be2638413bee0153a9da35528d0aecc5b5083152c395223705400c9103b SHA512 e6ba9e3906cdb6a6235b213515093d02afa1722686f73eddacbacae628542b586b449829783b6a1701e9b9e0c4d4dfa6845904d3b6b010f5cf21aec4997c9299
-DIST gzip-1.9.tar.xz 762516 BLAKE2B 4001fc7a770634916d52b026dab1b621fc96275bfb61ec2df2d0e7d7ec1c81414270d3c866034e6ef758870f38e9d4396a25832abe558915a7ded1f1511eb4b0 SHA512 c0852e7f7662141e79d14bc36e50f1940dba3e804feff3b0b8fa084ffec720ac245352282d2f1db117fadc95758424dd418d192b94621dac4367834ccf101fad
+DIST gzip-1.13.tar.xz 838248 BLAKE2B f0e3b4c28bafcd3b59b65ac2d71218dc58d81b52c6921c1be038757c99e99184178c5d0e9674caa5099713b8b64e8c85cf061f4abfa20b73b478288f121fb05d SHA512 e3d4d4aa4b2e53fdad980620307257c91dfbbc40bcec9baa8d4e85e8327f55e2ece552c9baf209df7b66a07103ab92d4954ac53c86c57fbde5e1dd461143f94c
+DIST gzip-1.13.tar.xz.sig 833 BLAKE2B 42e38fa7b3a6b6d21a18308cf662844ed84e1a142a945f3f3142db0a14212c0e642de514abb1307ec12ee7bb9644472cc3aed40582d9c266ab24808acbca0215 SHA512 f95e016f61f4a67cb4cec6cede2510af6bb5567d72bbd3d70210a6d5cf3ee5fea8f0cbf8f7b612fa52f2ecfd9dba050d9cd4494075ce5ac4abac7b74eaa7ccbc
diff --git a/app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch b/app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch
deleted file mode 100644
index 20039b9f0d2c..000000000000
--- a/app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch
+++ /dev/null
@@ -1,134 +0,0 @@
-fix build failure against glibc-2.28
-
-https://bugs.gentoo.org/663928
-
-Adopted gnulib's upstream patch:
-
-From 4af4a4a71827c0bc5e0ec67af23edef4f15cee8e Mon Sep 17 00:00:00 2001
-From: Paul Eggert <eggert@cs.ucla.edu>
-Date: Mon, 5 Mar 2018 10:56:29 -0800
-Subject: [PATCH] fflush: adjust to glibc 2.28 libio.h removal
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Problem reported by Daniel P. Berrangé in:
-https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
-* lib/fflush.c (clear_ungetc_buffer_preserving_position)
-(disable_seek_optimization, rpl_fflush):
-* lib/fpurge.c (fpurge):
-* lib/freadahead.c (freadahead):
-* lib/freading.c (freading):
-* lib/fseeko.c (fseeko):
-* lib/fseterr.c (fseterr):
-Check _IO_EOF_SEEN instead of _IO_ftrylockfile.
-* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]:
-Define if not already defined.
----
- lib/fflush.c | 6 +++---
- lib/fpurge.c | 2 +-
- lib/freading.c | 2 +-
- lib/fseeko.c | 4 ++--
- lib/fseterr.c | 2 +-
- lib/stdio-impl.h | 6 ++++++
-
---- a/lib/fflush.c
-+++ b/lib/fflush.c
-@@ -33,7 +33,7 @@
- #undef fflush
-
-
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-
- /* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */
- static void
-@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp)
-
- #endif
-
--#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
-+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
-
- # if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
-@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream)
- if (stream == NULL || ! freading (stream))
- return fflush (stream);
-
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-
- clear_ungetc_buffer_preserving_position (stream);
-
---- a/lib/fpurge.c
-+++ b/lib/fpurge.c
-@@ -62,7 +62,7 @@ fpurge (FILE *fp)
- /* Most systems provide FILE as a struct and the necessary bitmask in
- <stdio.h>, because they need it for implementing getc() and putc() as
- fast macros. */
--# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- fp->_IO_read_end = fp->_IO_read_ptr;
- fp->_IO_write_ptr = fp->_IO_write_base;
- /* Avoid memory leak when there is an active ungetc buffer. */
---- a/lib/freading.c
-+++ b/lib/freading.c
-@@ -31,7 +31,7 @@ freading (FILE *fp)
- /* Most systems provide FILE as a struct and the necessary bitmask in
- <stdio.h>, because they need it for implementing getc() and putc() as
- fast macros. */
--# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- return ((fp->_flags & _IO_NO_WRITES) != 0
- || ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
- && fp->_IO_read_base != NULL));
---- a/lib/fseeko.c
-+++ b/lib/fseeko.c
-@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int whence)
- #endif
-
- /* These tests are based on fpurge.c. */
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- if (fp->_IO_read_end == fp->_IO_read_ptr
- && fp->_IO_write_ptr == fp->_IO_write_base
- && fp->_IO_save_base == NULL)
-@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int whence)
- return -1;
- }
-
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- fp->_flags &= ~_IO_EOF_SEEN;
- fp->_offset = pos;
- #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
---- a/lib/fseterr.c
-+++ b/lib/fseterr.c
-@@ -29,7 +29,7 @@ fseterr (FILE *fp)
- /* Most systems provide FILE as a struct and the necessary bitmask in
- <stdio.h>, because they need it for implementing getc() and putc() as
- fast macros. */
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- fp->_flags |= _IO_ERR_SEEN;
- #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
---- a/lib/stdio-impl.h
-+++ b/lib/stdio-impl.h
-@@ -18,6 +18,12 @@
- the same implementation of stdio extension API, except that some fields
- have different naming conventions, or their access requires some casts. */
-
-+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
-+ problem by defining it ourselves. FIXME: Do not rely on glibc
-+ internals. */
-+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
-+# define _IO_IN_BACKUP 0x100
-+#endif
-
- /* BSD stdio derived implementations. */
-
---
-2.19.1
-
diff --git a/app-arch/gzip/gzip-1.10.ebuild b/app-arch/gzip/gzip-1.10.ebuild
deleted file mode 100644
index a73ef7a9df83..000000000000
--- a/app-arch/gzip/gzip-1.10.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-DESCRIPTION="Standard GNU compressor"
-HOMEPAGE="https://www.gnu.org/software/gzip/"
-SRC_URI="mirror://gnu/gzip/${P}.tar.xz
- mirror://gnu-alpha/gzip/${P}.tar.xz
- mirror://gentoo/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pic static"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
-)
-
-src_configure() {
- use static && append-flags -static
- # avoid text relocation in gzip
- use pic && export DEFS="NO_ASM"
- econf --disable-gcc-warnings #663928
-}
-
-src_install() {
- default
- docinto txt
- dodoc algorithm.doc gzip.doc
-
- # keep most things in /usr, just the fun stuff in /
- dodir /bin
- mv "${ED%/}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED%/}"/bin/ || die
- sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED%/}"/bin/gunzip || die
-}
diff --git a/app-arch/gzip/gzip-1.13.ebuild b/app-arch/gzip/gzip-1.13.ebuild
new file mode 100644
index 000000000000..a864a1774f32
--- /dev/null
+++ b/app-arch/gzip/gzip-1.13.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gzip.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="Standard GNU compressor"
+HOMEPAGE="https://www.gnu.org/software/gzip/"
+if [[ ${PV} == *_p* ]] ; then
+ # Note: could put this in devspace, but if it's gone, we don't want
+ # it in tree anyway. It's just for testing.
+ MY_SNAPSHOT="$(ver_cut 1-2).31-7553"
+ SRC_URI="
+ https://meyering.net/gzip/gzip-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz
+ verify-sig? (
+ https://meyering.net/gzip/gzip-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig
+ )
+ "
+ S="${WORKDIR}"/${PN}-${MY_SNAPSHOT}
+else
+ SRC_URI="
+ mirror://gnu/gzip/${P}.tar.xz
+ verify-sig? (
+ mirror://gnu/gzip/${P}.tar.xz.sig
+ )
+ "
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+if [[ ${PV} != *_p* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="pic static"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gzip )"
+RDEPEND="!app-arch/pigz[symlink(-)]"
+PDEPEND="
+ app-alternatives/gzip
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
+)
+
+src_configure() {
+ use static && append-flags -static
+
+ # Avoid text relocation in gzip
+ use pic && export DEFS="NO_ASM"
+
+ # bug #663928
+ econf --disable-gcc-warnings
+}
+
+src_install() {
+ default
+
+ docinto txt
+ dodoc algorithm.doc gzip.doc
+
+ # Avoid conflict with app-arch/ncompress
+ rm "${ED}"/usr/bin/uncompress || die
+
+ # keep most things in /usr, just the fun stuff in /
+ # also rename them to avoid conflict with app-alternatives/gzip
+ dodir /bin
+ local x
+ for x in gunzip gzip zcat; do
+ mv "${ED}/usr/bin/${x}" "${ED}/bin/${x}-reference" || die
+ done
+ mv "${ED}"/usr/share/man/man1/gzip{,-reference}.1 || die
+ rm "${ED}"/usr/share/man/man1/{gunzip,zcat}.1 || die
+}
+
+pkg_postinst() {
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ local ver
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${ver}" -lt "1.12-r2"; then
+ ewarn "This package no longer installs 'uncompress'."
+ ewarn "Please use 'gzip -d' to decompress .Z files."
+ fi
+ done
+ fi
+
+ # ensure to preserve the symlinks before app-alternatives/gzip
+ # is installed
+ local x
+ for x in gunzip gzip zcat; do
+ if [[ ! -h ${EROOT}/bin/${x} ]]; then
+ ln -s "${x}-reference" "${EROOT}/bin/${x}" || die
+ fi
+ done
+}
diff --git a/app-arch/gzip/gzip-1.9.ebuild b/app-arch/gzip/gzip-1.9.ebuild
deleted file mode 100644
index 05432bd427eb..000000000000
--- a/app-arch/gzip/gzip-1.9.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-DESCRIPTION="Standard GNU compressor"
-HOMEPAGE="https://www.gnu.org/software/gzip/"
-SRC_URI="mirror://gnu/gzip/${P}.tar.xz
- mirror://gnu-alpha/gzip/${P}.tar.xz
- mirror://gentoo/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pic static"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
- "${FILESDIR}/${PN}-1.9-gnulib-glibc-2.28.patch"
-)
-
-src_configure() {
- use static && append-flags -static
- # avoid text relocation in gzip
- use pic && export DEFS="NO_ASM"
- econf --disable-gcc-warnings #663928
-}
-
-src_install() {
- default
- docinto txt
- dodoc algorithm.doc gzip.doc
-
- # keep most things in /usr, just the fun stuff in /
- dodir /bin
- mv "${ED%/}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED%/}"/bin/ || die
- sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED%/}"/bin/gunzip || die
-}
diff --git a/app-arch/gzip/metadata.xml b/app-arch/gzip/metadata.xml
index bbcfb3d82afd..d01e5bd7a1eb 100644
--- a/app-arch/gzip/metadata.xml
+++ b/app-arch/gzip/metadata.xml
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="cpe">cpe:/a:gnu:gzip</remote-id>
-</upstream>
-<use>
-<flag name="pic">disable optimized assembly code that is not PIC friendly</flag>
-</use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:gzip</remote-id>
+ <remote-id type="savannah">gzip</remote-id>
+ </upstream>
+ <use>
+ <flag name="pic">disable optimized assembly code that is not PIC friendly</flag>
+ </use>
</pkgmetadata>
diff --git a/app-arch/hardlink/hardlink-0.3.2.ebuild b/app-arch/hardlink/hardlink-0.3.2.ebuild
index 04acefe5304e..e8474e2e6476 100644
--- a/app-arch/hardlink/hardlink-0.3.2.ebuild
+++ b/app-arch/hardlink/hardlink-0.3.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,7 +20,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
-DOCS=( README ${T}/README.rsync )
+DOCS=( README "${T}"/README.rsync )
src_prepare() {
default
@@ -38,5 +38,5 @@ src_prepare() {
}
src_compile() {
- emake CC=$(tc-getCC)
+ emake CC="$(tc-getCC)"
}
diff --git a/app-arch/hardlink/metadata.xml b/app-arch/hardlink/metadata.xml
index 3d6eb23ac199..f409a4f8d262 100644
--- a/app-arch/hardlink/metadata.xml
+++ b/app-arch/hardlink/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
<name>Robin H. Johnson</name>
</maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>shell-tools@gentoo.org</email>
<name>Gentoo Shell Tools Project</name>
</maintainer>
diff --git a/app-arch/innoextract/Manifest b/app-arch/innoextract/Manifest
index 149c2f7dd31a..6bf2e9dbdd77 100644
--- a/app-arch/innoextract/Manifest
+++ b/app-arch/innoextract/Manifest
@@ -1,2 +1 @@
-DIST innoextract-1.7.tar.gz 195123 BLAKE2B 5dffb49da7ec3f8e48a70d0809e059179e84610dd50397b8ca472b9f5a96a5edd0cf36898f0e513b3f70685829e2b8edbd7d7932c9f1b47706c2929f596867e5 SHA512 5e92625a411a4351dd4639d4b63e8664519c6697122a0679c010412e94a1e5da95324c33be16211f91c2b25b8cea40fe4ba4da5e19c12d0c27a4916159465ca4
-DIST innoextract-1.8.tar.gz 205553 BLAKE2B 223f0997ae00f2a854912befca25595b275ece8e0fe4f4451d6aa3db14ad1ed98474a19c919c56d958e99c0175be647d3eb3c14d7869504405a7bf6db3a35957 SHA512 2c68009333f02a8a677c084e9c95c835d84a73e60c9b0c70fee5f23fd9a7a640cf2aa7e0476c55579774ac7079498fa24668f9388493bbc13415ff5a5b06ac9c
+DIST innoextract-1.9.tar.gz 206931 BLAKE2B 1d5f0d13a7cd52262b277263f061ecab85a3419197bceb22938a0d10000578603cc2c2b972a45474027cfea8e43b8bf89d680035034785210842477b147811fa SHA512 2b18f7bb7f50744bcb1bdcd25e57e0760193b179c77b55e0f63c537e55afc98de3b0380da3cae470ce97660ed41a7ffbb48c8c25329c9ce9b3811d9aec74bcde
diff --git a/app-arch/innoextract/files/innoextract-1.9-boost-1.85.0.patch b/app-arch/innoextract/files/innoextract-1.9-boost-1.85.0.patch
new file mode 100644
index 000000000000..23e4554fc53e
--- /dev/null
+++ b/app-arch/innoextract/files/innoextract-1.9-boost-1.85.0.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/930495
+https://github.com/dscharrer/innoextract/pull/169
+
+From 264c2fe6b84f90f6290c670e5f676660ec7b2387 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <bero@lindev.ch>
+Date: Thu, 28 Mar 2024 15:11:40 +0100
+Subject: [PATCH] Fix build with boost 1.85
+
+As of boost 1.85-beta1, boost/filesystem/directory.hpp is no longer
+implicitly included by boost/filesystem/operations.hpp. Include it
+explicitly.
+--- a/src/stream/slice.cpp
++++ b/src/stream/slice.cpp
+@@ -27,6 +27,7 @@
+ #include <boost/cstdint.hpp>
+ #include <boost/algorithm/string/predicate.hpp>
+ #include <boost/filesystem/operations.hpp>
++#include <boost/filesystem/directory.hpp>
+ #include <boost/range/size.hpp>
+
+ #include "util/console.hpp"
diff --git a/app-arch/innoextract/files/innoextract-1.9-fix-linkage.patch b/app-arch/innoextract/files/innoextract-1.9-fix-linkage.patch
new file mode 100644
index 000000000000..79ecd805f49d
--- /dev/null
+++ b/app-arch/innoextract/files/innoextract-1.9-fix-linkage.patch
@@ -0,0 +1,17 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index be9f08f..f7ce42a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -316,12 +316,6 @@ if(NOT MSVC)
+
+ endif()
+
+-if($ENV{PORTAGE_REPO_NAME} MATCHES "gentoo")
+- # Meh
+- unset(LIBRARIES)
+-endif()
+-
+-
+ # All sources:
+
+ set(DOCUMENTATION 0) # never build these
diff --git a/app-arch/innoextract/innoextract-1.7.ebuild b/app-arch/innoextract/innoextract-1.7.ebuild
deleted file mode 100644
index de8c21556274..000000000000
--- a/app-arch/innoextract/innoextract-1.7.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils
-
-DESCRIPTION="A tool to unpack installers created by Inno Setup"
-HOMEPAGE="http://constexpr.org/innoextract/"
-SRC_URI="http://constexpr.org/innoextract/files/${P}.tar.gz"
-
-LICENSE="ZLIB"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug +iconv +lzma"
-
-RDEPEND="
- dev-libs/boost:=
- iconv? ( virtual/libiconv )
- lzma? ( app-arch/xz-utils )"
-DEPEND="${RDEPEND}"
-
-DOCS=( README.md CHANGELOG )
-
-src_configure() {
- local mycmakeargs=(
- -DDEBUG=$(usex debug)
- -DSET_OPTIMIZATION_FLAGS=OFF
- -DSTRICT_USE=ON
- -DUSE_LZMA=$(usex lzma)
- -DWITH_CONV=$(usex iconv iconv builtin)
- )
-
- cmake-utils_src_configure
-}
diff --git a/app-arch/innoextract/innoextract-1.8.ebuild b/app-arch/innoextract/innoextract-1.9.ebuild
index 5cf62179ba29..2259b5ffb6d3 100644
--- a/app-arch/innoextract/innoextract-1.8.ebuild
+++ b/app-arch/innoextract/innoextract-1.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,15 +11,20 @@ SRC_URI="https://constexpr.org/innoextract/files/${P}.tar.gz"
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ~m68k ppc64 x86"
IUSE="debug +iconv +lzma"
RDEPEND="
- dev-libs/boost:=
+ dev-libs/boost:=[bzip2,zlib]
iconv? ( virtual/libiconv )
lzma? ( app-arch/xz-utils )"
DEPEND="${RDEPEND}"
+PATCHES=(
+ "${FILESDIR}/${PN}-1.9-fix-linkage.patch"
+ "${FILESDIR}/${PN}-1.9-boost-1.85.0.patch"
+)
+
src_configure() {
local mycmakeargs=(
-DDEBUG=$(usex debug)
diff --git a/app-arch/innoextract/metadata.xml b/app-arch/innoextract/metadata.xml
index 6d8f19bb3ddf..0500dc2295e4 100644
--- a/app-arch/innoextract/metadata.xml
+++ b/app-arch/innoextract/metadata.xml
@@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>daniel@constexpr.org</email>
- <name>Daniel Scharrer</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
</maintainer>
<use>
<flag name="debug">Enable debug logging and the --debug command-line option</flag>
diff --git a/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16-musl-info.patch b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16-musl-info.patch
new file mode 100644
index 000000000000..cab651805476
--- /dev/null
+++ b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16-musl-info.patch
@@ -0,0 +1,21 @@
+Bug: https://bugs.gentoo.org/894320
+--- a/src/common.h
++++ b/src/common.h
+@@ -35,6 +35,7 @@
+
+ /* Tracing, useful in debugging, but not officially supported. */
+ #ifdef ENABLE_TRACING
++#include "main.h" /* Needed for info */
+ #define Trace(x) info x
+ #else
+ #define Trace(x)
+--- a/src/main.h
++++ b/src/main.h
+@@ -20,6 +20,7 @@
+ along with lbzip2. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#pragma once
+ #include <limits.h> /* CHAR_BIT */
+
+ #if 8 != CHAR_BIT
diff --git a/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16.patch b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16.patch
new file mode 100644
index 000000000000..7342b19cd027
--- /dev/null
+++ b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-clang16.patch
@@ -0,0 +1,27 @@
+https://github.com/kjn/lbzip2/pull/33
+
+From 32b5167940ec817e454431956040734af405a9de Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Thu, 5 Jan 2023 18:02:26 +0100
+Subject: [PATCH] Define the GNULIB_XALLOC_DIE macro
+
+This avoids an implicit function declaration when building gnulib's
+xmalloc.c, addressing a build failure with future compiler version.
+
+Solution proposed by Bruno Haible here:
+
+ Re: xmalloc calling undeclared xalloc_die function
+ <https://lists.gnu.org/archive/html/bug-gnulib/2022-12/msg00038.html>
+--- a/configure.ac
++++ b/configure.ac
+@@ -31,6 +31,9 @@ AC_PROG_LN_S
+ AC_PROG_RANLIB
+ AC_PROG_CC_C89
+
++AC_DEFINE(GNULIB_XALLOC_DIE, 1,
++ [This package is providing its own definition of the xalloc_die function.])
++
+ gl_ASSERT_NO_GNULIB_TESTS
+ gl_ASSERT_NO_GNULIB_POSIXCHECK
+ gl_EARLY
+
diff --git a/app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild b/app-arch/lbzip2/lbzip2-2.5_p20181227-r2.ebuild
index 0891bba85d7f..b92a6e2fff28 100644
--- a/app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild
+++ b/app-arch/lbzip2/lbzip2-2.5_p20181227-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-inherit autotools
+inherit autotools flag-o-matic
DESCRIPTION="Parallel bzip2 utility"
HOMEPAGE="https://github.com/kjn/lbzip2/"
@@ -11,15 +11,14 @@ SRC_URI="https://dev.gentoo.org/~whissi/dist/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="debug symlink"
-
-RDEPEND="symlink? ( !app-arch/pbzip2[symlink] )"
-DEPEND=""
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="debug static"
PATCHES=(
"${FILESDIR}"/${PN}-2.3-s_isreg.patch
"${FILESDIR}"/${P}-fix-unaligned.patch
+ "${FILESDIR}"/${P}-clang16.patch
+ "${FILESDIR}"/${P}-clang16-musl-info.patch
)
src_prepare() {
@@ -28,17 +27,10 @@ src_prepare() {
}
src_configure() {
+ use static && append-ldflags -static
+
local myeconfargs=(
$(use_enable debug tracing)
)
econf "${myeconfargs[@]}"
}
-
-src_install() {
- default
-
- if use symlink; then
- dosym ${PN} /usr/bin/bzip2
- dosym lbunzip2 /usr/bin/bunzip2
- fi
-}
diff --git a/app-arch/lbzip2/metadata.xml b/app-arch/lbzip2/metadata.xml
index f6621e00952f..b755b171f2bb 100644
--- a/app-arch/lbzip2/metadata.xml
+++ b/app-arch/lbzip2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mattst88@gentoo.org</email>
@@ -10,9 +10,6 @@
input-bound splitter even when decompressing .bz2 files created by standard
bzip2
</longdescription>
- <use>
- <flag name="symlink">Install symlinks which override <pkg>app-arch/bzip2</pkg> implementation</flag>
- </use>
<upstream>
<remote-id type="github">kjn/lbzip2</remote-id>
</upstream>
diff --git a/app-arch/lcab/lcab-1.0_beta12.ebuild b/app-arch/lcab/lcab-1.0_beta12.ebuild
index 27fe02473de4..03a23f05e503 100644
--- a/app-arch/lcab/lcab-1.0_beta12.ebuild
+++ b/app-arch/lcab/lcab-1.0_beta12.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -14,7 +14,7 @@ SRC_URI="ftp://mirror.ohnopub.net/mirror/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
S="${WORKDIR}/${MY_P}"
diff --git a/app-arch/lcab/metadata.xml b/app-arch/lcab/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/app-arch/lcab/metadata.xml
+++ b/app-arch/lcab/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/app-arch/lha/Manifest b/app-arch/lha/Manifest
index 13bdc1be59ab..76749a84e3db 100644
--- a/app-arch/lha/Manifest
+++ b/app-arch/lha/Manifest
@@ -1 +1,2 @@
DIST lha-114i_p20201004.tar.gz 220541 BLAKE2B 64268deb40de67d5f4888f7d4b4529fa1b6ca02c562bd041d9edd1ac9cc74ccfa43198c79310bd354806e3095f6aba8c97256b49686feb8c713e3d8110137103 SHA512 9a9337cbb6a3d71253597750301e37163c5b495e712f2374adf2ac0d19f731ed49482a3f8b639e4c48c7ef6fa7ed9f9081516d77548e9c88ed3b9ac037efeb06
+DIST lha-114i_p20210328.tar.gz 231115 BLAKE2B f9587fd2f99aa80498ed69f43efe189a6db12881c6ea748763e8ae071180a30578651db11cbba0216103f6a7741d37a0e55b2530a7e458046a7230f6101f05e7 SHA512 46fc722f9f15dbe75600c2aeecbf94357aa24da964bb03f8326d9d13affa2ea60d4ec5dd21a4f5014f2cbe4e06f4bb959aa8de89a5491e1600eafdd909b293d2
diff --git a/app-arch/lha/lha-114i_p20201004.ebuild b/app-arch/lha/lha-114i_p20201004.ebuild
index 2301e49b8312..971bf526c523 100644
--- a/app-arch/lha/lha-114i_p20201004.ebuild
+++ b/app-arch/lha/lha-114i_p20201004.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/jca02266/lha/archive/${MY_COMMIT}.tar.gz -> ${P}.tar
LICENSE="lha"
SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~m68k ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~m68k-mint"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
S="${WORKDIR}/${PN}-${MY_COMMIT}"
@@ -26,15 +26,6 @@ src_prepare() {
eautoreconf
}
-src_configure() {
- if [[ ${CHOST} == *-interix* ]]; then
- export ac_cv_header_inttypes_h=no
- export ac_cv_func_iconv=no
- fi
-
- default
-}
-
src_install() {
default
dodoc olddoc/ChangeLog Hacking_of_LHa
diff --git a/app-arch/lha/lha-114i_p20210328.ebuild b/app-arch/lha/lha-114i_p20210328.ebuild
new file mode 100644
index 000000000000..daaf8b6485d3
--- /dev/null
+++ b/app-arch/lha/lha-114i_p20210328.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_COMMIT="26950220c9c7590fd603ecaa54a12a52371affed"
+
+DESCRIPTION="Utility for creating and opening lzh archives"
+HOMEPAGE="https://github.com/jca02266/lha https://lha.osdn.jp"
+SRC_URI="https://github.com/jca02266/lha/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="lha"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+PATCHES=(
+ "${FILESDIR}"/${P/_p*}-file-list-from-stdin.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_install() {
+ default
+ dodoc olddoc/ChangeLog Hacking_of_LHa
+}
diff --git a/app-arch/lha/metadata.xml b/app-arch/lha/metadata.xml
index 0759b3134fef..9840d61b592f 100644
--- a/app-arch/lha/metadata.xml
+++ b/app-arch/lha/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chewi@gentoo.org</email>
<name>James Le Cuirot</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">lha</remote-id>
+ <remote-id type="github">jca02266/lha</remote-id>
+ <remote-id type="osdn">lha</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/libarchive/Manifest b/app-arch/libarchive/Manifest
index 0878de809779..2baf43a36402 100644
--- a/app-arch/libarchive/Manifest
+++ b/app-arch/libarchive/Manifest
@@ -1 +1,6 @@
-DIST libarchive-3.4.3.tar.gz 6990533 BLAKE2B 12f97e8e4032daf0fa8f9e1839f9c7ef80fda0b2a0ba703c67d860437fad6a293484a61417f72eff933179d544cfed45083e7886f462276bc6abbce1097e6256 SHA512 d00167dec6e65a0b17b46a1e3bb0242d85716dbc637afd233360cb515b2750dafe0ff0644b9e01ad23534340b405a8551f496c5e39fba9ee99355a515580d65d
+DIST libarchive-3.7.2.tar.xz 5237056 BLAKE2B 7221db4811a965ee61d879a2603480363628a19995a351b572d099be9f35576d76f0b0822f9a5a47d9929bc094d4444fd8eafcb4a073e39bb3aa797d4b926ca5 SHA512 a21bebb27b808cb7d2ed13a70739904a1b7b55661d8dea83c9897a0129cf71e20c962f13666c571782ff0f4f753ca885619c2097d9e7691c2dee4e6e4b9a2971
+DIST libarchive-3.7.2.tar.xz.asc 659 BLAKE2B 7141baf007b89b7ee38ec817b648cef5efb4d694953fcd49f6ed2dc95cf4da2d9259262b9eb4f01ff5d4ecee1257b266a8c6687a8e8ef8790121048229f1ad22 SHA512 c2ce850088245d7723720737d74d1cc1819984d01b3f9e4ed96b0757f4c6d6d511b78792181a12400c563632d74edcd0c2c3a4b7527cba40ada7ef74488078fc
+DIST libarchive-3.7.3.tar.xz 5428992 BLAKE2B c53672c8cdbe8f406f00bf4fc6b36e4dffcd23a33909dbec6ef06b86dceefc6062840eff629ba3bd19c36121720e16a8ba10dfa1a35ebed186cc92eb144f55d0 SHA512 984e7c61010b9555bafe54d5f52ff2d089e28afe5cea3a14615e2aca8539075293789d18f17f8915882ec328bcbdca7b3d1536d6dc19620ca226e8b6d802ef63
+DIST libarchive-3.7.3.tar.xz.asc 659 BLAKE2B bfe18e36ef2e96ad46ab2cd1236701b4b80f41ebb840681c1baf7eac72f38444cc0619645fac17d3acdda6553b294483d87f0a92d9575138d117934e838d85d2 SHA512 9f340b41fc9db34f1c4e0823d559b666196d3031249e05981cfb43a401aa8a85710f14ba1cc784ab3ca367439e4c485668dffe7020f38f50b3ed35810df504a1
+DIST libarchive-3.7.4.tar.xz 5417660 BLAKE2B 128f72235da61e112201046c0cfe62a8c580cf73b426c4cfe270ae913356f6ad430ba33a663dcd617b082c7baf45ada8d1c9928c45fea16fd57e8020693a60bc SHA512 84bc346ba15861ab10aa54a3d687de955178e4efbe12bf3a49a467181e7f819673949f131f4c8338de8ed6e319a8565af376e5a540380bda08e60dffbc7c8686
+DIST libarchive-3.7.4.tar.xz.asc 659 BLAKE2B 77e705194f6e9a9f97da0ac43c9b3157e1a8a490d26da34079e4ef3f2bcf98d6f6e95567e110287fab0ec26d3fc27e5bbeff7569c9ca138de2caf47af737c6d0 SHA512 82caa18a78661ea717ce93cdcb0806eed48450c20fb4d45cb4c33001f2d4d0fb5a791552acbb24ad8c41772e1d0b66c76c9cb86946bc862109721a0c986f5331
diff --git a/app-arch/libarchive/files/libarchive-3.3.3-libressl.patch b/app-arch/libarchive/files/libarchive-3.3.3-libressl.patch
deleted file mode 100644
index 4d7c0ec7cf37..000000000000
--- a/app-arch/libarchive/files/libarchive-3.3.3-libressl.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/libarchive/archive_openssl_evp_private.h
-+++ b/libarchive/archive_openssl_evp_private.h
-@@ -28,7 +28,8 @@
- #include <openssl/evp.h>
- #include <openssl/opensslv.h>
-
--#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
-+(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
- #include <stdlib.h> /* malloc, free */
- #include <string.h> /* memset */
- static inline EVP_MD_CTX *EVP_MD_CTX_new(void)
diff --git a/app-arch/libarchive/files/libarchive-3.7.2-32bit-test.patch b/app-arch/libarchive/files/libarchive-3.7.2-32bit-test.patch
new file mode 100644
index 000000000000..5f43c2626735
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.7.2-32bit-test.patch
@@ -0,0 +1,29 @@
+From 3bd918d92f8c34ba12de9c6604d96f9e262a59fc Mon Sep 17 00:00:00 2001
+From: Martin Matuska <martin@matuska.de>
+Date: Tue, 12 Sep 2023 08:54:47 +0200
+Subject: [PATCH] tests: fix zstd long option test for 32-bit architectures
+
+Fixes #1968
+---
+ libarchive/test/test_write_filter_zstd.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/libarchive/test/test_write_filter_zstd.c b/libarchive/test/test_write_filter_zstd.c
+index 3cdbd812a..c9731f1b6 100644
+--- a/libarchive/test/test_write_filter_zstd.c
++++ b/libarchive/test/test_write_filter_zstd.c
+@@ -161,8 +161,12 @@ DEFINE_TEST(test_write_filter_zstd)
+ archive_write_set_filter_option(a, NULL, "max-frame-size", "1048576"));
+ #endif
+ #if ZSTD_VERSION_NUMBER >= MINVER_LONG
+- assertEqualIntA(a, ARCHIVE_OK,
+- archive_write_set_filter_option(a, NULL, "long", "27"));
++ if ((int)(sizeof(size_t) == 4))
++ assertEqualIntA(a, ARCHIVE_OK,
++ archive_write_set_filter_option(a, NULL, "long", "26"));
++ else
++ assertEqualIntA(a, ARCHIVE_OK,
++ archive_write_set_filter_option(a, NULL, "long", "27"));
+ assertEqualIntA(a, ARCHIVE_FAILED,
+ archive_write_set_filter_option(a, NULL, "long", "-1")); /* negative */
+ #endif
diff --git a/app-arch/libarchive/files/libarchive-3.7.2-lrzip.patch b/app-arch/libarchive/files/libarchive-3.7.2-lrzip.patch
new file mode 100644
index 000000000000..f05b46c1a340
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.7.2-lrzip.patch
@@ -0,0 +1,26 @@
+diff --git a/libarchive/archive_read_support_filter_lrzip.c b/libarchive/archive_read_support_filter_lrzip.c
+index a562d538..f3ec40c4 100644
+--- a/libarchive/archive_read_support_filter_lrzip.c
++++ b/libarchive/archive_read_support_filter_lrzip.c
+@@ -109,7 +109,7 @@ lrzip_bidder_init(struct archive_read_filter *self)
+ {
+ int r;
+
+- r = __archive_read_program(self, "lrzip -d -q");
++ r = __archive_read_program(self, "lrzip -d -Q");
+ /* Note: We set the format here even if __archive_read_program()
+ * above fails. We do, after all, know what the format is
+ * even if we weren't able to read it. */
+diff --git a/libarchive/archive_write_add_filter_lrzip.c b/libarchive/archive_write_add_filter_lrzip.c
+index fe974c93..8fe498dd 100644
+--- a/libarchive/archive_write_add_filter_lrzip.c
++++ b/libarchive/archive_write_add_filter_lrzip.c
+@@ -133,7 +133,7 @@ archive_write_lrzip_open(struct archive_write_filter *f)
+ int r;
+
+ archive_string_init(&as);
+- archive_strcpy(&as, "lrzip -q");
++ archive_strcpy(&as, "lrzip -Q");
+
+ /* Specify compression type. */
+ switch (data->compression) {
diff --git a/app-arch/libarchive/files/libarchive-3.7.2-safe-fprintf.patch b/app-arch/libarchive/files/libarchive-3.7.2-safe-fprintf.patch
new file mode 100644
index 000000000000..6a351ba37fea
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.7.2-safe-fprintf.patch
@@ -0,0 +1,27 @@
+From 6110e9c82d8ba830c3440f36b990483ceaaea52c Mon Sep 17 00:00:00 2001
+From: Ed Maste <emaste@freebsd.org>
+Date: Fri, 29 Mar 2024 18:02:06 -0400
+Subject: [PATCH] tar: make error reporting more robust and use correct errno
+ (#2101)
+
+As discussed in #1609.
+---
+ tar/read.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/tar/read.c b/tar/read.c
+index af3d3f423..a7f14a07b 100644
+--- a/tar/read.c
++++ b/tar/read.c
+@@ -371,8 +371,9 @@ read_archive(struct bsdtar *bsdtar, char mode, struct archive *writer)
+ if (r != ARCHIVE_OK) {
+ if (!bsdtar->verbose)
+ safe_fprintf(stderr, "%s", archive_entry_pathname(entry));
+- fprintf(stderr, ": %s: ", archive_error_string(a));
+- fprintf(stderr, "%s", strerror(errno));
++ safe_fprintf(stderr, ": %s: %s",
++ archive_error_string(a),
++ strerror(archive_errno(a)));
+ if (!bsdtar->verbose)
+ fprintf(stderr, "\n");
+ bsdtar->return_value = 1;
diff --git a/app-arch/libarchive/libarchive-3.4.3.ebuild b/app-arch/libarchive/libarchive-3.7.2-r1.ebuild
index 87a77a41f2c7..3ca312b679f8 100644
--- a/app-arch/libarchive/libarchive-3.4.3.ebuild
+++ b/app-arch/libarchive/libarchive-3.7.2-r1.ebuild
@@ -1,19 +1,30 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-inherit libtool multilib-minimal toolchain-funcs
+EAPI=8
+inherit multilib-minimal toolchain-funcs verify-sig
DESCRIPTION="Multi-format archive and compression library"
-HOMEPAGE="https://www.libarchive.org/"
-SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz"
+HOMEPAGE="
+ https://www.libarchive.org/
+ https://github.com/libarchive/libarchive/
+"
+SRC_URI="
+ https://www.libarchive.de/downloads/${P}.tar.xz
+ verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
+"
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux libressl lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="
+ acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
+ static-libs test xattr +zstd
+"
+RESTRICT="!test? ( test )"
RDEPEND="
+ sys-libs/zlib[${MULTILIB_USEDEP}]
acl? ( virtual/acl[${MULTILIB_USEDEP}] )
blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
@@ -23,29 +34,44 @@ RDEPEND="
kernel_linux? (
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
)
- !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
- lzma? ( app-arch/xz-utils[threads=,${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
- zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )"
+ zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
+"
DEPEND="${RDEPEND}
kernel_linux? (
virtual/os-headers
- e2fsprogs? ( sys-fs/e2fsprogs )
- )"
+ e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
+ )
+ test? (
+ lzma? ( app-arch/xz-utils[extra-filters(+)] )
+ )
+"
+BDEPEND="
+ verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
+
+# false positives (checks for libc-defined hash functions)
+QA_CONFIG_IMPL_DECL_SKIP=(
+ SHA256_Init SHA256_Update SHA256_Final
+ SHA384_Init SHA384_Update SHA384_Final
+ SHA512_Init SHA512_Update SHA512_Final
+)
PATCHES=(
- "${FILESDIR}"/${PN}-3.3.3-libressl.patch
+ # https://github.com/libarchive/libarchive/issues/1968
+ "${FILESDIR}/${P}-32bit-test.patch"
+ # https://github.com/libarchive/libarchive/issues/2069
+ # (we can simply update the command since we don't support old lrzip)
+ "${FILESDIR}/${P}-lrzip.patch"
)
-src_prepare() {
- default
- elibtoolize # is required for Solaris sol2_ld linker fix
-}
-
multilib_src_configure() {
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
@@ -62,7 +88,7 @@ multilib_src_configure() {
$(use_with lzma)
$(use_with lzo lzo2)
$(use_with nettle)
- $(use_with zlib)
+ --with-zlib
$(use_with zstd)
# Windows-specific
@@ -70,15 +96,17 @@ multilib_src_configure() {
)
if multilib_is_native_abi ; then
myconf+=(
- --enable-bsdcat=$(tc-is-static-only && echo static || echo shared)
- --enable-bsdcpio=$(tc-is-static-only && echo static || echo shared)
- --enable-bsdtar=$(tc-is-static-only && echo static || echo shared)
+ --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
)
else
myconf+=(
--disable-bsdcat
--disable-bsdcpio
--disable-bsdtar
+ --disable-bsdunzip
)
fi
@@ -105,22 +133,14 @@ multilib_src_test() {
# sandbox is breaking long symlink behavior
local -x SANDBOX_ON=0
local -x LD_PRELOAD=
+ # some locales trigger different output that breaks tests
+ local -x LC_ALL=C
emake check
}
multilib_src_install() {
if multilib_is_native_abi ; then
emake DESTDIR="${D}" install
-
- # Create symlinks for FreeBSD
- if ! use prefix && [[ ${CHOST} == *-freebsd* ]]; then
- # Exclude cat for the time being #589876
- for bin in cpio tar; do
- dosym bsd${bin} /usr/bin/${bin}
- echo '.so bsd${bin}.1' > "${T}"/${bin}.1
- doman "${T}"/${bin}.1
- done
- fi
else
local install_targets=(
install-includeHEADERS
@@ -132,9 +152,7 @@ multilib_src_install() {
# Libs.private: should be used from libarchive.pc instead
find "${ED}" -type f -name "*.la" -delete || die
-}
-
-multilib_src_install_all() {
- cd "${S}" || die
- einstalldocs
+ # https://github.com/libarchive/libarchive/issues/1766
+ sed -e '/Requires\.private/s:iconv::' \
+ -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
}
diff --git a/app-arch/libarchive/libarchive-3.7.2-r3.ebuild b/app-arch/libarchive/libarchive-3.7.2-r3.ebuild
new file mode 100644
index 000000000000..476a896e4be3
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.7.2-r3.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit libtool multilib-minimal toolchain-funcs verify-sig
+
+DESCRIPTION="Multi-format archive and compression library"
+HOMEPAGE="
+ https://www.libarchive.org/
+ https://github.com/libarchive/libarchive/
+"
+SRC_URI="
+ https://www.libarchive.de/downloads/${P}.tar.xz
+ verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
+"
+
+LICENSE="BSD BSD-2 BSD-4 public-domain"
+SLOT="0/13"
+KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="
+ acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
+ static-libs test xattr +zstd
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ acl? ( virtual/acl[${MULTILIB_USEDEP}] )
+ blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+ !expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
+ iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
+ kernel_linux? (
+ xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
+ lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
+ nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ kernel_linux? (
+ virtual/os-headers
+ e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
+ )
+ test? (
+ app-arch/lrzip
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/xz-utils
+ app-arch/zstd
+ lzma? ( app-arch/xz-utils[extra-filters(+)] )
+ )
+"
+BDEPEND="
+ verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
+
+# false positives (checks for libc-defined hash functions)
+QA_CONFIG_IMPL_DECL_SKIP=(
+ SHA256_Init SHA256_Update SHA256_Final
+ SHA384_Init SHA384_Update SHA384_Final
+ SHA512_Init SHA512_Update SHA512_Final
+)
+
+PATCHES=(
+ # https://github.com/libarchive/libarchive/issues/1968
+ "${FILESDIR}/${P}-32bit-test.patch"
+ # https://github.com/libarchive/libarchive/issues/2069
+ # (we can simply update the command since we don't support old lrzip)
+ "${FILESDIR}/${P}-lrzip.patch"
+ # https://github.com/libarchive/libarchive/pull/2101
+ "${FILESDIR}/${P}-safe-fprintf.patch"
+)
+
+src_prepare() {
+ default
+
+ # Needed for flags to be respected w/ LTO
+ elibtoolize
+}
+
+multilib_src_configure() {
+ export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
+
+ local myconf=(
+ $(use_enable acl)
+ $(use_enable static-libs static)
+ $(use_enable xattr)
+ $(use_with blake2 libb2)
+ $(use_with bzip2 bz2lib)
+ $(use_with expat)
+ $(use_with !expat xml2)
+ $(use_with iconv)
+ $(use_with lz4)
+ $(use_with lzma)
+ $(use_with lzo lzo2)
+ $(use_with nettle)
+ --with-zlib
+ $(use_with zstd)
+
+ # Windows-specific
+ --without-cng
+ )
+ if multilib_is_native_abi ; then
+ myconf+=(
+ --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
+ )
+ else
+ myconf+=(
+ --disable-bsdcat
+ --disable-bsdcpio
+ --disable-bsdtar
+ --disable-bsdunzip
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ emake libarchive.la
+ fi
+}
+
+src_test() {
+ mkdir -p "${T}"/bin || die
+ # tests fail when lbzip2[symlink] is used in place of ref bunzip2
+ ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
+ # workaround lrzip broken on 32-bit arches with >= 10 threads
+ # https://bugs.gentoo.org/927766
+ cat > "${T}"/bin/lrzip <<-EOF || die
+ #!/bin/sh
+ exec "$(type -P lrzip)" -p1 "\${@}"
+ EOF
+ chmod +x "${T}/bin/lrzip" || die
+ local -x PATH=${T}/bin:${PATH}
+ multilib-minimal_src_test
+}
+
+multilib_src_test() {
+ # sandbox is breaking long symlink behavior
+ local -x SANDBOX_ON=0
+ local -x LD_PRELOAD=
+ # some locales trigger different output that breaks tests
+ local -x LC_ALL=C
+ emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ emake DESTDIR="${D}" install
+ else
+ local install_targets=(
+ install-includeHEADERS
+ install-libLTLIBRARIES
+ install-pkgconfigDATA
+ )
+ emake DESTDIR="${D}" "${install_targets[@]}"
+ fi
+
+ # Libs.private: should be used from libarchive.pc instead
+ find "${ED}" -type f -name "*.la" -delete || die
+ # https://github.com/libarchive/libarchive/issues/1766
+ sed -e '/Requires\.private/s:iconv::' \
+ -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
+}
diff --git a/app-arch/libarchive/libarchive-3.7.3.ebuild b/app-arch/libarchive/libarchive-3.7.3.ebuild
new file mode 100644
index 000000000000..073f78ef0d2c
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.7.3.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit libtool multilib-minimal toolchain-funcs verify-sig
+
+DESCRIPTION="Multi-format archive and compression library"
+HOMEPAGE="
+ https://www.libarchive.org/
+ https://github.com/libarchive/libarchive/
+"
+SRC_URI="
+ https://www.libarchive.de/downloads/${P}.tar.xz
+ verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
+"
+
+LICENSE="BSD BSD-2 BSD-4 public-domain"
+SLOT="0/13"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="
+ acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
+ static-libs test xattr +zstd
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ acl? ( virtual/acl[${MULTILIB_USEDEP}] )
+ blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+ !expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
+ iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
+ kernel_linux? (
+ xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
+ lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
+ nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ kernel_linux? (
+ virtual/os-headers
+ e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
+ )
+ test? (
+ app-arch/lrzip
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/xz-utils
+ app-arch/zstd
+ lzma? ( app-arch/xz-utils[extra-filters(+)] )
+ )
+"
+BDEPEND="
+ verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
+
+# false positives (checks for libc-defined hash functions)
+QA_CONFIG_IMPL_DECL_SKIP=(
+ SHA256_Init SHA256_Update SHA256_Final
+ SHA384_Init SHA384_Update SHA384_Final
+ SHA512_Init SHA512_Update SHA512_Final
+)
+
+PATCHES=(
+ # https://github.com/libarchive/libarchive/issues/2069
+ # (we can simply update the command since we don't support old lrzip)
+ "${FILESDIR}/${PN}-3.7.2-lrzip.patch"
+)
+
+src_prepare() {
+ default
+
+ # Needed for flags to be respected w/ LTO
+ elibtoolize
+}
+
+multilib_src_configure() {
+ export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
+
+ local myconf=(
+ $(use_enable acl)
+ $(use_enable static-libs static)
+ $(use_enable xattr)
+ $(use_with blake2 libb2)
+ $(use_with bzip2 bz2lib)
+ $(use_with expat)
+ $(use_with !expat xml2)
+ $(use_with iconv)
+ $(use_with lz4)
+ $(use_with lzma)
+ $(use_with lzo lzo2)
+ $(use_with nettle)
+ --with-zlib
+ $(use_with zstd)
+
+ # Windows-specific
+ --without-cng
+ )
+ if multilib_is_native_abi ; then
+ myconf+=(
+ --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
+ )
+ else
+ myconf+=(
+ --disable-bsdcat
+ --disable-bsdcpio
+ --disable-bsdtar
+ --disable-bsdunzip
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ emake libarchive.la
+ fi
+}
+
+src_test() {
+ mkdir -p "${T}"/bin || die
+ # tests fail when lbzip2[symlink] is used in place of ref bunzip2
+ ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
+ # workaround lrzip broken on 32-bit arches with >= 10 threads
+ # https://bugs.gentoo.org/927766
+ cat > "${T}"/bin/lrzip <<-EOF || die
+ #!/bin/sh
+ exec "$(type -P lrzip)" -p1 "\${@}"
+ EOF
+ chmod +x "${T}/bin/lrzip" || die
+ local -x PATH=${T}/bin:${PATH}
+ multilib-minimal_src_test
+}
+
+multilib_src_test() {
+ # sandbox is breaking long symlink behavior
+ local -x SANDBOX_ON=0
+ local -x LD_PRELOAD=
+ # some locales trigger different output that breaks tests
+ local -x LC_ALL=C.UTF-8
+ emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ emake DESTDIR="${D}" install
+ else
+ local install_targets=(
+ install-includeHEADERS
+ install-libLTLIBRARIES
+ install-pkgconfigDATA
+ )
+ emake DESTDIR="${D}" "${install_targets[@]}"
+ fi
+
+ # Libs.private: should be used from libarchive.pc instead
+ find "${ED}" -type f -name "*.la" -delete || die
+ # https://github.com/libarchive/libarchive/issues/1766
+ sed -e '/Requires\.private/s:iconv::' \
+ -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
+}
diff --git a/app-arch/libarchive/libarchive-3.7.4.ebuild b/app-arch/libarchive/libarchive-3.7.4.ebuild
new file mode 100644
index 000000000000..4e1429fdc70c
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.7.4.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit libtool multilib-minimal toolchain-funcs verify-sig
+
+DESCRIPTION="Multi-format archive and compression library"
+HOMEPAGE="
+ https://www.libarchive.org/
+ https://github.com/libarchive/libarchive/
+"
+SRC_URI="
+ https://www.libarchive.de/downloads/${P}.tar.xz
+ verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
+"
+
+LICENSE="BSD BSD-2 BSD-4 public-domain"
+SLOT="0/13"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="
+ acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
+ static-libs test xattr +zstd
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ acl? ( virtual/acl[${MULTILIB_USEDEP}] )
+ blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+ !expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
+ iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
+ kernel_linux? (
+ xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
+ lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
+ nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ kernel_linux? (
+ virtual/os-headers
+ e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
+ )
+ test? (
+ app-arch/lrzip
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/xz-utils
+ app-arch/zstd
+ lzma? ( app-arch/xz-utils[extra-filters(+)] )
+ )
+"
+BDEPEND="
+ verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
+
+# false positives (checks for libc-defined hash functions)
+QA_CONFIG_IMPL_DECL_SKIP=(
+ SHA256_Init SHA256_Update SHA256_Final
+ SHA384_Init SHA384_Update SHA384_Final
+ SHA512_Init SHA512_Update SHA512_Final
+)
+
+PATCHES=(
+ # https://github.com/libarchive/libarchive/issues/2069
+ # (we can simply update the command since we don't support old lrzip)
+ "${FILESDIR}/${PN}-3.7.2-lrzip.patch"
+)
+
+src_prepare() {
+ default
+
+ # Needed for flags to be respected w/ LTO
+ elibtoolize
+}
+
+multilib_src_configure() {
+ export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
+
+ local myconf=(
+ $(use_enable acl)
+ $(use_enable static-libs static)
+ $(use_enable xattr)
+ $(use_with blake2 libb2)
+ $(use_with bzip2 bz2lib)
+ $(use_with expat)
+ $(use_with !expat xml2)
+ $(use_with iconv)
+ $(use_with lz4)
+ $(use_with lzma)
+ $(use_with lzo lzo2)
+ $(use_with nettle)
+ --with-zlib
+ $(use_with zstd)
+
+ # Windows-specific
+ --without-cng
+ )
+ if multilib_is_native_abi ; then
+ myconf+=(
+ --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
+ )
+ else
+ myconf+=(
+ --disable-bsdcat
+ --disable-bsdcpio
+ --disable-bsdtar
+ --disable-bsdunzip
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ emake libarchive.la
+ fi
+}
+
+src_test() {
+ mkdir -p "${T}"/bin || die
+ # tests fail when lbzip2[symlink] is used in place of ref bunzip2
+ ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
+ # workaround lrzip broken on 32-bit arches with >= 10 threads
+ # https://bugs.gentoo.org/927766
+ cat > "${T}"/bin/lrzip <<-EOF || die
+ #!/bin/sh
+ exec "$(type -P lrzip)" -p1 "\${@}"
+ EOF
+ chmod +x "${T}/bin/lrzip" || die
+ local -x PATH=${T}/bin:${PATH}
+ multilib-minimal_src_test
+}
+
+multilib_src_test() {
+ # sandbox is breaking long symlink behavior
+ local -x SANDBOX_ON=0
+ local -x LD_PRELOAD=
+ # some locales trigger different output that breaks tests
+ local -x LC_ALL=C.UTF-8
+ emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ emake DESTDIR="${D}" install
+ else
+ local install_targets=(
+ install-includeHEADERS
+ install-libLTLIBRARIES
+ install-pkgconfigDATA
+ )
+ emake DESTDIR="${D}" "${install_targets[@]}"
+ fi
+
+ # Libs.private: should be used from libarchive.pc instead
+ find "${ED}" -type f -name "*.la" -delete || die
+ # https://github.com/libarchive/libarchive/issues/1766
+ sed -e '/Requires\.private/s:iconv::' \
+ -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
+}
diff --git a/app-arch/libarchive/metadata.xml b/app-arch/libarchive/metadata.xml
index 82253c34ca0f..a8ad4ecadcd9 100644
--- a/app-arch/libarchive/metadata.xml
+++ b/app-arch/libarchive/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
@@ -24,13 +24,6 @@
<flag name="nettle">
Use <pkg>dev-libs/nettle</pkg> as crypto backend
</flag>
- <flag name="zlib">
- Allow accessing gzip-compressed archives through
- <pkg>sys-libs/zlib</pkg>. This only affects libarchive's native
- support: bsdtar will keep using gunzip as a filter if that's not
- built-in. It's also needed for supporting extraction of ZIP
- files.
- </flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:libarchive:libarchive</remote-id>
diff --git a/app-arch/libdeflate/Manifest b/app-arch/libdeflate/Manifest
new file mode 100644
index 000000000000..280c6644dba1
--- /dev/null
+++ b/app-arch/libdeflate/Manifest
@@ -0,0 +1,2 @@
+DIST libdeflate-1.19.tar.gz 187684 BLAKE2B 6d3c58b4095f91f64c25e09a062f1d7e68cd43b4dffc2de6484cd941ede4bffd8a82dd3af08eda6c94ad4120d40809c1d6a1814c28bad5387dfbaad418b93070 SHA512 fe57542a0d28ad61d70bef9b544bb6805f9f30930b16432712b3b1caab041f1f4e64315a4306a0635b96c2632239c5af0e45a3915581d0b89975729fc2e95613
+DIST libdeflate-1.20.tar.gz 194212 BLAKE2B b3633f1068f36bf346e1f435c67259612ad5ed1571e83f1bbc4a58c6a67b3eadca85e0abb2d2d47f180dd2ff01c5891c8b3958a63ddbcc2447106f2e5cb3c0fe SHA512 5ebe6af9ce81872cba508d1f0aa087ddeb0e0f0c8e6360da66b8a9db2a76203dafbf3d3f6b3b791618ea9c6d0231fab5b4a55badb31a4480fb4174b9445c658b
diff --git a/app-arch/libdeflate/files/libdeflate-1.19-make-gzip-tests-conditional.patch b/app-arch/libdeflate/files/libdeflate-1.19-make-gzip-tests-conditional.patch
new file mode 100644
index 000000000000..ae290f3f69d2
--- /dev/null
+++ b/app-arch/libdeflate/files/libdeflate-1.19-make-gzip-tests-conditional.patch
@@ -0,0 +1,37 @@
+Only build these when the user enables zlib and gzip support
+diff --git a/programs/CMakeLists.txt b/programs/CMakeLists.txt
+index e707a25..fcfaf12 100644
+--- a/programs/CMakeLists.txt
++++ b/programs/CMakeLists.txt
+@@ -80,22 +80,28 @@ if(LIBDEFLATE_BUILD_TESTS)
+ target_link_libraries(libdeflate_test_utils PUBLIC
+ libdeflate_prog_utils ZLIB::ZLIB)
+
++ if(LIBDEFLATE_GZIP_SUPPORT AND LIBDEFLATE_ZLIB_SUPPORT)
+ # Build the benchmark and checksum programs.
+ add_executable(benchmark benchmark.c)
+ target_link_libraries(benchmark PRIVATE libdeflate_test_utils)
+ add_executable(checksum checksum.c)
+ target_link_libraries(checksum PRIVATE libdeflate_test_utils)
++ endif()
+
+ # Build the unit test programs and register them with CTest.
+ set(UNIT_TEST_PROGS
+- test_checksums
+ test_custom_malloc
+ test_incomplete_codes
+ test_invalid_streams
+ test_litrunlen_overflow
+ test_overread
+ test_slow_decompression
+- test_trailing_bytes
+ )
++ if(LIBDEFLATE_GZIP_SUPPORT AND LIBDEFLATE_ZLIB_SUPPORT)
++ list(APPEND UNIT_TEST_PROGS
++ test_checksums
++ test_trailing_bytes
++ )
++ endif()
+ foreach(PROG ${UNIT_TEST_PROGS})
+ add_executable(${PROG} ${PROG}.c)
+ target_link_libraries(${PROG} PRIVATE libdeflate_test_utils)
diff --git a/app-arch/libdeflate/libdeflate-1.19.ebuild b/app-arch/libdeflate/libdeflate-1.19.ebuild
new file mode 100644
index 000000000000..b637d83a6dfe
--- /dev/null
+++ b/app-arch/libdeflate/libdeflate-1.19.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Heavily optimized DEFLATE/zlib/gzip (de)compression"
+HOMEPAGE="https://github.com/ebiggers/libdeflate"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/ebiggers/libdeflate.git"
+else
+ SRC_URI="https://github.com/ebiggers/libdeflate/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+# the zlib USE-flag enables support for zlib
+# the test USE-flag programs depend on sys-libs/zlib for comparison tests
+IUSE="+gzip +utils +zlib test"
+
+RESTRICT="
+ !test? ( test )
+"
+
+REQUIRED_USE="
+ utils? ( gzip )
+"
+
+DEPEND="
+ test? ( sys-libs/zlib )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.19-make-gzip-tests-conditional.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIBDEFLATE_BUILD_SHARED_LIB="yes"
+ -DLIBDEFLATE_BUILD_STATIC_LIB="no"
+ -DLIBDEFLATE_USE_SHARED_LIB="yes"
+
+ -DLIBDEFLATE_COMPRESSION_SUPPORT="yes"
+ -DLIBDEFLATE_DECOMPRESSION_SUPPORT="yes"
+
+ -DLIBDEFLATE_BUILD_GZIP="$(usex gzip "$(usex utils)" )"
+ -DLIBDEFLATE_GZIP_SUPPORT="$(usex gzip)"
+
+ -DLIBDEFLATE_ZLIB_SUPPORT="$(usex zlib)"
+
+ -DLIBDEFLATE_BUILD_TESTS="$(usex test)"
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/libdeflate/libdeflate-1.20.ebuild b/app-arch/libdeflate/libdeflate-1.20.ebuild
new file mode 100644
index 000000000000..19e1b432a064
--- /dev/null
+++ b/app-arch/libdeflate/libdeflate-1.20.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Heavily optimized DEFLATE/zlib/gzip (de)compression"
+HOMEPAGE="https://github.com/ebiggers/libdeflate"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/ebiggers/libdeflate.git"
+else
+ SRC_URI="https://github.com/ebiggers/libdeflate/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+# the zlib USE-flag enables support for zlib
+# the test USE-flag programs depend on sys-libs/zlib for comparison tests
+IUSE="+gzip +utils +zlib test"
+
+RESTRICT="
+ !test? ( test )
+"
+
+REQUIRED_USE="
+ utils? ( gzip )
+"
+
+DEPEND="
+ test? ( sys-libs/zlib )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.19-make-gzip-tests-conditional.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIBDEFLATE_BUILD_SHARED_LIB="yes"
+ -DLIBDEFLATE_BUILD_STATIC_LIB="no"
+ -DLIBDEFLATE_USE_SHARED_LIB="yes"
+
+ -DLIBDEFLATE_COMPRESSION_SUPPORT="yes"
+ -DLIBDEFLATE_DECOMPRESSION_SUPPORT="yes"
+
+ -DLIBDEFLATE_BUILD_GZIP="$(usex gzip "$(usex utils)" )"
+ -DLIBDEFLATE_GZIP_SUPPORT="$(usex gzip)"
+
+ -DLIBDEFLATE_ZLIB_SUPPORT="$(usex zlib)"
+
+ -DLIBDEFLATE_BUILD_TESTS="$(usex test)"
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/libdeflate/libdeflate-9999.ebuild b/app-arch/libdeflate/libdeflate-9999.ebuild
new file mode 100644
index 000000000000..2ed3a652def2
--- /dev/null
+++ b/app-arch/libdeflate/libdeflate-9999.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Heavily optimized DEFLATE/zlib/gzip (de)compression"
+HOMEPAGE="https://github.com/ebiggers/libdeflate"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/ebiggers/libdeflate.git"
+else
+ SRC_URI="https://github.com/ebiggers/libdeflate/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+# the zlib USE-flag enables support for zlib
+# the test USE-flag programs depend on sys-libs/zlib for comparison tests
+IUSE="+gzip +utils +zlib test"
+
+RESTRICT="
+ !test? ( test )
+"
+
+REQUIRED_USE="
+ utils? ( gzip )
+"
+
+DEPEND="
+ test? ( sys-libs/zlib )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.19-make-gzip-tests-conditional.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIBDEFLATE_BUILD_SHARED_LIB="yes"
+ -DLIBDEFLATE_BUILD_STATIC_LIB="no"
+ -DLIBDEFLATE_USE_SHARED_LIB="yes"
+
+ -DLIBDEFLATE_COMPRESSION_SUPPORT="yes"
+ -DLIBDEFLATE_DECOMPRESSION_SUPPORT="yes"
+
+ -DLIBDEFLATE_BUILD_GZIP="$(usex gzip "$(usex utils)" )"
+ -DLIBDEFLATE_GZIP_SUPPORT="$(usex gzip)"
+
+ -DLIBDEFLATE_ZLIB_SUPPORT="$(usex zlib)"
+
+ -DLIBDEFLATE_BUILD_TESTS="$(usex test)"
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/libdeflate/metadata.xml b/app-arch/libdeflate/metadata.xml
new file mode 100644
index 000000000000..17956aa98f85
--- /dev/null
+++ b/app-arch/libdeflate/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-wanted -->
+ <maintainer type="person" proxied="yes">
+ <email>negril.nx+gentoo@gmail.com</email>
+ <name>Paul Zander</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="gzip">Support the gzip format</flag>
+ <flag name="test">Build the test programs (requires <pkg>sys-libs/zlib</pkg>)</flag>
+ <flag name="utils">Build the libdeflate-gzip program</flag>
+ <flag name="zlib">Support the zlib format</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">ebiggers/libdeflate</remote-id>
+ </upstream>
+</pkgmetadata> \ No newline at end of file
diff --git a/app-arch/libpar2/libpar2-0.4.ebuild b/app-arch/libpar2/libpar2-0.4.ebuild
index 6408f5475665..31de2a7569ff 100644
--- a/app-arch/libpar2/libpar2-0.4.ebuild
+++ b/app-arch/libpar2/libpar2-0.4.ebuild
@@ -1,9 +1,7 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-
-inherit autotools-utils flag-o-matic
+EAPI=7
DESCRIPTION="A library for par2, extracted from par2cmdline"
HOMEPAGE="https://launchpad.net/libpar2/"
@@ -12,18 +10,18 @@ SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86"
-IUSE="static-libs"
RDEPEND="dev-libs/libsigc++:2"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
-DOCS=( AUTHORS ChangeLog README )
+src_configure() {
+ econf --disable-static
+}
-# Needed to install all headers properly (bug #391815)
-AUTOTOOLS_IN_SOURCE_BUILD=1
+src_install() {
+ default
-src_prepare() {
- autotools-utils_src_prepare
- append-cxxflags -std=c++11 #567498
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/app-arch/libpar2/metadata.xml b/app-arch/libpar2/metadata.xml
index 679fb9b86733..7ab5d6b5ddd8 100644
--- a/app-arch/libpar2/metadata.xml
+++ b/app-arch/libpar2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/lrzip-next/Manifest b/app-arch/lrzip-next/Manifest
new file mode 100644
index 000000000000..256514f707f8
--- /dev/null
+++ b/app-arch/lrzip-next/Manifest
@@ -0,0 +1 @@
+DIST lrzip-next-0.12.6.tar.gz 600081 BLAKE2B 952b3aefcf424b4626f14caaefc7b160a271330903227207cec249306750dfd24097abfdae159d82dc86e08711f51789ca72bcc66b6d7f4bdd9b892133759dae SHA512 768edaa4059e7a5561a738779cca5e5c46525c0a3f5888fc4e730fe6664f390fa8409060c86076b4b4cc327e317c37d59d557a55db67d97d39da6369788763c8
diff --git a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild b/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild
new file mode 100644
index 000000000000..e218f7e3e4fe
--- /dev/null
+++ b/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit autotools
+
+DESCRIPTION="Fork of Con Kolivas' lrzip program for compressing large files"
+HOMEPAGE="https://github.com/pete4abw/lrzip-next"
+SRC_URI="https://github.com/pete4abw/lrzip-next/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="asm static-libs year2038"
+
+RDEPEND="app-arch/bzip2
+ app-arch/bzip3
+ app-arch/lz4
+ app-arch/zstd
+ dev-libs/libgcrypt
+ dev-libs/libgpg-error
+ dev-libs/lzo
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+BDEPEND="amd64? ( dev-lang/nasm )"
+
+src_prepare() {
+ default
+
+ # configure.ac uses a small helper script, ./util/gitdesc.sh, to
+ # see if it's a tarball or git repo copy. If tarball, it extracts
+ # the version information from a local VERSION file and puts it into
+ # configure.ac at the top for major/minor/micro. To avoid the need
+ # for a BDEPEND on dev-vcs/git, we can do this directly.
+ local major=$(awk '/Major: / {printf "%s",$2; exit}' VERSION)
+ local minor=$(awk '/Minor: / {printf "%s",$2; exit}' VERSION)
+ local micro=$(awk '/Micro: / {printf "%s",$2; exit}' VERSION)
+ sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh major\])\]:${major}:" configure.ac
+ sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh minor\])\]:${minor}:" configure.ac
+ sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh micro\])\]:${micro}:" configure.ac
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ $(use_enable static-libs static) \
+ $(use_enable amd64 asm)
+ )
+
+ # This configure switch disappears on a musl system for some
+ # reason. However, this package is currently broken on musl,
+ # but we'll leave this in place while we see if upstream has
+ # any advice.
+ if ! use elibc_musl; then
+ myconf+=( $(use_enable year2038) )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/app-arch/lrzip-next/metadata.xml b/app-arch/lrzip-next/metadata.xml
new file mode 100644
index 000000000000..d0dea613ffd3
--- /dev/null
+++ b/app-arch/lrzip-next/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kumba@gentoo.org</email>
+ <name>Joshua Kinard</name>
+ </maintainer>
+ <longdescription>
+ A fork of Con Kolivas' 'lrzip' program that is actively maintained. Lrzip
+ is a compression program optimised for large files. The larger the file and
+ the more memory you have, the better the compression advantage this will
+ provide, especially once the files are larger than 100MB. The advantage can
+ be chosen to be either size (much smaller than bzip2) or speed (much faster
+ than bzip2).
+ </longdescription>
+ <upstream>
+ <remote-id type="github">pete4abw/lrzip-next</remote-id>
+ </upstream>
+ <use>
+ <flag name="year2038">Enables support for timestamps after the year 2038</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-arch/lrzip/Manifest b/app-arch/lrzip/Manifest
index c40fbe97bd6d..4d81e8d9358a 100644
--- a/app-arch/lrzip/Manifest
+++ b/app-arch/lrzip/Manifest
@@ -1 +1 @@
-DIST lrzip-0.631_p20190619.tar.gz 259195 BLAKE2B d0bedfe02485011e48fa07240b1eef68560d8d61f5d28dae25bd9fcb1c41c1b8bc1b552acb06a49d853b70a0912371cec9caebb2bf7905ef528c2408d2153297 SHA512 f366c31c84a52f6ccfba56e8b11c0bcd270482d9d120e07783fbe310d7a62dddfa60ecd310a7630e7c98cfb961f57fc9e6b843d3857d0c90d36c580074528298
+DIST lrzip-0.651.tar.gz 238854 BLAKE2B 2680867ccbee6ff669581017c9bb22db4d7eba0fda80b935bd088191809cb8baa833a03e7732cd1fe5a0487edfe577b34f34dcdcda121c114145bff9fc17ba79 SHA512 97671c4705bc06dfd037e38f4384a5ffaf2e3508da217406ac43642b88eae16576818a378bce519812204fecefbd6552a75fc3e74af729ab7b11724b7a6d1998
diff --git a/app-arch/lrzip/files/lrzip-0.631-solaris.patch b/app-arch/lrzip/files/lrzip-0.631-solaris.patch
deleted file mode 100644
index d8eb95e563d2..000000000000
--- a/app-arch/lrzip/files/lrzip-0.631-solaris.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/liblrzip.c
-+++ b/liblrzip.c
-@@ -36,7 +36,7 @@
- #include "lrzip_core.h"
- #include "rzip.h"
-
--#if defined(__APPLE__) || defined(__FreeBSD__)
-+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__sun) || defined(sun)
- # define fmemopen(s, len, modes) fake_fmemopen((s), (len), (modes))
- static FILE *fake_fmemopen(void *buf, size_t buflen, const char *mode)
- {
diff --git a/app-arch/lrzip/files/lrzip-missing-stdarg_h.patch b/app-arch/lrzip/files/lrzip-missing-stdarg_h.patch
deleted file mode 100644
index 8f427d46a6a1..000000000000
--- a/app-arch/lrzip/files/lrzip-missing-stdarg_h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur Lrzip.h.orig Lrzip.h
---- a/Lrzip.h 2013-11-30 20:07:27.343086997 +0000
-+++ b/Lrzip.h 2013-11-30 20:07:44.072641056 +0000
-@@ -22,6 +22,7 @@
-
- #include <stdbool.h>
- #include <stdio.h>
-+#include <stdarg.h>
- #ifdef _WIN32
- # include <stddef.h>
- #else
diff --git a/app-arch/lrzip/lrzip-0.631_p20190619.ebuild b/app-arch/lrzip/lrzip-0.631_p20190619.ebuild
deleted file mode 100644
index 65be3c93370a..000000000000
--- a/app-arch/lrzip/lrzip-0.631_p20190619.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-MY_COMMIT="b9220181288c5c9920ff00f00005b31a9e40e387"
-
-DESCRIPTION="Long Range ZIP or Lzma RZIP optimized for compressing large files"
-HOMEPAGE="https://github.com/ckolivas/lrzip"
-SRC_URI="https://github.com/ckolivas/lrzip/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="static-libs"
-
-RDEPEND="dev-libs/lzo
- app-arch/bzip2
- sys-libs/zlib:="
-DEPEND="${RDEPEND}
- x86? ( dev-lang/nasm )
- virtual/perl-Pod-Parser"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-missing-stdarg_h.patch
- "${FILESDIR}"/${PN}-0.631-solaris.patch
-)
-
-S="${WORKDIR}/${PN}-${MY_COMMIT}"
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- # Don't collide with net-dialup/lrzsz and /usr/bin/lrz, bug #588206
- rm -f "${ED}"/usr/bin/lrz
- rm -f "${ED}"/usr/share/man/man1/lrz.*
-
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/app-arch/lrzip/lrzip-0.651.ebuild b/app-arch/lrzip/lrzip-0.651.ebuild
new file mode 100644
index 000000000000..6e0a4f4510ab
--- /dev/null
+++ b/app-arch/lrzip/lrzip-0.651.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Long Range ZIP or Lzma RZIP optimized for compressing large files"
+HOMEPAGE="https://github.com/ckolivas/lrzip"
+SRC_URI="https://github.com/ckolivas/lrzip/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="static-libs"
+
+RDEPEND="app-arch/bzip2
+ app-arch/lz4
+ dev-libs/lzo
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-perl/Pod-Parser
+ amd64? ( dev-lang/nasm )
+ x86? ( dev-lang/nasm )"
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ # ASM optimizations are only available on amd64 and x86, bug #829003
+ local asm=no
+ if use amd64 || use x86; then
+ asm=yes
+ fi
+
+ econf \
+ $(use_enable static-libs static) \
+ --enable-asm=${asm}
+}
+
+src_install() {
+ default
+ # Don't collide with net-dialup/lrzsz and /usr/bin/lrz, bug #588206
+ rm -f "${ED}"/usr/bin/lrz || die
+ rm -f "${ED}"/usr/share/man/man1/lrz.* || die
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/app-arch/lrzip/metadata.xml b/app-arch/lrzip/metadata.xml
index fba000cbc720..85eef5cdea59 100644
--- a/app-arch/lrzip/metadata.xml
+++ b/app-arch/lrzip/metadata.xml
@@ -1,7 +1,10 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!--maintainer-needed-->
+ <maintainer type="person">
+ <email>kumba@gentoo.org</email>
+ <name>Joshua Kinard</name>
+ </maintainer>
<longdescription>
This is a compression program optimised for large files. The larger the
file and the more memory you have, the better the compression advantage
diff --git a/app-arch/lunzip/Manifest b/app-arch/lunzip/Manifest
new file mode 100644
index 000000000000..a0288d57857a
--- /dev/null
+++ b/app-arch/lunzip/Manifest
@@ -0,0 +1,2 @@
+DIST lunzip-1.14.tar.gz 69284 BLAKE2B 8ef63a5cfd0cf839889785845ec84b23451cb69b1e09c84526e000b82b73aaaa01b99407e87bde416ca2ab638d9f9688fcb37f77fd53e2a8e0875646a54d304c SHA512 2aa530c4ef7ebcfa345c8ac8701712e7f973ee4a92d34c33a03dd02a31d76507c919da373b64bc6b49b7868af8e4444d4b12bd71b8760e9b333c2a013ad95da1
+DIST lunzip-1.14.tar.gz.sig 72 BLAKE2B ab2ba6c265f197c322884898ae8ff5c8679ab8a1d2f71a2dfedcce9011e16fb723fd592b0edc3f48d540ad8d2578b799f28f9d609a7e26379e39e0cb7f908cc3 SHA512 38806848f904fb3700c908166a1ad2d601409fa13f1b0dc69372766b41a6f37ae0c5792964b8aae494320d47e603dc79f36b3fa7361ccf84b89835c14a6b7b11
diff --git a/app-arch/lunzip/lunzip-1.14.ebuild b/app-arch/lunzip/lunzip-1.14.ebuild
new file mode 100644
index 000000000000..11fb6199d603
--- /dev/null
+++ b/app-arch/lunzip/lunzip-1.14.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
+
+DESCRIPTION="Decompressor for the lzip format, written in C"
+HOMEPAGE="https://www.nongnu.org/lzip/lunzip.html"
+SRC_URI="https://download.savannah.gnu.org/releases/lzip/lunzip/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz.sig )"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
+
+src_configure() {
+ # not autotools-based
+ local myconf=(
+ --prefix="${EPREFIX}"/usr
+ CC="$(tc-getCC)"
+ CPPFLAGS="${CPPFLAGS}"
+ CFLAGS="${CFLAGS}"
+ LDFLAGS="${LDFLAGS}"
+ )
+
+ ./configure "${myconf[@]}" || die
+}
diff --git a/app-arch/lunzip/metadata.xml b/app-arch/lunzip/metadata.xml
new file mode 100644
index 000000000000..076793e3f54b
--- /dev/null
+++ b/app-arch/lunzip/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-arch/lxqt-archiver/Manifest b/app-arch/lxqt-archiver/Manifest
index 186a2637a7f1..2d13fc201bcd 100644
--- a/app-arch/lxqt-archiver/Manifest
+++ b/app-arch/lxqt-archiver/Manifest
@@ -1 +1,2 @@
-DIST lxqt-archiver-0.2.0.tar.xz 155912 BLAKE2B e5c92d5939d3e6d42a79804596e9acc67b007126b630cd9317df7d0d07bb8f3e27cf9ecf6e16eef3289d31ef3627b4fa870cdb5eb52a36489df1080b03509acd SHA512 478a04d0e6e4601dc342ae260c5db4178b01191cae263154dbe400b394e5cd4cb9cd8a6bab7e7c59af57d6bf20c47a5ad2663a85d0eab5f71fbaf584f7588fd7
+DIST lxqt-archiver-0.9.0.tar.xz 183352 BLAKE2B 60443b7f4407b85bc1233f00ad2e46861c17281331d3b611021ca14be2e159befa0c8303d51b9021d35aa246d4fd9138ceb4f4b19cd6143438f8c3b976f9c40d SHA512 42ee097ae7fb17dbd00d9b94e8673664911c73bb5f353d08177c78d548eb24c39aa1daf57347eeefcb46ec63a8702c37f63ca2b42fd22bc85aed8f7a41585f3c
+DIST lxqt-archiver-0.9.1.tar.xz 186600 BLAKE2B 365b849578f9f663ed7628c52c4c7205af10ea255dd131a94a6960c581111e02fedee01be0bd674d1ef71c9648cc5a58de1b548c972eb415cfae990e7045cfb4 SHA512 fd7862c85f6f93c870a4b28d2ed3705fcc0431e9b4d887f4fab6d860eddc5fe99d8a4c2f7cd2957c34d72b74a11b8eec49bbcca40dfee11f20f6a39f37e9ee00
diff --git a/app-arch/lxqt-archiver/lxqt-archiver-0.2.0.ebuild b/app-arch/lxqt-archiver/lxqt-archiver-0.9.0.ebuild
index 39548d1e7e9b..91f86ad18d8d 100644
--- a/app-arch/lxqt-archiver/lxqt-archiver-0.2.0.ebuild
+++ b/app-arch/lxqt-archiver/lxqt-archiver-0.9.0.ebuild
@@ -1,40 +1,44 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+MY_PV="$(ver_cut 1-2)"
inherit cmake xdg-utils
DESCRIPTION="Qt GUI File Archiver"
-HOMEPAGE="https://lxqt.github.io/"
+HOMEPAGE="https://lxqt-project.org/"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
- KEYWORDS="amd64 x86"
+ KEYWORDS="amd64 ~loong ~riscv x86"
fi
LICENSE="GPL-2 GPL-2+"
SLOT="0"
BDEPEND="
- dev-qt/linguist-tools:5
- >=dev-util/lxqt-build-tools-0.7.0
+ >=dev-qt/linguist-tools-5.15:5
+ >=dev-util/lxqt-build-tools-0.13.0
"
DEPEND="
+ dev-libs/glib:2
dev-libs/json-glib
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtwidgets:5
- dev-qt/qtx11extras:5
- >=x11-libs/libfm-qt-0.15.0
+ >=dev-qt/qtcore-5.15:5
+ >=dev-qt/qtgui-5.15:5
+ >=dev-qt/qtwidgets-5.15:5
+ >=dev-qt/qtx11extras-5.15:5
+ >=x11-libs/libfm-qt-1.4:=
"
RDEPEND="${DEPEND}"
pkg_postinst() {
xdg_desktop_database_update
+ xdg_icon_cache_update
elog "Please note that this is only a graphical front-end, and additional"
elog "packages are needed to have support for specific file formats."
diff --git a/app-arch/lxqt-archiver/lxqt-archiver-0.9.1.ebuild b/app-arch/lxqt-archiver/lxqt-archiver-0.9.1.ebuild
new file mode 100644
index 000000000000..c5fe417b24b6
--- /dev/null
+++ b/app-arch/lxqt-archiver/lxqt-archiver-0.9.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV="$(ver_cut 1-2)"
+
+inherit cmake xdg-utils
+
+DESCRIPTION="Qt GUI File Archiver"
+HOMEPAGE="https://lxqt-project.org/"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
+else
+ SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~loong ~riscv ~x86"
+fi
+
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+
+BDEPEND="
+ >=dev-qt/linguist-tools-5.15:5
+ >=dev-util/lxqt-build-tools-0.13.0
+"
+DEPEND="
+ dev-libs/glib:2
+ dev-libs/json-glib
+ >=dev-qt/qtcore-5.15:5
+ >=dev-qt/qtgui-5.15:5
+ >=dev-qt/qtwidgets-5.15:5
+ >=dev-qt/qtx11extras-5.15:5
+ >=x11-libs/libfm-qt-1.4:=
+"
+RDEPEND="${DEPEND}"
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+
+ elog "Please note that this is only a graphical front-end, and additional"
+ elog "packages are needed to have support for specific file formats."
+ elog "For example, to be able to work with the 7-Zip format, the"
+ elog "'app-arch/p7zip' package may be used."
+ elog "For the full list of supported formats, see the 'README.md' file:"
+ elog "https://github.com/lxqt/lxqt-archiver/blob/master/README.md"
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-arch/lxqt-archiver/metadata.xml b/app-arch/lxqt-archiver/metadata.xml
index 19d4de86f7b1..863fe862ce78 100644
--- a/app-arch/lxqt-archiver/metadata.xml
+++ b/app-arch/lxqt-archiver/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>lxqt@gentoo.org</email>
diff --git a/app-arch/lz4/Manifest b/app-arch/lz4/Manifest
index cfa76df25ec4..dfd1e824e657 100644
--- a/app-arch/lz4/Manifest
+++ b/app-arch/lz4/Manifest
@@ -1 +1 @@
-DIST lz4-1.9.2.tar.gz 305796 BLAKE2B 0021487bee8657bc825fdd2b98a6dc8a6d10be3240fe0bebf6563e9c855a15bf5440a02d5cd6ee1f1e8502743348bcec1e866d3287b07e623887e9eb9da35eee SHA512 ae714c61ec8e33ed91359b63f2896cfa102d66b730dce112b74696ec5850e59d88bd5527173e01e354a70fbe8f036557a47c767ee0766bc5f9c257978116c3c1
+DIST lz4-1.9.4.tar.gz 354063 BLAKE2B 2289cdce36acd35283bf2f02ef4d6d8f4805563be6d5a3492f3d6ea7975fb6bd14e1ac2e505df9747776edf8bcf0da7ba4ae7084b150e3ec08a52a9885f92ad5 SHA512 043a9acb2417624019d73db140d83b80f1d7c43a6fd5be839193d68df8fd0b3f610d7ed4d628c2a9184f7cde9a0fd1ba9d075d8251298e3eb4b3a77f52736684
diff --git a/app-arch/lz4/lz4-1.9.2.ebuild b/app-arch/lz4/lz4-1.9.2.ebuild
deleted file mode 100644
index 6ac3dce5c2ff..000000000000
--- a/app-arch/lz4/lz4-1.9.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-inherit cmake-multilib
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/lz4/lz4.git"
- EGIT_BRANCH=dev
-else
- SRC_URI="https://github.com/lz4/lz4/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Extremely Fast Compression algorithm"
-HOMEPAGE="https://github.com/lz4/lz4"
-
-LICENSE="BSD-2 GPL-2"
-# https://abi-laboratory.pro/tracker/timeline/lz4/
-SLOT="0/r132"
-IUSE="static-libs"
-
-CMAKE_USE_DIR=${S}/contrib/cmake_unofficial
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_STATIC_LIBS=$(usex static-libs)
- )
-
- cmake_src_configure
-}
diff --git a/app-arch/lz4/lz4-1.9.4.ebuild b/app-arch/lz4/lz4-1.9.4.ebuild
new file mode 100644
index 000000000000..05adb1eacb6a
--- /dev/null
+++ b/app-arch/lz4/lz4-1.9.4.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="Extremely Fast Compression algorithm"
+HOMEPAGE="https://github.com/lz4/lz4"
+SRC_URI="https://github.com/lz4/lz4/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2 GPL-2"
+# https://abi-laboratory.pro/tracker/timeline/lz4/
+SLOT="0/r132"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="static-libs"
+
+CMAKE_USE_DIR=${S}/build/cmake
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_STATIC_LIBS=$(usex static-libs)
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/lz4/lz4-9999.ebuild b/app-arch/lz4/lz4-9999.ebuild
deleted file mode 100644
index 944d7e883618..000000000000
--- a/app-arch/lz4/lz4-9999.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-inherit cmake-multilib
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/lz4/lz4.git"
- EGIT_BRANCH=dev
-else
- SRC_URI="https://github.com/Cyan4973/lz4/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Extremely Fast Compression algorithm"
-HOMEPAGE="https://github.com/lz4/lz4"
-
-LICENSE="BSD-2 GPL-2"
-# https://abi-laboratory.pro/tracker/timeline/lz4/
-SLOT="0/r132"
-IUSE="static-libs"
-
-CMAKE_USE_DIR=${S}/contrib/cmake_unofficial
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_STATIC_LIBS=$(usex static-libs)
- )
-
- cmake_src_configure
-}
diff --git a/app-arch/lz4/metadata.xml b/app-arch/lz4/metadata.xml
index 694c0de63b6c..f27607ccce5c 100644
--- a/app-arch/lz4/metadata.xml
+++ b/app-arch/lz4/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>ryao@gentoo.org</email>
- <name>Richard Yao</name>
- </maintainer>
- <maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
@@ -14,7 +10,7 @@
<name>Guilherme Amadio</name>
</maintainer>
<upstream>
- <remote-id type="github">Cyan4973/lz4</remote-id>
+ <remote-id type="github">lz4/lz4</remote-id>
<remote-id type="cpe">cpe:/a:lz4_project:lz4</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/lz5/lz5-2.0.ebuild b/app-arch/lz5/lz5-2.0-r1.ebuild
index 9a430c70373f..fa598cb0f31f 100644
--- a/app-arch/lz5/lz5-2.0.ebuild
+++ b/app-arch/lz5/lz5-2.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
@@ -12,7 +12,6 @@ SRC_URI="https://github.com/inikep/lz5/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2 BSD-2"
SLOT="0/2"
KEYWORDS="~amd64"
-IUSE="static-libs"
src_prepare() {
default
@@ -21,13 +20,13 @@ src_prepare() {
}
src_compile() {
- emake -Clib CC="$(tc-getCC)" lib liblz5.pc
- emake -Cprograms CC="$(tc-getCC)" lz5
+ emake -C lib CC="$(tc-getCC)" lib liblz5.pc
+ emake -C programs CC="$(tc-getCC)" lz5
}
src_install() {
- emake install DESTDIR="${D}" PREFIX="/usr" LIBDIR="/usr/$(get_libdir)"
- if ! use static-libs; then
- rm "${D}"/usr/$(get_libdir)/liblz5.a || die
- fi
+ emake install DESTDIR="${ED}" PREFIX="/usr" LIBDIR="/usr/$(get_libdir)"
+ rm "${ED}"/usr/$(get_libdir)/liblz5.a || die
+
+ einstalldocs
}
diff --git a/app-arch/lz5/metadata.xml b/app-arch/lz5/metadata.xml
index dffa8fbd23c4..7bab3f2ee59a 100644
--- a/app-arch/lz5/metadata.xml
+++ b/app-arch/lz5/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/lzip/Manifest b/app-arch/lzip/Manifest
index 468a2cb8f367..0a3c51fd9323 100644
--- a/app-arch/lzip/Manifest
+++ b/app-arch/lzip/Manifest
@@ -1 +1,2 @@
-DIST lzip-1.21.tar.gz 105558 BLAKE2B 07658ec901bdfc255fef5af24b62614b2db9821b9a2820daa5137fd47ede0b68bbf3eac340ad5484d2ef7011d15c2eaccf19abc9e33b5c96273fc9b9d323083e SHA512 02e31a8fc9431e88edbb0fd467e9dd0947203e693e6581be1a8d25d96c74d9c3794f1fef9e4c993553ba74330c8f5851cad6315b49f263fe9cf2444225af4362
+DIST lzip-1.24.1.tar.gz 123899 BLAKE2B b387577087af5596ea49af16c44e1dfc11f78cbcc1031fc480a4e7ef1a01f4d8fb35c03d8cbeb7f6feb51e427708b1ed0f9a160e80ff938555ea3cf34f28be7c SHA512 b67b3b8ab594306dd863b6f51525ab80e90cbff3af1faf190fd7a35eac895ef869e6a1f8f503d623c16ad5c1496816c8f851abf0be5983d53052bea80afc34bd
+DIST lzip-1.24.1.tar.gz.sig 72 BLAKE2B 6b957524cbca62aed7eb1dc35284da24550d8d90c8bf95d0c84063afe5e0cc1fc6f70bd513dece615f286e0d49c1a7dfcf6940a443f293975380c8e3ada2cb2d SHA512 40cfa84a7c7e6b907d76560eae27b22cb11aea79a94a2231e041952fe0f452a4e291355f60965bd6ca712e03f4ebf5381b759409e66a4a12653a005a6a1d8395
diff --git a/app-arch/lzip/lzip-1.21.ebuild b/app-arch/lzip/lzip-1.21.ebuild
deleted file mode 100644
index cde6febef71c..000000000000
--- a/app-arch/lzip/lzip-1.21.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="lossless data compressor based on the LZMA algorithm"
-HOMEPAGE="https://www.nongnu.org/lzip/lzip.html"
-SRC_URI="https://download.savannah.gnu.org/releases/${PN}/${P/_/-}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-S="${WORKDIR}/${P/_/-}"
-
-src_configure() {
- # not autotools-based
- ./configure \
- --prefix="${EPREFIX}"/usr \
- CXX="$(tc-getCXX)" \
- CPPFLAGS="${CPPFLAGS}" \
- CXXFLAGS="${CXXFLAGS}" \
- LDFLAGS="${LDFLAGS}" || die
-}
diff --git a/app-arch/lzip/lzip-1.24.1.ebuild b/app-arch/lzip/lzip-1.24.1.ebuild
new file mode 100644
index 000000000000..8d1cf3e805da
--- /dev/null
+++ b/app-arch/lzip/lzip-1.24.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
+
+DESCRIPTION="Lossless data compressor based on the LZMA algorithm"
+HOMEPAGE="https://www.nongnu.org/lzip/lzip.html"
+SRC_URI="https://download.savannah.gnu.org/releases/${PN}/${P/_/-}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/${PN}/${P/_/-}.tar.gz.sig )"
+S="${WORKDIR}/${P/_/-}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
+
+src_configure() {
+ # not autotools-based
+ ./configure \
+ --prefix="${EPREFIX}"/usr \
+ CXX="$(tc-getCXX)" \
+ CPPFLAGS="${CPPFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}" || die
+}
diff --git a/app-arch/lzip/metadata.xml b/app-arch/lzip/metadata.xml
index e19adf122bfb..4989f733c740 100644
--- a/app-arch/lzip/metadata.xml
+++ b/app-arch/lzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -9,4 +9,7 @@
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
+<upstream>
+ <remote-id type="savannah-nongnu">lzip</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/app-arch/lziprecover/Manifest b/app-arch/lziprecover/Manifest
index 78981a3e1ab7..be787d9ba915 100644
--- a/app-arch/lziprecover/Manifest
+++ b/app-arch/lziprecover/Manifest
@@ -1 +1,2 @@
-DIST lziprecover-1.21.tar.gz 112895 BLAKE2B b758f863498caea7873358b5f64eab4d5dfa37b43eb875824475387a7fd89e63721384207c014d662a9a6fa4e9a094f1a3c5fb9c1680d235382873f456f0dad3 SHA512 4afd3ce319bacdd1870512af5568179c0d472f354b1e1562a54c527a37903ce3f0f0044abf273ecb113a555cc7a33ac343f5dbfb26fa29df9b24ecc9768e4ed5
+DIST lziprecover-1.24.tar.gz 161471 BLAKE2B b96bba4aff4423c8681ae5c86efa66af61ee88b50050e262959b51c22927c594a8f5ca8f3d59a46ddae842a5078fe2ed955e279a412708247f7dd3140e6763b7 SHA512 b1f126fa24b1627c6e98ba8fa4fc30dac248f81f92be12f1063db6e40fd9c6f9f8b5a2306bde72f30623a64de5befec28b34073309f393317b56a38527947466
+DIST lziprecover-1.24.tar.gz.sig 72 BLAKE2B 8f4aa191b19e92c225138331f278bb907cf823917ee528ec3f9da9fa75abcc94eea4d676979d7b914fe099b7bed49c1feccf6e9fb069a873ad3b723a4e65af85 SHA512 d708a0573d9a46b92d59c08a988068735e0f76316896489f2ce0585d09f0178718bdd5fd59dc869c7314ba8fb64c4c4aa73eb8e226db1564cbc964422bde13e4
diff --git a/app-arch/lziprecover/lziprecover-1.21.ebuild b/app-arch/lziprecover/lziprecover-1.24.ebuild
index 5c6d0c31853b..df9656261aa1 100644
--- a/app-arch/lziprecover/lziprecover-1.21.ebuild
+++ b/app-arch/lziprecover/lziprecover-1.24.ebuild
@@ -1,20 +1,27 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit toolchain-funcs
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
DESCRIPTION="Lziprecover is a data recovery tool and decompressor for lzip compressed files"
HOMEPAGE="https://www.nongnu.org/lzip/lziprecover.html"
SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz.sig )"
+S="${WORKDIR}/${P/_/-}"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
+IUSE="test"
+RESTRICT="!test? ( test )"
-S="${WORKDIR}/${P/_/-}"
+BDEPEND="
+ test? ( app-arch/lzip )
+ verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )
+"
src_configure() {
# not autotools-based
diff --git a/app-arch/lziprecover/metadata.xml b/app-arch/lziprecover/metadata.xml
index 5e2c4af9ecad..fc9a5eadba79 100644
--- a/app-arch/lziprecover/metadata.xml
+++ b/app-arch/lziprecover/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
- <maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
diff --git a/app-arch/lzlib/Manifest b/app-arch/lzlib/Manifest
index 47995833baf1..de0cfa78feec 100644
--- a/app-arch/lzlib/Manifest
+++ b/app-arch/lzlib/Manifest
@@ -1 +1,2 @@
-DIST lzlib-1.11.tar.gz 105873 BLAKE2B 6caadc4c3b78db835bcf4f11e5290342f0f952943006589345898a85211b0a0ae5d775d0a8e7747c549eae00dd0abd2e2afb5c07eb75b4fda712a9361a71bd59 SHA512 5aa3ff084177efe906518724a98a78c32d1c0e02b967800a44388fc6af441de48fcc5899457913fca11fae3beb8bebc260ac447f0a336b1c14f3f13726114567
+DIST lzlib-1.14.tar.gz 131624 BLAKE2B d975fece48d92be354202581a5be5c709b8acdbb41b3782ec0a79939278ada42aa6765bcef7a1cb70bfb7808b8a88d5e6ed48924f13fcc291a4a0d2057f0f4bf SHA512 1582b99149af18ea119f015a9dbf224aa2ebc78240432415b2da20bd5a4e4dc3fdea2489789bc581bdccdba6f4eab13c69c5801e8a43ab9a829c2eb9b801797f
+DIST lzlib-1.14.tar.gz.sig 72 BLAKE2B 104d914d4b85bab0457017ab5663962ac1573dac421e11a94eaa9e77f6338501c96444d45e1e4101e9ea48409c2b30037a7b07c2a188cff6fcf47c6d067d1398 SHA512 852ebd4a460021e642a673a8c6d88b25a2b45dff4a45f7ccfc6bbb531be3c967b8e01308aa35088c843002561c1c4b813a47ff4b0fd4417ebf12f188af8d36be
diff --git a/app-arch/lzlib/lzlib-1.11.ebuild b/app-arch/lzlib/lzlib-1.14.ebuild
index 1b4da858973b..12043b864bb4 100644
--- a/app-arch/lzlib/lzlib-1.11.ebuild
+++ b/app-arch/lzlib/lzlib-1.14.ebuild
@@ -1,18 +1,21 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit toolchain-funcs
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
DESCRIPTION="Library for lzip compression"
HOMEPAGE="https://www.nongnu.org/lzip/lzlib.html"
SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz.sig )"
LICENSE="libstdc++" # fancy form of GPL-2+ with library exception
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE=""
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
src_configure() {
local myconf=(
@@ -21,6 +24,7 @@ src_configure() {
--disable-ldconfig
--prefix="${EPREFIX}"/usr
--libdir='$(prefix)'/$(get_libdir)
+ AR="$(tc-getAR)"
CC="$(tc-getCC)"
CFLAGS="${CFLAGS}"
CPPFLAGS="${CPPFLAGS}"
@@ -30,3 +34,8 @@ src_configure() {
# not autotools-based
./configure "${myconf[@]}" || die
}
+
+src_install() {
+ emake DESTDIR="${D}" install install-man
+ einstalldocs
+}
diff --git a/app-arch/lzlib/metadata.xml b/app-arch/lzlib/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/lzlib/metadata.xml
+++ b/app-arch/lzlib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/lzma/Manifest b/app-arch/lzma/Manifest
index c69705b2f6a3..d38da2b9d295 100644
--- a/app-arch/lzma/Manifest
+++ b/app-arch/lzma/Manifest
@@ -1,2 +1 @@
DIST lzma-19.00.7z 1082692 BLAKE2B 88aca3f3225d589c9b1b0fbf4c196db8e6e8df362f926736a45e1f80d302c132b25537203b0a903da9de5f3b0398b10901f126cf6905fcbdf0a57ee894e74b6d SHA512 60532483249d86960d5c481dc88ebeafabb7e435afb6188bc26f38177b8534ef3da83317d6920d99103d4f10a8dcdb624489ea5ddad8e0c8732bab1bb4ebd7eb
-DIST lzma-9.20.tar.bz2 534077 BLAKE2B c1be526d6fb9f68da10b654940a92420b6c708c7aefe213394cf1c7650b3d65c4f54d3ca0663e52be13aa9f996ff9cc87262fac8b76dd0654e839cefc073c374 SHA512 1c495530834107430a675fb48c006093edc301ec7a2c2f273efd62ff260f3056503bb2c3ddef63e82f5ff04b1347381055cf6cacd59eee9d451c4d841c13cd35
diff --git a/app-arch/lzma/lzma-19.00.ebuild b/app-arch/lzma/lzma-19.00.ebuild
index 491acc885393..b4759f78f3fd 100644
--- a/app-arch/lzma/lzma-19.00.ebuild
+++ b/app-arch/lzma/lzma-19.00.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,7 +12,7 @@ SRC_URI="mirror://sourceforge/sevenzip/${MY_P}.7z -> ${P}.7z"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="doc"
BDEPEND="app-arch/p7zip"
diff --git a/app-arch/lzma/lzma-9.20-r1.ebuild b/app-arch/lzma/lzma-9.20-r1.ebuild
deleted file mode 100644
index 32cff7d3dea7..000000000000
--- a/app-arch/lzma/lzma-9.20-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-MY_P="${PN}${PV//.}"
-DESCRIPTION="LZMA Stream Compressor from the SDK"
-HOMEPAGE="https://www.7-zip.org/sdk.html"
-SRC_URI="mirror://sourceforge/sevenzip/${MY_P}.tar.bz2 -> ${P}.tar.bz2"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="doc"
-
-S=${WORKDIR}
-
-src_compile() {
- cd CPP/7zip/Bundles/LzmaCon || die
- emake -f makefile.gcc \
- CXX="$(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS}" \
- CXX_C="$(tc-getCC) ${CFLAGS} ${CPPFLAGS}"
-}
-
-src_install() {
- newbin CPP/7zip/Bundles/LzmaCon/lzma lzmacon
- dodoc lzma.txt history.txt
- use doc && dodoc 7zC.txt 7zFormat.txt Methods.txt
-}
-
-pkg_postinst() {
- einfo "The lzma binary is now 'lzmacon' to avoid xz-utils conflicts #218459"
-}
diff --git a/app-arch/lzma/metadata.xml b/app-arch/lzma/metadata.xml
index 3a5f1e16e766..0157f8bc4f51 100644
--- a/app-arch/lzma/metadata.xml
+++ b/app-arch/lzma/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>hfern@fernhout.info</email>
<name>Hans Fernhout</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/app-arch/lzop/lzop-1.04.ebuild b/app-arch/lzop/lzop-1.04-r1.ebuild
index 96e63bc39402..f8a665211ba0 100644
--- a/app-arch/lzop/lzop-1.04.ebuild
+++ b/app-arch/lzop/lzop-1.04-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="6"
+EAPI=8
DESCRIPTION="Utility for fast (even real-time) compression/decompression"
HOMEPAGE="https://www.lzop.org/"
@@ -9,14 +9,14 @@ SRC_URI="https://www.lzop.org/download/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
RDEPEND=">=dev-libs/lzo-2"
DEPEND="${RDEPEND}"
src_test() {
einfo "compressing config.status to test"
+
src/lzop config.status || die 'compression failed'
ls -la config.status{,.lzo}
src/lzop -t config.status.lzo || die 'lzo test failed'
diff --git a/app-arch/lzop/metadata.xml b/app-arch/lzop/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/lzop/metadata.xml
+++ b/app-arch/lzop/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/makeself/Manifest b/app-arch/makeself/Manifest
index ba4d86418fe3..87361737f561 100644
--- a/app-arch/makeself/Manifest
+++ b/app-arch/makeself/Manifest
@@ -1 +1 @@
-DIST release-2.2.0.tar.gz 21640 BLAKE2B 32b06157829864918d225a136043a5c9b7c6c543351e981c0e3cdce84cbbe4c52f00870bb04d29bfd79e715c1c708b51cc9958d495a9633afb9a8d342601c20d SHA512 11cd536baed2d56405103f18a8318a202092755a74baf10730aa58dc57032e327697b1c7f76bf9bf438927093ba9ac467ffa0c4564c7f6b1d3b2b3936f34fa73
+DIST makeself-2.5.0.tar.gz 43996 BLAKE2B 60e5b7a55bd03e45d25753600ddb4e0e15f05eabc95db18f1a9da10308d018bb913ba1e8bc264c3bd828c3d229aca34fae4ab1682bf6cf59c591a6fdef186061 SHA512 cd0ce98579f00a02f9559848b39e0a6efea9df1866073d419f0b6560034cc186ed8315f8b4589e03f626b040727d9ae646bc2abaebe4f4da556b87617bdd770f
diff --git a/app-arch/makeself/files/makeself-2.2.0-help-header.patch b/app-arch/makeself/files/makeself-2.2.0-help-header.patch
deleted file mode 100644
index 5726bf55f7da..000000000000
--- a/app-arch/makeself/files/makeself-2.2.0-help-header.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From c9f605cb4a3903985f2c6f816c30c1edf728c1b5 Mon Sep 17 00:00:00 2001
-From: Jon Salz <jsalz@google.com>
-Date: Mon, 27 Jan 2014 16:04:33 +0800
-Subject: [PATCH] Add --help-header option to prepend a string to the archive's
- --help.
-
----
- makeself-header.sh | 3 ++-
- makeself.sh | 71 ++++++++++++++++++++++++++++++------------------------
- 2 files changed, 41 insertions(+), 33 deletions(-)
-
-diff --git a/makeself-header.sh b/makeself-header.sh
-index e3f6c11..f97758c 100755
---- a/makeself-header.sh
-+++ b/makeself-header.sh
-@@ -13,6 +13,7 @@ label="$LABEL"
- script="$SCRIPT"
- scriptargs="$SCRIPTARGS"
- licensetxt="$LICENSE"
-+helpheader='$HELPHEADER'
- targetdir="$archdirname"
- filesizes="$filesizes"
- keep="$KEEP"
-@@ -119,7 +120,7 @@ MS_dd_Progress()
- MS_Help()
- {
- cat << EOH >&2
--Makeself version $MS_VERSION
-+\${helpheader}Makeself version $MS_VERSION
- 1) Getting help or info about \$0 :
- \$0 --help Print this message
- \$0 --info Print embedded info : title, default target directory, embedded script ...
-diff --git a/makeself.sh b/makeself.sh
-index 361d710..cb2d6f2 100755
---- a/makeself.sh
-+++ b/makeself.sh
-@@ -88,38 +88,39 @@ MS_Usage()
- {
- echo "Usage: $0 [params] archive_dir file_name label startup_script [args]"
- echo "params can be one or more of the following :"
-- echo " --version | -v : Print out Makeself version number and exit"
-- echo " --help | -h : Print out this help message"
-- echo " --quiet | -q : Do not print any messages other than errors."
-- echo " --gzip : Compress using gzip (default if detected)"
-- echo " --bzip2 : Compress using bzip2 instead of gzip"
-- echo " --pbzip2 : Compress using pbzip2 instead of gzip"
-- echo " --xz : Compress using xz instead of gzip"
-- echo " --compress : Compress using the UNIX 'compress' command"
-- echo " --complevel lvl : Compression level for gzip xz bzip2 and pbzip2 (default 9)"
-- echo " --base64 : Instead of compressing, encode the data using base64"
-- echo " --nocomp : Do not compress the data"
-- echo " --notemp : The archive will create archive_dir in the"
-- echo " current directory and uncompress in ./archive_dir"
-- echo " --copy : Upon extraction, the archive will first copy itself to"
-- echo " a temporary directory"
-- echo " --append : Append more files to an existing Makeself archive"
-- echo " The label and startup scripts will then be ignored"
-- echo " --target dir : Extract directly to a target directory"
-- echo " directory path can be either absolute or relative"
-- echo " --current : Files will be extracted to the current directory"
-- echo " Both --current and --target imply --notemp"
-- echo " --tar-extra opt : Append more options to the tar command line"
-- echo " --nomd5 : Don't calculate an MD5 for archive"
-- echo " --nocrc : Don't calculate a CRC for archive"
-- echo " --header file : Specify location of the header script"
-- echo " --follow : Follow the symlinks in the archive"
-- echo " --noprogress : Do not show the progress during the decompression"
-- echo " --nox11 : Disable automatic spawn of a xterm"
-- echo " --nowait : Do not wait for user input after executing embedded"
-- echo " program from an xterm"
-- echo " --lsm file : LSM file describing the package"
-- echo " --license file : Append a license file"
-+ echo " --version | -v : Print out Makeself version number and exit"
-+ echo " --help | -h : Print out this help message"
-+ echo " --quiet | -q : Do not print any messages other than errors."
-+ echo " --gzip : Compress using gzip (default if detected)"
-+ echo " --bzip2 : Compress using bzip2 instead of gzip"
-+ echo " --pbzip2 : Compress using pbzip2 instead of gzip"
-+ echo " --xz : Compress using xz instead of gzip"
-+ echo " --compress : Compress using the UNIX 'compress' command"
-+ echo " --complevel lvl : Compression level for gzip xz bzip2 and pbzip2 (default 9)"
-+ echo " --base64 : Instead of compressing, encode the data using base64"
-+ echo " --nocomp : Do not compress the data"
-+ echo " --notemp : The archive will create archive_dir in the"
-+ echo " current directory and uncompress in ./archive_dir"
-+ echo " --copy : Upon extraction, the archive will first copy itself to"
-+ echo " a temporary directory"
-+ echo " --append : Append more files to an existing Makeself archive"
-+ echo " The label and startup scripts will then be ignored"
-+ echo " --target dir : Extract directly to a target directory"
-+ echo " directory path can be either absolute or relative"
-+ echo " --current : Files will be extracted to the current directory"
-+ echo " Both --current and --target imply --notemp"
-+ echo " --tar-extra opt : Append more options to the tar command line"
-+ echo " --nomd5 : Don't calculate an MD5 for archive"
-+ echo " --nocrc : Don't calculate a CRC for archive"
-+ echo " --header file : Specify location of the header script"
-+ echo " --follow : Follow the symlinks in the archive"
-+ echo " --noprogress : Do not show the progress during the decompression"
-+ echo " --nox11 : Disable automatic spawn of a xterm"
-+ echo " --nowait : Do not wait for user input after executing embedded"
-+ echo " program from an xterm"
-+ echo " --lsm file : LSM file describing the package"
-+ echo " --license file : Append a license file"
-+ echo " --help-header file : Add a header to the archive's --help output"
- echo
- echo "Do not forget to give a fully qualified startup script name"
- echo "(i.e. with a ./ prefix if inside the archive)."
-@@ -254,6 +255,12 @@ do
- LSM_CMD="cat \"$2\" >> \"\$archname\""
- if ! shift 2; then MS_Help; exit 1; fi
- ;;
-+ --help-header)
-+ HELPHEADER=`sed -e "s/'/'\\\\\''/g" $2`
-+ if ! shift 2; then MS_Help; exit 1; fi
-+ [ -n "$HELPHEADER" ] && HELPHEADER="$HELPHEADER
-+"
-+ ;;
- -q | --quiet)
- QUIET=y
- shift
---
-1.8.5.5
-
diff --git a/app-arch/makeself/files/makeself-unpack b/app-arch/makeself/files/makeself-unpack
deleted file mode 100644
index 90b98312c8b9..000000000000
--- a/app-arch/makeself/files/makeself-unpack
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/bash
-
-# Glue to keep unpack_makeself() unchanged
-source /lib/gentoo/functions.sh
-find_unpackable_file() { echo "$@"; }
-debug-print() { :; }
-emktemp() { mktemp "$@"; }
-die() { eerror "$*"; exit 1; }
-assert() { _pipestatus="${PIPESTATUS[*]}"; [[ "${_pipestatus// /}" -eq 0 ]] || die; }
-
-# Straight copied from unpacker.eclass ... should be kept in sync
-
-unpack_banner() {
- echo ">>> Unpacking ${1##*/} to ${PWD}"
-}
-
-unpack_makeself() {
- local src_input=${1:-${A}}
- local src=$(find_unpackable_file "${src_input}")
- local skip=$2
- local exe=$3
-
- [[ -z ${src} ]] && die "Could not locate source for '${src_input}'"
-
- unpack_banner "${src}"
-
- if [[ -z ${skip} ]] ; then
- local ver=$(grep -m1 -a '#.*Makeself' "${src}" | awk '{print $NF}')
- local skip=0
- exe=tail
- case ${ver} in
- 1.5.*|1.6.0-nv*) # tested 1.5.{3,4,5} ... guessing 1.5.x series is same
- skip=$(grep -a ^skip= "${src}" | cut -d= -f2)
- ;;
- 2.0|2.0.1)
- skip=$(grep -a ^$'\t'tail "${src}" | awk '{print $2}' | cut -b2-)
- ;;
- 2.1.1)
- skip=$(grep -a ^offset= "${src}" | awk '{print $2}' | cut -b2-)
- (( skip++ ))
- ;;
- 2.1.2)
- skip=$(grep -a ^offset= "${src}" | awk '{print $3}' | head -n 1)
- (( skip++ ))
- ;;
- 2.1.3)
- skip=`grep -a ^offset= "${src}" | awk '{print $3}'`
- (( skip++ ))
- ;;
- 2.1.4|2.1.5|2.1.6|2.2.0)
- skip=$(grep -a offset=.*head.*wc "${src}" | awk '{print $3}' | head -n 1)
- skip=$(head -n ${skip} "${src}" | wc -c)
- exe="dd"
- ;;
- *)
- eerror "I'm sorry, but I was unable to support the Makeself file."
- eerror "The version I detected was '${ver}'."
- eerror "Please file a bug about the file ${src##*/} at"
- eerror "http://bugs.gentoo.org/ so that support can be added."
- die "makeself version '${ver}' not supported"
- ;;
- esac
- debug-print "Detected Makeself version ${ver} ... using ${skip} as offset"
- fi
- case ${exe} in
- tail) exe="tail -n +${skip} '${src}'";;
- dd) exe="dd ibs=${skip} skip=1 if='${src}'";;
- *) die "makeself cant handle exe '${exe}'"
- esac
-
- # lets grab the first few bytes of the file to figure out what kind of archive it is
- local filetype tmpfile=$(emktemp)
- eval ${exe} 2>/dev/null | head -c 512 > "${tmpfile}"
- filetype=$(file -b "${tmpfile}") || die
- case ${filetype} in
- *tar\ archive*)
- eval ${exe} | tar --no-same-owner -xf -
- ;;
- bzip2*)
- eval ${exe} | bzip2 -dc | tar --no-same-owner -xf -
- ;;
- gzip*)
- eval ${exe} | tar --no-same-owner -xzf -
- ;;
- compress*)
- eval ${exe} | gunzip | tar --no-same-owner -xf -
- ;;
- XZ*)
- eval ${exe} | unxz | tar --no-same-owner -xf -
- ;;
- *)
- eerror "Unknown filetype \"${filetype}\" ?"
- false
- ;;
- esac
- assert "failure unpacking (${filetype}) makeself ${src##*/} ('${ver}' +${skip})"
- rm "${tmpfile}"
-}
-
-for x; do unpack_makeself "$x" ; done
diff --git a/app-arch/makeself/makeself-2.2.0-r2.ebuild b/app-arch/makeself/makeself-2.2.0-r2.ebuild
deleted file mode 100644
index 798ab5b911ef..000000000000
--- a/app-arch/makeself/makeself-2.2.0-r2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit unpacker eutils
-
-DESCRIPTION="shell script that generates a self-extractible tar.gz"
-HOMEPAGE="http://www.megastep.org/makeself/"
-SRC_URI="https://github.com/megastep/makeself/archive/release-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 hppa ppc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="sys-apps/gentoo-functions"
-
-S="${WORKDIR}/${PN}-release-${PV}"
-
-PATCHES=( "${FILESDIR}/${P}-help-header.patch" )
-
-src_install() {
- dobin makeself-header.sh makeself.sh "${FILESDIR}"/makeself-unpack
- dosym makeself.sh /usr/bin/makeself
- doman makeself.1
- dodoc README.md makeself.lsm
-}
diff --git a/app-arch/makeself/makeself-2.5.0.ebuild b/app-arch/makeself/makeself-2.5.0.ebuild
new file mode 100644
index 000000000000..286161726b85
--- /dev/null
+++ b/app-arch/makeself/makeself-2.5.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature
+
+DESCRIPTION="Shell script that generates a self-extractible tar.gz"
+HOMEPAGE="https://makeself.io/"
+SRC_URI="https://github.com/megastep/makeself/archive/refs/tags/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ppc x86 ~amd64-linux ~x86-linux"
+
+# NB: The test framework requires bashunit (which isn't a big deal), but the
+# tests themselves are not of great quality. You should avoid running them
+# yourself as they like to run commands like gpg against your own ~/ settings.
+RESTRICT="test"
+
+S="${WORKDIR}/${PN}-release-${PV}"
+
+src_compile() { :; }
+
+src_install() {
+ dobin makeself-header.sh makeself.sh
+ dosym makeself.sh /usr/bin/makeself
+ doman makeself.1
+ dodoc README.md
+}
+
+pkg_postinst() {
+ optfeature "bzip3 support" app-arch/bzip3
+ optfeature "lz4 support" app-arch/lz4
+ optfeature "lzop support" app-arch/lzop
+ optfeature "pbzip2 support" app-arch/pbzip2
+ optfeature "pigz support" app-arch/pigz
+ optfeature "zstd support" app-arch/zstd
+
+ # Also bzip2 and xz are supported but they are in @system.
+}
diff --git a/app-arch/makeself/metadata.xml b/app-arch/makeself/metadata.xml
index 924a4644bdb9..8e783c72a1db 100644
--- a/app-arch/makeself/metadata.xml
+++ b/app-arch/makeself/metadata.xml
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>matthew@gentoo.org</email>
+ <name>Matthew Smith</name>
+ </maintainer>
+ <stabilize-allarches/>
<upstream>
<remote-id type="github">megastep/makeself</remote-id>
</upstream>
diff --git a/app-arch/metadata.xml b/app-arch/metadata.xml
index 72ecbb92d2e3..d03632f53b6a 100644
--- a/app-arch/metadata.xml
+++ b/app-arch/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The app-arch category contains tools for archiving, compressing and
@@ -37,4 +37,3 @@
kompresji i dekompresji zarówno pojedynczych plików jak i ich grup.
</longdescription>
</catmetadata>
-
diff --git a/app-arch/mscompress/files/mscompress-0.3-amd64.patch b/app-arch/mscompress/files/mscompress-0.3-amd64.patch
index 95e4e617aefc..305b809d2b60 100644
--- a/app-arch/mscompress/files/mscompress-0.3-amd64.patch
+++ b/app-arch/mscompress/files/mscompress-0.3-amd64.patch
@@ -1,5 +1,5 @@
---- mscompress.c.old 2006-11-27 23:58:51.000000000 +0100
-+++ mscompress.c 2006-11-27 23:59:50.000000000 +0100
+--- a/mscompress.c
++++ b/mscompress.c
@@ -25,6 +25,7 @@
#include <unistd.h>
#include <fcntl.h>
diff --git a/app-arch/mscompress/metadata.xml b/app-arch/mscompress/metadata.xml
index b4ad3e965eba..e00b6f587b41 100644
--- a/app-arch/mscompress/metadata.xml
+++ b/app-arch/mscompress/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/mscompress/mscompress-0.3-r1.ebuild b/app-arch/mscompress/mscompress-0.3-r1.ebuild
index 23ab7db21192..eb684b82abbc 100644
--- a/app-arch/mscompress/mscompress-0.3-r1.ebuild
+++ b/app-arch/mscompress/mscompress-0.3-r1.ebuild
@@ -1,24 +1,22 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-inherit eutils flag-o-matic toolchain-funcs
+inherit flag-o-matic toolchain-funcs
DESCRIPTION="Microsoft compress.exe/expand.exe compatible (de)compressor"
-HOMEPAGE="http://gnuwin32.sourceforge.net/packages/mscompress.htm"
+HOMEPAGE="https://gnuwin32.sourceforge.net/packages/mscompress.htm"
SRC_URI="ftp://ftp.penguin.cz/pub/users/mhi/mscompress/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
+KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-makefile.patch \
- "${FILESDIR}"/${P}-amd64.patch
-}
+PATCHES=(
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-amd64.patch
+)
src_configure() {
tc-export CC
@@ -29,5 +27,5 @@ src_configure() {
src_install() {
dobin mscompress msexpand
doman mscompress.1 msexpand.1
- dodoc README ChangeLog
+ einstalldocs
}
diff --git a/app-arch/mt-st/Manifest b/app-arch/mt-st/Manifest
index 4e723aba2a50..248625d6d3de 100644
--- a/app-arch/mt-st/Manifest
+++ b/app-arch/mt-st/Manifest
@@ -1,2 +1 @@
-DIST mt-st-1.3.tar.gz 35341 BLAKE2B c58eee9bd58a3fa5105fe3f8dfb56f1af1c5ed73f99e5179ea14bc11d66151d1e6b6c99f61194c700ed79ce10a7e7f75f78ffe9b7d2c45c85e620d4da1aaeb5c SHA512 1d026ae85e1ca367e72f1810042314070f592306d9ddec331b95ea4e1153dc3edee68d8798bdf7e055a4cf9c67ec8c539e5d188e87f0546f48b5f4ee4bc6a820
DIST mt-st-1.4.tar.gz 37864 BLAKE2B 25ae656b6442e53570366405ba76da9150cf1d4fe33c612bf922d8be967ce6b60be191948507a62bb1881d4be63ed192f7d03f1d63c38f5772aec2f3d2fe455b SHA512 e6655a5957d3ac470c0cb0a1955a12397aa22f3ea1a427cf776f6bf2d6fd665439b2bfa54c3870b7974da537f0fe71d3be43126be1a7db903e6bc7be4cfb10ec
diff --git a/app-arch/mt-st/metadata.xml b/app-arch/mt-st/metadata.xml
index 5fa14a0aa1e3..00fe2df492cd 100644
--- a/app-arch/mt-st/metadata.xml
+++ b/app-arch/mt-st/metadata.xml
@@ -1,10 +1,7 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>jer@gentoo.org</email>
- <name>Jeroen Roovers</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">iustin/mt-st</remote-id>
</upstream>
diff --git a/app-arch/mt-st/mt-st-1.3.ebuild b/app-arch/mt-st/mt-st-1.3.ebuild
deleted file mode 100644
index 9b9387f7de4d..000000000000
--- a/app-arch/mt-st/mt-st-1.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="control magnetic tape drive operation"
-HOMEPAGE="https://github.com/iustin/mt-st"
-SRC_URI="https://github.com/iustin/mt-st/releases/download/${P}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 hppa ~ia64 ~mips ppc ppc64 sparc x86"
-
-src_compile() {
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} ${LDFLAGS}"
-}
-
-src_install() {
- dosbin mt stinit
- doman mt.1 stinit.8
- dodoc README* stinit.def.examples
-}
diff --git a/app-arch/mt-st/mt-st-1.4.ebuild b/app-arch/mt-st/mt-st-1.4.ebuild
index 8677862cdc02..55b614c829d6 100644
--- a/app-arch/mt-st/mt-st-1.4.ebuild
+++ b/app-arch/mt-st/mt-st-1.4.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit toolchain-funcs
DESCRIPTION="control magnetic tape drive operation"
@@ -10,7 +11,7 @@ SRC_URI="https://github.com/iustin/mt-st/releases/download/v${PV}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
src_configure() {
tc-export CC
diff --git a/app-arch/mt-st/mt-st-9999.ebuild b/app-arch/mt-st/mt-st-9999.ebuild
index 6201e07af279..4588f304d124 100644
--- a/app-arch/mt-st/mt-st-9999.ebuild
+++ b/app-arch/mt-st/mt-st-9999.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit git-r3 toolchain-funcs
DESCRIPTION="control magnetic tape drive operation"
@@ -10,7 +11,6 @@ EGIT_REPO_URI="https://github.com/iustin/mt-st"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS=""
src_configure() {
tc-export CC
diff --git a/app-arch/ncompress/Manifest b/app-arch/ncompress/Manifest
index 8f589337de20..520e87a459c9 100644
--- a/app-arch/ncompress/Manifest
+++ b/app-arch/ncompress/Manifest
@@ -1,2 +1 @@
-DIST ncompress-4.2.4.5.tar.gz 35562 BLAKE2B a09661659a72cf4be40e143d8cff53779de7423c0337d8c92863509390d8adc355d660da98db9de431bb4c990f8d10955e19a97188b100450ff9ea2caf19ae8d SHA512 487e8d5ca743c3aba19cf69f7ec62bdc0784e43af5737f06d6d4257f2f33899eb3d293ed049f57b3164e344a0fddc077bc73437564977bad8de45816354c8bf3
-DIST ncompress-4.2.4.6.tar.gz 36006 BLAKE2B 1460fe803ed621e5e6e5ab506d8909acbfb1d3b91421cf7c7bc10b6b03b0cb6bb4ea616240a7aa500813d5fbf0a958e1e981da8a5f752d985ddcbf7fe9280d9c SHA512 03dd9670c48548d6f7a028dd307758ce7ac61997297c1075d65457ac849e8f2d710bc38fa9eb42e4b2cac163c1b93b7cf7eb197e90cbd689a1274df3de2a3ed8
+DIST ncompress-5.0.tar.gz 34185 BLAKE2B 7b296bd00024bfb483d3261ff8aa6e47a6be8c62b445c3d456d702b69fbc2a7b731326f7ea91aa331ba8e8a27936f4318b3e252cc978b6bf3198e8812988913f SHA512 5bc886f98f25b03d034e8d8ebb0ee9388d727ee3e0c6d8a906698b2f8fa5c930f55d857486244b7f40447c7b74f3c620626600db619d0c6d6fd434f52912be42
diff --git a/app-arch/ncompress/metadata.xml b/app-arch/ncompress/metadata.xml
index 0d4bcdec12c1..f8e16dcb5488 100644
--- a/app-arch/ncompress/metadata.xml
+++ b/app-arch/ncompress/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/ncompress/ncompress-4.2.4.5.ebuild b/app-arch/ncompress/ncompress-4.2.4.5.ebuild
deleted file mode 100644
index 33754e58912e..000000000000
--- a/app-arch/ncompress/ncompress-4.2.4.5.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Classic compress & uncompress programs for .Z (LZW) files"
-HOMEPAGE="https://github.com/vapier/ncompress"
-SRC_URI="https://github.com/vapier/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-src_compile() {
- tc-export CC
- emake
-}
-
-src_install() {
- dobin compress
- dosym compress /usr/bin/uncompress
- doman compress.1 uncompress.1
- dodoc Acknowleds Changes LZW.INFO README.md
-}
diff --git a/app-arch/ncompress/ncompress-4.2.4.6.ebuild b/app-arch/ncompress/ncompress-4.2.4.6.ebuild
deleted file mode 100644
index b6a8705dfcee..000000000000
--- a/app-arch/ncompress/ncompress-4.2.4.6.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Classic compress & uncompress programs for .Z (LZW) files"
-HOMEPAGE="https://vapier.github.io/ncompress/"
-SRC_URI="https://github.com/vapier/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-src_prepare() {
- default
- sed -i 's:\bln :ln -s :' Makefile.def || die
-}
-
-src_configure() {
- tc-export CC
-}
-
-src_install() {
- emake install_core DESTDIR="${ED}" PREFIX="/usr"
- dodoc Acknowleds Changes LZW.INFO README.md
-}
diff --git a/app-arch/ncompress/ncompress-5.0-r1.ebuild b/app-arch/ncompress/ncompress-5.0-r1.ebuild
new file mode 100644
index 000000000000..aad48b1bec95
--- /dev/null
+++ b/app-arch/ncompress/ncompress-5.0-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+DESCRIPTION="Classic compress & uncompress programs for .Z (LZW) files"
+HOMEPAGE="https://vapier.github.io/ncompress/"
+SRC_URI="https://github.com/vapier/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+src_prepare() {
+ default
+ # First sed expression replaces hardlinking with
+ # symlinking. Second sed expression fixes the symlink target
+ # to use relative path to a file in the same directory as the
+ # symlink (so point to compress instead of
+ # $(DESTDIR)$(BINDIR)/compress).
+ sed -i \
+ -e 's:\bln :ln -s :' \
+ -e 's:\(\bln [^$]*\)\$(DESTDIR)\$(BINDIR)/:\1:' \
+ Makefile.def || die
+}
+
+src_configure() {
+ tc-export CC
+}
+
+src_install() {
+ emake install_core DESTDIR="${ED}" PREFIX="/usr"
+ dodoc Acknowleds Changes LZW.INFO README.md
+}
diff --git a/app-arch/p7zip/Manifest b/app-arch/p7zip/Manifest
index 29b37f25e4d4..c03f71b7e19b 100644
--- a/app-arch/p7zip/Manifest
+++ b/app-arch/p7zip/Manifest
@@ -1 +1,2 @@
+DIST p7zip-17.05.tar.gz 6722154 BLAKE2B 0bcba638d3acaf2aa270e02693ad4295dfcc6b388037bdb446e25f3f4e1cb34f1b05bbc9a845364ca770625c32b2d7f55f63f504ad8e0863fff4bf940ae1fddd SHA512 97a7cfd15287998eb049c320548477be496c4ddf6b45c833c42adca4ab88719b07a442ae2e71cf2dc3b30a0777a3acab0a1a30f01fd85bacffa3fa9bd22c3f7d
DIST p7zip_16.02_src_all.tar.bz2 4239909 BLAKE2B 075356fba5284cbb124e30c36364a910ae5a7ac6bee8a8fb682c5a7ce2f1870ef83d3160c84f8dabad1d616c13d642cba1f19fb9384160d21590cf678dd8f1a6 SHA512 d2c4d53817f96bb4c7683f42045198d4cd509cfc9c3e2cb85c8d9dc4ab6dfa7496449edeac4e300ecf986a9cbbc90bd8f8feef8156895d94617c04e507add55f
diff --git a/app-arch/p7zip/files/p7zip-17.05-natspec.patch b/app-arch/p7zip/files/p7zip-17.05-natspec.patch
new file mode 100644
index 000000000000..7487924af306
--- /dev/null
+++ b/app-arch/p7zip/files/p7zip-17.05-natspec.patch
@@ -0,0 +1,117 @@
+commit f25f0b75bbeb485961dc139aed6b5b474552d043 (HEAD -> main)
+Author: Taiki Sugawara <buzz.taiki@gmail.com>
+Date: Wed May 12 18:26:11 2021 +0900
+
+ natspec patch for p7zip 17.x
+
+diff --git a/CPP/7zip/Archive/Zip/ZipItem.cpp b/CPP/7zip/Archive/Zip/ZipItem.cpp
+index 353e895..44071f3 100644
+--- a/CPP/7zip/Archive/Zip/ZipItem.cpp
++++ b/CPP/7zip/Archive/Zip/ZipItem.cpp
+@@ -1,9 +1,7 @@
+ // Archive/ZipItem.cpp
+
+-#if (!defined _WIN32) && (!defined __CYGWIN__) && (!defined __APPLE__)
+ #include <iconv.h>
+-#include <locale.h>
+-#endif
++#include <natspec.h>
+
+ #include "StdAfx.h"
+
+@@ -355,87 +353,15 @@ void CItem::GetUnicodeString(UString &res, const AString &s, bool isComment, boo
+ #endif
+ }
+
+- #if (!defined _WIN32) && (!defined __CYGWIN__) && (!defined __APPLE__)
+- // Convert OEM char set to UTF-8 if needed
+- // Use system locale to select code page
+-
+- Byte hostOS = GetHostOS();
+- if (!isUtf8 && ((hostOS == NFileHeader::NHostOS::kFAT) || (hostOS == NFileHeader::NHostOS::kNTFS))) {
+-
+- const char *oemcp;
+- oemcp = getenv("OEMCP");
+- if (!oemcp) {
+- oemcp = "CP437\0"; // CP name is 6 chars max
+-
+- const char *lc_to_cp_table[] = {
+- "af_ZA", "CP850", "ar_SA", "CP720", "ar_LB", "CP720", "ar_EG", "CP720",
+- "ar_DZ", "CP720", "ar_BH", "CP720", "ar_IQ", "CP720", "ar_JO", "CP720",
+- "ar_KW", "CP720", "ar_LY", "CP720", "ar_MA", "CP720", "ar_OM", "CP720",
+- "ar_QA", "CP720", "ar_SY", "CP720", "ar_TN", "CP720", "ar_AE", "CP720",
+- "ar_YE", "CP720","ast_ES", "CP850", "az_AZ", "CP866", "az_AZ", "CP857",
+- "be_BY", "CP866", "bg_BG", "CP866", "br_FR", "CP850", "ca_ES", "CP850",
+- "zh_CN", "CP936", "zh_TW", "CP950", "kw_GB", "CP850", "cs_CZ", "CP852",
+- "cy_GB", "CP850", "da_DK", "CP850", "de_AT", "CP850", "de_LI", "CP850",
+- "de_LU", "CP850", "de_CH", "CP850", "de_DE", "CP850", "el_GR", "CP737",
+- "en_AU", "CP850", "en_CA", "CP850", "en_GB", "CP850", "en_IE", "CP850",
+- "en_JM", "CP850", "en_BZ", "CP850", "en_PH", "CP437", "en_ZA", "CP437",
+- "en_TT", "CP850", "en_US", "CP437", "en_ZW", "CP437", "en_NZ", "CP850",
+- "es_PA", "CP850", "es_BO", "CP850", "es_CR", "CP850", "es_DO", "CP850",
+- "es_SV", "CP850", "es_EC", "CP850", "es_GT", "CP850", "es_HN", "CP850",
+- "es_NI", "CP850", "es_CL", "CP850", "es_MX", "CP850", "es_ES", "CP850",
+- "es_CO", "CP850", "es_ES", "CP850", "es_PE", "CP850", "es_AR", "CP850",
+- "es_PR", "CP850", "es_VE", "CP850", "es_UY", "CP850", "es_PY", "CP850",
+- "et_EE", "CP775", "eu_ES", "CP850", "fa_IR", "CP720", "fi_FI", "CP850",
+- "fo_FO", "CP850", "fr_FR", "CP850", "fr_BE", "CP850", "fr_CA", "CP850",
+- "fr_LU", "CP850", "fr_MC", "CP850", "fr_CH", "CP850", "ga_IE", "CP437",
+- "gd_GB", "CP850", "gv_IM", "CP850", "gl_ES", "CP850", "he_IL", "CP862",
+- "hr_HR", "CP852", "hu_HU", "CP852", "id_ID", "CP850", "is_IS", "CP850",
+- "it_IT", "CP850", "it_CH", "CP850", "iv_IV", "CP437", "ja_JP", "CP932",
+- "kk_KZ", "CP866", "ko_KR", "CP949", "ky_KG", "CP866", "lt_LT", "CP775",
+- "lv_LV", "CP775", "mk_MK", "CP866", "mn_MN", "CP866", "ms_BN", "CP850",
+- "ms_MY", "CP850", "nl_BE", "CP850", "nl_NL", "CP850", "nl_SR", "CP850",
+- "nn_NO", "CP850", "nb_NO", "CP850", "pl_PL", "CP852", "pt_BR", "CP850",
+- "pt_PT", "CP850", "rm_CH", "CP850", "ro_RO", "CP852", "ru_RU", "CP866",
+- "sk_SK", "CP852", "sl_SI", "CP852", "sq_AL", "CP852", "sr_RS", "CP855",
+- "sr_RS", "CP852", "sv_SE", "CP850", "sv_FI", "CP850", "sw_KE", "CP437",
+- "th_TH", "CP874", "tr_TR", "CP857", "tt_RU", "CP866", "uk_UA", "CP866",
+- "ur_PK", "CP720", "uz_UZ", "CP866", "uz_UZ", "CP857", "vi_VN", "CP1258",
+- "wa_BE", "CP850", "zh_HK", "CP950", "zh_SG", "CP936"};
+- int table_len = sizeof(lc_to_cp_table) / sizeof(char *);
+- int lc_len, i;
+-
+- char *lc = setlocale(LC_CTYPE, "");
+-
+- if (lc && lc[0]) {
+- // Compare up to the dot, if it exists, e.g. en_US.UTF-8
+- for (lc_len = 0; lc[lc_len] != '.' && lc[lc_len] != '\0'; ++lc_len)
+- ;
+- for (i = 0; i < table_len; i += 2)
+- if (strncmp(lc, lc_to_cp_table[i], lc_len) == 0)
+- oemcp = lc_to_cp_table[i + 1];
+- }
+- }
+-
+- iconv_t cd;
+- if ((cd = iconv_open("UTF-8", oemcp)) != (iconv_t)-1) {
+-
+- AString s_utf8;
+- const char* src = s.Ptr();
+- size_t slen = s.Len();
+- size_t dlen = slen * 4;
+- const char* dest = s_utf8.GetBuf_SetEnd(dlen + 1); // (source length * 4) + null termination
+-
+- size_t done = iconv(cd, (char**)&src, &slen, (char**)&dest, &dlen);
+- bzero((size_t*)dest + done, 1);
+-
+- iconv_close(cd);
+-
+- if (ConvertUTF8ToUnicode(s_utf8, res) || ignore_Utf8_Errors)
+- return;
+- }
++ if (!isUtf8) {
++ const char *oem_charset = natspec_get_charset_by_locale(NATSPEC_DOSCS, "");
++ char *p = natspec_convert(s.Ptr(), NULL, oem_charset, 0);
++ AString utf = p;
++ free(p);
++ if (ConvertUTF8ToUnicode(utf, res))
++ return;
+ }
+- #endif
+-
++
+ if (isUtf8)
+ if (ConvertUTF8ToUnicode(s, res) || ignore_Utf8_Errors)
+ return;
diff --git a/app-arch/p7zip/files/p7zip-17.05-unit64.patch b/app-arch/p7zip/files/p7zip-17.05-unit64.patch
new file mode 100644
index 000000000000..0aa19e329ac0
--- /dev/null
+++ b/app-arch/p7zip/files/p7zip-17.05-unit64.patch
@@ -0,0 +1,21 @@
+--- p7zip-17.05-orig/C/hashes/hash.h 2023-03-03 23:16:28.000000000 +1100
++++ p7zip-17.05/C/hashes/hash.h 2023-04-15 09:05:20.357955971 +1000
+@@ -42,17 +42,7 @@
+
+ #include "../7zTypes.h"
+
+-#ifndef _UINT32_T_DECLARED
+-typedef UInt32 uint32_t;
+-#define _UINT32_T_DECLARED
+-#endif
+-
+-#ifndef _UINT64_T_DECLARED
+-typedef UInt64 uint64_t;
+-#define _UINT64_T_DECLARED
+-#endif
+-
+-//#include <stdint.h>
++#include <stdint.h>
+
+ #ifndef min
+ #define min(a,b) (((a)>(b))?(b):(a))
diff --git a/app-arch/p7zip/metadata.xml b/app-arch/p7zip/metadata.xml
index 17c1bda0021e..6a21e35bb813 100644
--- a/app-arch/p7zip/metadata.xml
+++ b/app-arch/p7zip/metadata.xml
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>prometheanfire@gentoo.org</email>
</maintainer>
<use>
+ <flag name="natspec">Use <pkg>dev-libs/libnatspec</pkg> to correctly decode non-ascii file names archived in Windows.</flag>
<flag name="rar">Enable support for non-free rar decoder</flag>
</use>
<upstream>
- <remote-id type="sourceforge">p7zip</remote-id>
+ <remote-id type="github">p7zip-project/p7zip</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/p7zip/p7zip-16.02-r4.ebuild b/app-arch/p7zip/p7zip-16.02-r4.ebuild
deleted file mode 100644
index 4474ae1c94c8..000000000000
--- a/app-arch/p7zip/p7zip-16.02-r4.ebuild
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-WX_GTK_VER="3.0"
-
-inherit eutils toolchain-funcs wxwidgets
-
-DESCRIPTION="Port of 7-Zip archiver for Unix"
-HOMEPAGE="http://p7zip.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}_src_all.tar.bz2"
-
-LICENSE="LGPL-2.1 rar? ( unRAR )"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
-IUSE="abi_x86_x32 doc kde +pch rar static wxwidgets"
-
-REQUIRED_USE="kde? ( wxwidgets )"
-
-RDEPEND="wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
-DEPEND="${RDEPEND}
- abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
- amd64? ( dev-lang/yasm )
- x86? ( dev-lang/nasm )"
-
-S=${WORKDIR}/${PN}_${PV}
-
-DOCS=( ChangeLog README TODO )
-
-PATCHES=(
- "${FILESDIR}"/${P}-darwin.patch
- "${FILESDIR}"/CVE-2016-9296.patch
- "${FILESDIR}"/CVE-2017-17969.patch
- "${FILESDIR}"/CVE-2018-5996.patch
- "${FILESDIR}"/CVE-2018-10115.patch
-)
-
-src_prepare() {
- default
-
- if ! use pch; then
- sed "s:PRE_COMPILED_HEADER=StdAfx.h.gch:PRE_COMPILED_HEADER=:g" -i makefile.* || die
- fi
-
- sed \
- -e 's|-m32 ||g' \
- -e 's|-m64 ||g' \
- -e 's|-pipe||g' \
- -e '/ALLFLAGS/s|-s ||' \
- -e "/OPTFLAGS=/s|=.*|=${CXXFLAGS}|" \
- -i makefile* || die
-
- # remove non-free RAR codec
- if use rar; then
- ewarn "Enabling nonfree RAR decompressor"
- else
- sed \
- -e '/Rar/d' \
- -e '/RAR/d' \
- -i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
- rm -rf CPP/7zip/Compress/Rar || die
- fi
-
- if use abi_x86_x32; then
- sed -i -e "/^ASM=/s:amd64:x32:" makefile* || die
- cp -f makefile.linux_amd64_asm makefile.machine || die
- elif use amd64; then
- cp -f makefile.linux_amd64_asm makefile.machine || die
- elif use x86; then
- cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine || die
- elif [[ ${CHOST} == *-darwin* ]] ; then
- # Mac OS X needs this special makefile, because it has a non-GNU
- # linker, it doesn't matter so much for bitwidth, for it doesn't
- # do anything with it
- cp -f makefile.macosx_llvm_64bits makefile.machine
- # bundles have extension .bundle but don't die because USE=-rar
- # removes the Rar directory
- sed -i -e '/strcpy(name/s/\.so/.bundle/' \
- CPP/Windows/DLL.cpp || die
- sed -i -e '/^PROG=/s/\.so/.bundle/' \
- CPP/7zip/Bundles/Format7zFree/makefile.list \
- $(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
- elif use x86-fbsd; then
- # FreeBSD needs this special makefile, because it hasn't -ldl
- sed -e 's/-lc_r/-pthread/' makefile.freebsd > makefile.machine
- fi
-
- if use static; then
- sed -i -e '/^LOCAL_LIBS=/s/LOCAL_LIBS=/&-static /' makefile.machine || die
- fi
-
- if use kde || use wxwidgets; then
- need-wxwidgets unicode
- einfo "Preparing dependency list"
- emake depend
- fi
-}
-
-src_compile() {
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) all3
- if use kde || use wxwidgets; then
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zG
-# emake -- 7zFM
- fi
-}
-
-src_test() {
- emake test test_7z test_7zr
-}
-
-src_install() {
- # this wrappers can not be symlinks, p7zip should be called with full path
- make_wrapper 7zr "/usr/$(get_libdir)/${PN}/7zr"
- make_wrapper 7za "/usr/$(get_libdir)/${PN}/7za"
- make_wrapper 7z "/usr/$(get_libdir)/${PN}/7z"
-
- if use kde || use wxwidgets; then
- make_wrapper 7zG "/usr/$(get_libdir)/${PN}/7zG"
-# make_wrapper 7zFM "/usr/$(get_libdir)/${PN}/7zFM"
-
-# make_desktop_entry 7zFM "${PN} FM" ${PN} "GTK;Utility;Archiving;Compression"
-
- dobin GUI/p7zipForFilemanager
- exeinto /usr/$(get_libdir)/${PN}
-# doexe bin/7z{G,FM}
- doexe bin/7zG
-
- insinto /usr/$(get_libdir)/${PN}
- doins -r GUI/Lang
- doins -r DOC/MANUAL
-
- insinto /usr/share/icons/hicolor/16x16/apps/
- newins GUI/p7zip_16_ok.png p7zip.png
-
- if use kde; then
- rm GUI/kde4/p7zip_compress.desktop || die
- insinto /usr/share/kservices5/ServiceMenus
- doins GUI/kde4/*.desktop
- dodir /usr/share/kde4/services/ServiceMenus # drop these lines after konqueror:4/krusader:4 are gone
- for item in "${ED}"usr/share/kservices5/ServiceMenus/*.desktop; do
- item="$(basename ${item})"
- dosym "/usr/share/kservices5/ServiceMenus/${item}" "/usr/share/kde4/services/ServiceMenus/${item}"
- done
- fi
- fi
-
- dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
- doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1
-
- exeinto /usr/$(get_libdir)/${PN}
- doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
- doexe bin/*$(get_modname)
- if use rar; then
- exeinto /usr/$(get_libdir)/${PN}/Codecs/
- doexe bin/Codecs/*$(get_modname)
- fi
-
- doman man1/7z.1 man1/7za.1 man1/7zr.1
-
- if use doc; then
- dodoc DOC/*.txt
- dohtml -r DOC/MANUAL/*
- fi
-}
diff --git a/app-arch/p7zip/p7zip-16.02-r5.ebuild b/app-arch/p7zip/p7zip-16.02-r5.ebuild
deleted file mode 100644
index 9dbf6467cede..000000000000
--- a/app-arch/p7zip/p7zip-16.02-r5.ebuild
+++ /dev/null
@@ -1,168 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-WX_GTK_VER="3.0"
-
-inherit eutils toolchain-funcs wxwidgets
-
-DESCRIPTION="Port of 7-Zip archiver for Unix"
-HOMEPAGE="http://p7zip.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}_src_all.tar.bz2"
-
-LICENSE="LGPL-2.1 rar? ( unRAR )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
-IUSE="abi_x86_x32 doc kde +pch rar static wxwidgets"
-
-REQUIRED_USE="kde? ( wxwidgets )"
-
-RDEPEND="wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
-DEPEND="${RDEPEND}
- abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
- amd64? ( dev-lang/yasm )
- x86? ( dev-lang/nasm )"
-
-S=${WORKDIR}/${PN}_${PV}
-
-DOCS=( ChangeLog README TODO )
-
-PATCHES=(
- "${FILESDIR}"/${P}-darwin.patch
- "${FILESDIR}"/CVE-2016-9296.patch
- "${FILESDIR}"/CVE-2017-17969.patch
- "${FILESDIR}"/CVE-2018-5996.patch
- "${FILESDIR}"/CVE-2018-10115.patch
- "${FILESDIR}"/WimHandler.cpp.patch
-)
-
-src_prepare() {
- default
-
- if ! use pch; then
- sed "s:PRE_COMPILED_HEADER=StdAfx.h.gch:PRE_COMPILED_HEADER=:g" -i makefile.* || die
- fi
-
- sed \
- -e 's|-m32 ||g' \
- -e 's|-m64 ||g' \
- -e 's|-pipe||g' \
- -e "/[ALL|OPT]FLAGS/s|-s||;/OPTIMIZE/s|-s||" \
- -e "/CFLAGS=/s|=|+=|" \
- -e "/CXXFLAGS=/s|=|+=|" \
- -i makefile* || die
-
- # remove non-free RAR codec
- if use rar; then
- ewarn "Enabling nonfree RAR decompressor"
- else
- sed \
- -e '/Rar/d' \
- -e '/RAR/d' \
- -i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
- rm -rf CPP/7zip/Compress/Rar || die
- fi
-
- if use abi_x86_x32; then
- sed -i -e "/^ASM=/s:amd64:x32:" makefile* || die
- cp -f makefile.linux_amd64_asm makefile.machine || die
- elif use amd64; then
- cp -f makefile.linux_amd64_asm makefile.machine || die
- elif use x86; then
- cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine || die
- elif [[ ${CHOST} == *-darwin* ]] ; then
- # Mac OS X needs this special makefile, because it has a non-GNU
- # linker, it doesn't matter so much for bitwidth, for it doesn't
- # do anything with it
- cp -f makefile.macosx_llvm_64bits makefile.machine
- # bundles have extension .bundle but don't die because USE=-rar
- # removes the Rar directory
- sed -i -e '/strcpy(name/s/\.so/.bundle/' \
- CPP/Windows/DLL.cpp || die
- sed -i -e '/^PROG=/s/\.so/.bundle/' \
- CPP/7zip/Bundles/Format7zFree/makefile.list \
- $(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
- elif use x86-fbsd; then
- # FreeBSD needs this special makefile, because it hasn't -ldl
- sed -e 's/-lc_r/-pthread/' makefile.freebsd > makefile.machine
- fi
-
- if use static; then
- sed -i -e '/^LOCAL_LIBS=/s/LOCAL_LIBS=/&-static /' makefile.machine || die
- fi
-
- if use kde || use wxwidgets; then
- need-wxwidgets unicode
- einfo "Preparing dependency list"
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) depend
- fi
-}
-
-src_compile() {
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) all3
- if use kde || use wxwidgets; then
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zG
-# emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zFM
- fi
-}
-
-src_test() {
- emake test test_7z test_7zr
-}
-
-src_install() {
- # this wrappers can not be symlinks, p7zip should be called with full path
- make_wrapper 7zr "/usr/$(get_libdir)/${PN}/7zr"
- make_wrapper 7za "/usr/$(get_libdir)/${PN}/7za"
- make_wrapper 7z "/usr/$(get_libdir)/${PN}/7z"
-
- if use kde || use wxwidgets; then
- make_wrapper 7zG "/usr/$(get_libdir)/${PN}/7zG"
-# make_wrapper 7zFM "/usr/$(get_libdir)/${PN}/7zFM"
-
-# make_desktop_entry 7zFM "${PN} FM" ${PN} "GTK;Utility;Archiving;Compression"
-
- dobin GUI/p7zipForFilemanager
- exeinto /usr/$(get_libdir)/${PN}
-# doexe bin/7z{G,FM}
- doexe bin/7zG
-
- insinto /usr/$(get_libdir)/${PN}
- doins -r GUI/Lang
- doins -r DOC/MANUAL
-
- insinto /usr/share/icons/hicolor/16x16/apps/
- newins GUI/p7zip_16_ok.png p7zip.png
-
- if use kde; then
- rm GUI/kde4/p7zip_compress.desktop || die
- insinto /usr/share/kservices5/ServiceMenus
- doins GUI/kde4/*.desktop
- dodir /usr/share/kde4/services/ServiceMenus # drop these lines after konqueror:4/krusader:4 are gone
- for item in "${ED}"/usr/share/kservices5/ServiceMenus/*.desktop; do
- item="$(basename ${item})"
- dosym ${EROOT}"/usr/share/kservices5/ServiceMenus/${item}" "/usr/share/kde4/services/ServiceMenus/${item}"
- done
- fi
- fi
-
- dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
- doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1
-
- exeinto /usr/$(get_libdir)/${PN}
- doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
- doexe bin/*$(get_modname)
- if use rar; then
- exeinto /usr/$(get_libdir)/${PN}/Codecs/
- doexe bin/Codecs/*$(get_modname)
- fi
-
- doman man1/7z.1 man1/7za.1 man1/7zr.1
-
- if use doc; then
- dodoc DOC/*.txt
- docinto html
- dodoc -r DOC/MANUAL/*
- fi
-}
diff --git a/app-arch/p7zip/p7zip-16.02-r6.ebuild b/app-arch/p7zip/p7zip-16.02-r8.ebuild
index 3717156c8ded..933adee9f26f 100644
--- a/app-arch/p7zip/p7zip-16.02-r6.ebuild
+++ b/app-arch/p7zip/p7zip-16.02-r8.ebuild
@@ -1,33 +1,29 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-WX_GTK_VER="3.0"
-
-inherit eutils toolchain-funcs wxwidgets
+WX_GTK_VER="3.0-gtk3"
+inherit multilib toolchain-funcs wrapper wxwidgets xdg
DESCRIPTION="Port of 7-Zip archiver for Unix"
HOMEPAGE="http://p7zip.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}_src_all.tar.bz2"
+S="${WORKDIR}/${PN}_${PV}"
LICENSE="LGPL-2.1 rar? ( unRAR )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
-IUSE="abi_x86_x32 doc kde +pch rar static wxwidgets"
-
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="abi_x86_x32 kde +pch rar static wxwidgets"
REQUIRED_USE="kde? ( wxwidgets )"
RDEPEND="wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
amd64? ( dev-lang/yasm )
x86? ( dev-lang/nasm )"
-S=${WORKDIR}/${PN}_${PV}
-
-DOCS=( ChangeLog README TODO )
-
PATCHES=(
"${FILESDIR}"/${P}-darwin.patch
"${FILESDIR}"/CVE-2016-9296.patch
@@ -61,7 +57,7 @@ src_prepare() {
-e '/Rar/d' \
-e '/RAR/d' \
-i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
- rm -rf CPP/7zip/Compress/Rar || die
+ rm -r CPP/7zip/Compress/Rar || die
fi
if use abi_x86_x32; then
@@ -75,7 +71,7 @@ src_prepare() {
# Mac OS X needs this special makefile, because it has a non-GNU
# linker, it doesn't matter so much for bitwidth, for it doesn't
# do anything with it
- cp -f makefile.macosx_llvm_64bits makefile.machine
+ cp -f makefile.macosx_llvm_64bits makefile.machine || die
# bundles have extension .bundle but don't die because USE=-rar
# removes the Rar directory
sed -i -e '/strcpy(name/s/\.so/.bundle/' \
@@ -83,9 +79,6 @@ src_prepare() {
sed -i -e '/^PROG=/s/\.so/.bundle/' \
CPP/7zip/Bundles/Format7zFree/makefile.list \
$(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
- elif use x86-fbsd; then
- # FreeBSD needs this special makefile, because it hasn't -ldl
- sed -e 's/-lc_r/-pthread/' makefile.freebsd > makefile.machine
fi
if use static; then
@@ -93,17 +86,16 @@ src_prepare() {
fi
if use kde || use wxwidgets; then
- need-wxwidgets unicode
+ setup-wxwidgets unicode
einfo "Preparing dependency list"
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) depend
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" depend
fi
}
src_compile() {
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) all3
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" all3
if use kde || use wxwidgets; then
- emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zG
-# emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zFM
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -- 7zG
fi
}
@@ -112,23 +104,19 @@ src_test() {
}
src_install() {
- # this wrappers can not be symlinks, p7zip should be called with full path
- make_wrapper 7zr "/usr/$(get_libdir)/${PN}/7zr"
- make_wrapper 7za "/usr/$(get_libdir)/${PN}/7za"
- make_wrapper 7z "/usr/$(get_libdir)/${PN}/7z"
+ # these wrappers cannot be symlinks, p7zip should be called with full path
+ make_wrapper 7zr /usr/$(get_libdir)/p7zip/7zr
+ make_wrapper 7za /usr/$(get_libdir)/p7zip/7za
+ make_wrapper 7z /usr/$(get_libdir)/p7zip/7z
if use kde || use wxwidgets; then
- make_wrapper 7zG "/usr/$(get_libdir)/${PN}/7zG"
-# make_wrapper 7zFM "/usr/$(get_libdir)/${PN}/7zFM"
-
-# make_desktop_entry 7zFM "${PN} FM" ${PN} "GTK;Utility;Archiving;Compression"
+ make_wrapper 7zG /usr/$(get_libdir)/p7zip/7zG
dobin GUI/p7zipForFilemanager
- exeinto /usr/$(get_libdir)/${PN}
-# doexe bin/7z{G,FM}
+ exeinto /usr/$(get_libdir)/p7zip
doexe bin/7zG
- insinto /usr/$(get_libdir)/${PN}
+ insinto /usr/$(get_libdir)/p7zip
doins -r GUI/Lang
insinto /usr/share/icons/hicolor/16x16/apps/
@@ -138,30 +126,24 @@ src_install() {
rm GUI/kde4/p7zip_compress.desktop || die
insinto /usr/share/kservices5/ServiceMenus
doins GUI/kde4/*.desktop
- dodir /usr/share/kde4/services/ServiceMenus # drop these lines after konqueror:4/krusader:4 are gone
- for item in "${ED}"/usr/share/kservices5/ServiceMenus/*.desktop; do
- item="$(basename ${item})"
- dosym ${EROOT}"/usr/share/kservices5/ServiceMenus/${item}" "/usr/share/kde4/services/ServiceMenus/${item}"
- done
fi
fi
dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1
- exeinto /usr/$(get_libdir)/${PN}
+ exeinto /usr/$(get_libdir)/p7zip
doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
doexe bin/*$(get_modname)
if use rar; then
- exeinto /usr/$(get_libdir)/${PN}/Codecs/
+ exeinto /usr/$(get_libdir)/p7zip/Codecs
doexe bin/Codecs/*$(get_modname)
fi
doman man1/7z.1 man1/7za.1 man1/7zr.1
- if use doc; then
- dodoc DOC/*.txt
- docinto html
- dodoc -r DOC/MANUAL/*
- fi
+ dodoc ChangeLog README TODO
+ dodoc DOC/*.txt
+ docinto html
+ dodoc -r DOC/MANUAL/.
}
diff --git a/app-arch/p7zip/p7zip-17.05-r1.ebuild b/app-arch/p7zip/p7zip-17.05-r1.ebuild
new file mode 100644
index 000000000000..324ae0051c52
--- /dev/null
+++ b/app-arch/p7zip/p7zip-17.05-r1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib toolchain-funcs wrapper xdg
+
+DESCRIPTION="Port of 7-Zip archiver for Unix"
+HOMEPAGE="https://github.com/p7zip-project/p7zip"
+SRC_URI="https://github.com/p7zip-project/p7zip/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+#S="${WORKDIR}/${PN}-${PV}"
+
+LICENSE="LGPL-2.1 rar? ( unRAR )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos"
+IUSE="abi_x86_x32 natspec +pch rar static"
+
+RDEPEND="natspec? ( dev-libs/libnatspec )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
+ amd64? ( dev-lang/yasm )
+ x86? ( dev-lang/nasm )"
+
+PATCHES=(
+ "${FILESDIR}/p7zip-17.05-unit64.patch"
+)
+
+src_prepare() {
+ default
+
+ if use natspec; then
+ eapply "${FILESDIR}"/${P}-natspec.patch
+ sed -i '/^LOCAL_LIBS/s/$/ -lnatspec/' makefile.* || die
+ fi
+
+ if ! use pch; then
+ sed "s:PRE_COMPILED_HEADER=StdAfx.h.gch:PRE_COMPILED_HEADER=:g" -i makefile.* || die
+ fi
+
+ sed \
+ -e 's|-m32 ||g' \
+ -e 's|-m64 ||g' \
+ -e 's|-pipe||g' \
+ -e "/[ALL|OPT]FLAGS/s|-s||;/OPTIMIZE/s|-s||" \
+ -e "/CFLAGS=/s|=|+=|" \
+ -e "/CXXFLAGS=/s|=|+=|" \
+ -i makefile* || die
+
+ # remove non-free RAR codec
+ if ! use rar; then
+ sed \
+ -e '/Rar/d' \
+ -e '/RAR/d' \
+ -i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
+ rm -r CPP/7zip/Compress/Rar || die
+ fi
+
+ if use abi_x86_x32; then
+ sed -i -e "/^ASM=/s:amd64:x32:" makefile* || die
+ cp -f makefile.linux_amd64_asm makefile.machine || die
+ elif use amd64; then
+ cp -f makefile.linux_amd64_asm makefile.machine || die
+ elif use x86; then
+ cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine || die
+ elif [[ ${CHOST} == *-darwin* ]] ; then
+ # Mac OS X needs this special makefile, because it has a non-GNU
+ # linker, it doesn't matter so much for bitwidth, for it doesn't
+ # do anything with it
+ cp -f makefile.macosx_llvm_64bits makefile.machine || die
+ # bundles have extension .bundle but don't die because USE=-rar
+ # removes the Rar directory
+ sed -i -e '/strcpy(name/s/\.so/.bundle/' \
+ CPP/Windows/DLL.cpp || die
+ sed -i -e '/^PROG=/s/\.so/.bundle/' \
+ CPP/7zip/Bundles/Format7zFree/makefile.list \
+ $(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
+ fi
+
+ if use static; then
+ sed -i -e '/^LOCAL_LIBS=/s/LOCAL_LIBS=/&-static /' makefile.machine || die
+ fi
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" all3
+}
+
+src_test() {
+ emake test test_7z test_7zr
+}
+
+src_install() {
+ # these wrappers cannot be symlinks, p7zip should be called with full path
+ make_wrapper 7zr /usr/$(get_libdir)/p7zip/7zr
+ make_wrapper 7za /usr/$(get_libdir)/p7zip/7za
+ make_wrapper 7z /usr/$(get_libdir)/p7zip/7z
+
+ dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
+ doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1
+
+ exeinto /usr/$(get_libdir)/p7zip
+ doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
+ doexe bin/*$(get_modname)
+ if use rar; then
+ exeinto /usr/$(get_libdir)/p7zip/Codecs
+ doexe bin/Codecs/*$(get_modname)
+ fi
+
+ doman man1/7z.1 man1/7za.1 man1/7zr.1
+
+ dodoc ChangeLog README TODO
+ dodoc DOC/*.txt
+ docinto html
+ dodoc -r DOC/MANUAL/.
+}
diff --git a/app-arch/pack/Manifest b/app-arch/pack/Manifest
new file mode 100644
index 000000000000..0256fb512bdc
--- /dev/null
+++ b/app-arch/pack/Manifest
@@ -0,0 +1 @@
+DIST pack-0bd29ccae2662ef9ae1fabe707d84e4f84b36d53.tar.gz 3833 BLAKE2B f597746aa99e1cc59af3dd86a030458a2498a0649aae8f7bf9ac008c0bb6a0a26af62e5a4e76c6f8b49b5f0a6e19c0d6714c2a548231a6ce103c361b227757b9 SHA512 a75eb599aa0abcec9d151d5af7128bbbc13f7687dcc15ec5843dffd5e1084598ebabc6c1981a6ee225855435b5c4693ee4c7ad62f4e36f5e0de8205591d42439
diff --git a/app-arch/pack/metadata.xml b/app-arch/pack/metadata.xml
new file mode 100644
index 000000000000..daafb9559e2f
--- /dev/null
+++ b/app-arch/pack/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">koalaman/pack</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/pack/pack-0.0.0.1.ebuild b/app-arch/pack/pack-0.0.0.1.ebuild
new file mode 100644
index 000000000000..811e9dd596ad
--- /dev/null
+++ b/app-arch/pack/pack-0.0.0.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit haskell-cabal
+
+EGIT_COMMIT="0bd29ccae2662ef9ae1fabe707d84e4f84b36d53"
+MY_P=${PN}-${EGIT_COMMIT}
+DESCRIPTION="Haskell implementation of pack compression from the early 1980s"
+HOMEPAGE="https://github.com/koalaman/pack/"
+SRC_URI="
+ https://github.com/koalaman/pack/archive/${EGIT_COMMIT}.tar.gz
+ -> ${MY_P}.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+
+RDEPEND="
+ dev-lang/ghc:=
+"
+BDEPEND="
+ >=dev-haskell/cabal-1.10
+"
+
+CABAL_FILE=${S}/pack-compression.cabal
+
+src_prepare() {
+ sed -i -e '/base/s:&& <4.10::' "${CABAL_FILE}" || die
+ haskell-cabal_src_prepare
+ cabal-mksetup
+}
diff --git a/app-arch/par2cmdline-turbo/Manifest b/app-arch/par2cmdline-turbo/Manifest
new file mode 100644
index 000000000000..8156c6fb577c
--- /dev/null
+++ b/app-arch/par2cmdline-turbo/Manifest
@@ -0,0 +1,2 @@
+DIST par2cmdline-turbo-1.1.0.tar.gz 3879570 BLAKE2B 25aae3f30af8fd50d3acf34807151a4f948d2e54699c9c62ace3ac13376d680e1714f24bf2899f70cf58f59db85eb7278e96a8c9a926314e557567e5782acd8e SHA512 2999d21d446502ddc6c145dfa9f005d4f6bb5afcf7c40975759214c37936d0def7194c92b21591ee09845de43e8c4fbe14ae9f2a6401fbfe35c523cf2890103c
+DIST par2cmdline-turbo-1.1.1.tar.gz 3937861 BLAKE2B 3c7829bff1148ca4eab2259664827c491b0802cd76b95119f0381f4c8eb1532ff7207293b740a8e5ecd2a515f59f60696ddf0ce7e6b50f637f49495b852912af SHA512 bb919f885134a298ba14551e21cf89a91aee292e437133e6973bef09fb5dee9a9b45e76a59320bfede864438d3ac884699be7ca3f7234896a9da14cb07ffa89d
diff --git a/app-arch/par2cmdline-turbo/metadata.xml b/app-arch/par2cmdline-turbo/metadata.xml
new file mode 100644
index 000000000000..68bcf59d48c5
--- /dev/null
+++ b/app-arch/par2cmdline-turbo/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>joe@wt.gd</email>
+ <name>Joe Kappus</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">animetosho/par2cmdline-turbo</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.0.ebuild b/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.0.ebuild
new file mode 100644
index 000000000000..b696866e2dc9
--- /dev/null
+++ b/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/animetosho/par2cmdline-turbo"
+else
+ SRC_URI="https://github.com/animetosho/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="par2cmdline × ParPar: speed focused par2cmdline fork"
+HOMEPAGE="https://github.com/animetosho/par2cmdline-turbo"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="openmp"
+
+RDEPEND="
+ !app-arch/par2cmdline
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.1.ebuild b/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.1.ebuild
new file mode 100644
index 000000000000..b696866e2dc9
--- /dev/null
+++ b/app-arch/par2cmdline-turbo/par2cmdline-turbo-1.1.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/animetosho/par2cmdline-turbo"
+else
+ SRC_URI="https://github.com/animetosho/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="par2cmdline × ParPar: speed focused par2cmdline fork"
+HOMEPAGE="https://github.com/animetosho/par2cmdline-turbo"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="openmp"
+
+RDEPEND="
+ !app-arch/par2cmdline
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/app-arch/par2cmdline-turbo/par2cmdline-turbo-9999.ebuild b/app-arch/par2cmdline-turbo/par2cmdline-turbo-9999.ebuild
new file mode 100644
index 000000000000..b696866e2dc9
--- /dev/null
+++ b/app-arch/par2cmdline-turbo/par2cmdline-turbo-9999.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/animetosho/par2cmdline-turbo"
+else
+ SRC_URI="https://github.com/animetosho/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="par2cmdline × ParPar: speed focused par2cmdline fork"
+HOMEPAGE="https://github.com/animetosho/par2cmdline-turbo"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="openmp"
+
+RDEPEND="
+ !app-arch/par2cmdline
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/app-arch/par2cmdline/Manifest b/app-arch/par2cmdline/Manifest
index 9d79307b95f8..0e93c2d1291a 100644
--- a/app-arch/par2cmdline/Manifest
+++ b/app-arch/par2cmdline/Manifest
@@ -1,3 +1 @@
-DIST par2cmdline-0.7.3.tar.bz2 3129759 BLAKE2B 4206c1ec4b41e58044b29d1ae0fe7c2cb9611b87aee2186105cc3f6f1afb5a22540ae31b837edd6a8a4b852000081bc52a16e88c6951326504f219edbd2f0b0a SHA512 85fe91f2e7cc1888171390f82fe2d12279e65eab17b3a6db209998aed316c5ea9dd5e63004cf975cbe460c1ef27860af31160e8757921c4027e27997dcd8be8a
-DIST par2cmdline-0.7.4.tar.bz2 3129835 BLAKE2B 5cdc03a71d3db04928eb818037f66e4d624ee7479f1b942982b095e24a4a17c6fd5aebd032b4ba81b23f15b80ee4727b027746edbe9d1b4390cc327f469e5c5c SHA512 20f99556b4dae2e4467d781a96adab8d9f9a42dd43707de788b268eeea2bf59d92847e3c4faf413ea3de361360ef1236e97343ee8b625c9c2cd65ec9546e61ec
-DIST par2cmdline-0.8.0.tar.bz2 3130388 BLAKE2B acaa366288720d87115ed2b4470ada276ccdff8bc23d7cc8f7c8aab03f9dc992777fd0d67e39b877ed94b77cca679f5c9d2824c778f6481e71c7120a90b45cc0 SHA512 af91024dc80a4af0935c2fc0b867e57a8d3879d93146f52ab62d8bb105f2c637abe46c762302515417691d12144818446932c970d1018d2f10c0d4e1fa455020
+DIST par2cmdline-0.8.1.tar.bz2 3213343 BLAKE2B 4778fd32012c61739e04a4e564eaedf48527c04b0d83c5467c34808913e81cd5459a6a5bfabe79ca74f520761ebd3592e80b714f3ef45cc98866da919757a176 SHA512 b33ee654bd14269afb02d48175abf183281270c3e0dad9ffcaa0aa69c4271715a85e550d6d56fe5460ebfe9a37dc53b7d2210cd79a6f55d3921dc5dd5972c846
diff --git a/app-arch/par2cmdline/files/par2cmdline-0.8.1-big-endian.patch b/app-arch/par2cmdline/files/par2cmdline-0.8.1-big-endian.patch
new file mode 100644
index 000000000000..e45f8f3235d1
--- /dev/null
+++ b/app-arch/par2cmdline/files/par2cmdline-0.8.1-big-endian.patch
@@ -0,0 +1,70 @@
+# backport upstream pr #144, fixes test failure on big endian archs;
+# see https://github.com/Parchive/par2cmdline/issues/143
+From 4f3576a314d7169912842ec9dc1e595e61e52653 Mon Sep 17 00:00:00 2001
+From: Michael Nahas <mike@nahas.com>
+Date: Tue, 11 Feb 2020 22:42:08 -0600
+Subject: [PATCH] Fix for Github issue #143. Test did not account for
+ endianness correctly.
+
+---
+ src/reedsolomon_test.cpp | 30 +++++++++++++++++++++++++++---
+ 1 file changed, 27 insertions(+), 3 deletions(-)
+
+diff --git a/src/reedsolomon_test.cpp b/src/reedsolomon_test.cpp
+index 1285b3c..c8d26e9 100644
+--- a/src/reedsolomon_test.cpp
++++ b/src/reedsolomon_test.cpp
+@@ -433,6 +433,23 @@ int test3() {
+
+
+ // Check that the correct constants are being used for Par2
++
++//The test pretends there are 10 input blocks ("NUM_IN") and 1
++//recovery block ("NUM_REC"), each 1024 bytes long ("BUF_SIZE"). These
++//are all stored in data[11][BUF_SIZE], with the input blocks
++//occupying data[0] through data[9] and the recovery block in
++//data[10].
++
++//The test zeroes out the input blocks and then writes a 1 into the
++//first location of the first input block, and into the second
++//location of the second input block, etc. It then generates the
++//recovery block using many calls to ReedSolomon. When that happens,
++//those 1s are multiplied by the coefficients for each input block. So
++//the first location of recovery block holds the coefficient for the
++//first input block, the second location has the coefficient for the
++//second input block, etc. Those values are checked against the
++//expected values passed to the function.
++
+ template<typename gtype, typename utype>
+ int test4(int NUM_IN, int *expected_bases) {
+ //const int NUM_IN = 10;
+@@ -448,8 +465,9 @@ int test4(int NUM_IN, int *expected_bases) {
+ for (int k = 0; k < BUF_SIZE; k++) {
+ data[i][k] = (u8)0;
+ }
+- // EXCEPT put a 1 in a different place for each file
+- ((gtype *)(&(data[i][0])))[i] = (utype) 1;
++ // EXCEPT write a (little endian) 1 in a different place for each file
++ // In the i-th file, it is written into the i-th location
++ data[i][sizeof(utype)*i] = (u8) 1;
+ }
+ // zero recovery
+ for (int j = 0; j < NUM_REC; j++) {
+@@ -488,7 +506,13 @@ int test4(int NUM_IN, int *expected_bases) {
+ // The recovery file has exponent 1 and should
+ // contain each base to the power 1.
+ for (int i = 0; i < NUM_IN; i++) {
+- int base = (utype) ((gtype *) &(data[NUM_IN+0][0]))[i];
++ // read little-endian value
++ utype v = 0;
++ for (int byte_index = 0; byte_index < sizeof(utype); byte_index++) {
++ u8 byte = data[NUM_IN+0][sizeof(utype)*i + byte_index];
++ v |= (((utype)byte) << (byte_index*8));
++ }
++ int base = v;
+ if (base != expected_bases[i]) {
+ cerr << "base at location " << i << " did not match expected." << endl;
+ cerr << " base = " << base << endl;
+--
+2.17.1
+
diff --git a/app-arch/par2cmdline/metadata.xml b/app-arch/par2cmdline/metadata.xml
index 09a2860b01fe..7c3051dd25f0 100644
--- a/app-arch/par2cmdline/metadata.xml
+++ b/app-arch/par2cmdline/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>swegener@gentoo.org</email>
diff --git a/app-arch/par2cmdline/par2cmdline-0.7.3.ebuild b/app-arch/par2cmdline/par2cmdline-0.7.3.ebuild
deleted file mode 100644
index adb97f855c6e..000000000000
--- a/app-arch/par2cmdline/par2cmdline-0.7.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="A PAR-2.0 file verification and repair tool"
-HOMEPAGE="https://github.com/Parchive/par2cmdline"
-SRC_URI="https://github.com/Parchive/${PN}/releases/download/v${PV}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="openmp"
-
-DOCS="AUTHORS ChangeLog README" # NEWS is empty, PORTING and ROADMAP are for building
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_test() {
- # test22 fails when run in parallel
- emake -j1 check
-}
diff --git a/app-arch/par2cmdline/par2cmdline-0.8.0.ebuild b/app-arch/par2cmdline/par2cmdline-0.8.1-r1.ebuild
index 67f4910edf79..2c68a78dc0f9 100644
--- a/app-arch/par2cmdline/par2cmdline-0.8.0.ebuild
+++ b/app-arch/par2cmdline/par2cmdline-0.8.1-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
@@ -11,10 +11,10 @@ SRC_URI="https://github.com/Parchive/${PN}/releases/download/v${PV}/${P}.tar.bz2
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+KEYWORDS="amd64 ~arm ~hppa ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="openmp"
-DOCS="AUTHORS ChangeLog README" # NEWS is empty, PORTING and ROADMAP are for building
+PATCHES=( "${FILESDIR}"/${P}-big-endian.patch )
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
diff --git a/app-arch/par2cmdline/par2cmdline-0.7.4.ebuild b/app-arch/par2cmdline/par2cmdline-0.8.1-r2.ebuild
index 5dfb2290f555..e026448f3a80 100644
--- a/app-arch/par2cmdline/par2cmdline-0.7.4.ebuild
+++ b/app-arch/par2cmdline/par2cmdline-0.8.1-r2.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
@@ -11,10 +11,10 @@ SRC_URI="https://github.com/Parchive/${PN}/releases/download/v${PV}/${P}.tar.bz2
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="openmp"
-DOCS="AUTHORS ChangeLog README" # NEWS is empty, PORTING and ROADMAP are for building
+PATCHES=( "${FILESDIR}"/${P}-big-endian.patch )
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
@@ -24,7 +24,6 @@ pkg_setup() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
-src_test() {
- # test22 fails when run in parallel
- emake -j1 check
+src_configure() {
+ econf $(use_enable openmp)
}
diff --git a/app-arch/patool/Manifest b/app-arch/patool/Manifest
index cdc0a89ce575..2bf03b744632 100644
--- a/app-arch/patool/Manifest
+++ b/app-arch/patool/Manifest
@@ -1 +1,4 @@
-DIST patool-1.12.tar.gz 69146 BLAKE2B e97f64b4ba41860c1f7e506f63f249adeb02974b71bf83eb1673ae1fd93b8f9b698818cb57f961b3d3a5d4e445c5e7a3a349db54e1eb11a8fc165ad07722ace9 SHA512 b8c67526ce79448de703b03ca9b363c0e04cfe56bfc6168bcb96202f95022b6bbcaa92be86a85ee9608070206acd09382b0dfd08a2f805c5e8e5683c7c3f18cc
+DIST patool-1.15.0.tar.gz 1993753 BLAKE2B 18dbbb6d73862778af9774b64f192e20d48f1454c078a2ab0bf9ccf12f3de988b7799c5e6116b1f49fe48b2512968789d363e37aa504d622a72c22a620398f5f SHA512 c7cbcd829a803025a99df67c8d4aca1d803d3bd8e06f2897c65bc0e2475fbd42e273654f978090fe4c2bbcac02e5d1f8e322cb90220e746ac9ef9d0755e0c717
+DIST patool-2.0.0.tar.gz 1987911 BLAKE2B a9c12f8083e82835792445f50e1e72f55e98c505f0019656cd00c1f882a860ae61c7484ea16c7744101b6a983c1934fad12dbb58af2a03e82d0ec4ceb417aa92 SHA512 c81a65fa89ff77ee80ae85fbc6868e5414d5141e47433028546273b3a231ce3240d6b30baae114247bc0ab0b3e4e91c6e127b8734eff9af8721abdae7f464ef5
+DIST patool-2.1.1.tar.gz 1991183 BLAKE2B f33c92c628ffcca349ad897c29cec935730aba7f2e9a5581acedb9b3ecb0bab22046cd16af9f2d2e605bc483c2dc624db01b52dea8459388a8b140b7f357b193 SHA512 3b51fe917da9672dbeae015852680b67e81ec35d609af3e465f0d53afb12c35bee885f4f3db4a135c01521cc70db182b27fc25320d141f96eaf098ba99524f63
+DIST patool-2.2.0.tar.gz 1995287 BLAKE2B ec7a188abfbfc2198e0171568324cb0e372a5629363aaeabfa404767f08062669028d6a9771e80370eb096677f3668da75923f7def7fbb4525f5ce7418cdf68a SHA512 eae774e7da2be13c7644038dc47457105caff7a51a9d3b99e38962dd26c0ace0129f1c0151c27766708ee9754049aec283873fd4a2e8647015a1a07acd48de60
diff --git a/app-arch/patool/metadata.xml b/app-arch/patool/metadata.xml
index aea3a803cd76..198fc346c99a 100644
--- a/app-arch/patool/metadata.xml
+++ b/app-arch/patool/metadata.xml
@@ -1,15 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>chr@chymera.eu</email>
- <name>Horea Christian</name>
+ <maintainer type="person" proxied="yes">
+ <email>parona@protonmail.com</email>
+ <name>Alfred Wingate</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="pypi">patool</remote-id>
+ <remote-id type="github">wummel/patool</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/patool/patool-1.12.ebuild b/app-arch/patool/patool-1.12.ebuild
deleted file mode 100644
index bba8d66cfe2c..000000000000
--- a/app-arch/patool/patool-1.12.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Portable archive file manager"
-HOMEPAGE="http://wummel.github.io/patool/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=""
-DEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- "
diff --git a/app-arch/patool/patool-1.15.0.ebuild b/app-arch/patool/patool-1.15.0.ebuild
new file mode 100644
index 000000000000..2aafb392ada6
--- /dev/null
+++ b/app-arch/patool/patool-1.15.0.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Portable archive file manager"
+HOMEPAGE="https://wummel.github.io/patool/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="
+ test? (
+ app-arch/arj
+ app-arch/bzip2
+ app-arch/bzip3
+ app-arch/cabextract
+ app-alternatives/cpio
+ app-arch/dpkg
+ app-arch/gzip
+ app-arch/lbzip2
+ app-arch/lcab
+ app-arch/lha
+ app-arch/libarchive
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/ncompress
+ app-arch/p7zip[rar]
+ app-arch/pbzip2
+ app-arch/pdlzip
+ app-arch/pigz
+ app-arch/plzip
+ app-arch/rpm
+ app-arch/rzip
+ app-arch/sharutils
+ app-arch/tar
+ app-arch/unace
+ app-arch/unadf
+ app-arch/unzip
+ app-arch/xdms
+ app-arch/xz-utils
+ app-arch/zip
+ app-arch/zpaq
+ app-arch/zstd
+ app-cdr/cdrtools
+ dev-libs/chmlib
+ media-libs/flac
+ media-sound/shorten
+ sys-apps/diffutils
+ sys-apps/file
+ sys-apps/grep
+ !elibc_musl? ( app-arch/rar )
+ !x86? (
+ app-arch/clzip
+ app-arch/lrzip
+ app-arch/unar
+ )
+ )
+"
+# Test dependencies which are packaged but can't be tested for various reasons.
+# app-arch/arc
+# app-arch/zoo
+# app-arch/zopfli
+# media-sound/mac
+
+# app-arch/rar is masked on musl
+# app-arch/clzip is unkeyworded on x86
+# app-arch/lrzip bug #916317 on x86
+# app-arch/unar is unkeyworded on x86
+
+# Unpackaged testable dependencies
+# archmage
+# genisoimage
+# lhasa
+# nomarch
+# pdzip2
+# py_{bz2,echo,gzip,tarfile,zipfile}
+# rpm2cpio
+# rzip
+# star
+# unalz
+# uncompress.real
+
+distutils_enable_tests pytest
+
+src_install() {
+ distutils-r1_src_install
+
+ newdoc doc/README.txt README.md
+ doman doc/patool.1
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # zoo emits a non-zero exit status on a possibly false consistency check
+ # Zoo: WARNING: Archive header failed consistency check.
+ "tests/archives/test_zoo.py"
+ # Doesn't accept long arguments, such as those that files in ${S} would have.
+ # Too long argument: /var/tmp/portage/app-arch/patool-1.12_p20230424/work/patool-ab64562c8cdac34dfd69fcb6e30c8c0014282d11/tests/data/p.arc.foo
+ "tests/archives/test_arc.py"
+ # Error: 1002 (invalid input file)
+ "tests/archives/test_mac.py"
+ # AttributeError: module 'patoolib.programs.zopfli' has no attribute 'extract_gzip'
+ "tests/archives/test_zopfli.py"
+ )
+
+ if use elibc_musl; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_rar.py"
+ )
+ fi
+
+ if use x86; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_clzip.py"
+ # bug #916317
+ "tests/archives/test_lrzip.py::TestLrzip::test_lrzip"
+ )
+ fi
+
+ epytest
+}
diff --git a/app-arch/patool/patool-2.0.0.ebuild b/app-arch/patool/patool-2.0.0.ebuild
new file mode 100644
index 000000000000..2aafb392ada6
--- /dev/null
+++ b/app-arch/patool/patool-2.0.0.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Portable archive file manager"
+HOMEPAGE="https://wummel.github.io/patool/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="
+ test? (
+ app-arch/arj
+ app-arch/bzip2
+ app-arch/bzip3
+ app-arch/cabextract
+ app-alternatives/cpio
+ app-arch/dpkg
+ app-arch/gzip
+ app-arch/lbzip2
+ app-arch/lcab
+ app-arch/lha
+ app-arch/libarchive
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/ncompress
+ app-arch/p7zip[rar]
+ app-arch/pbzip2
+ app-arch/pdlzip
+ app-arch/pigz
+ app-arch/plzip
+ app-arch/rpm
+ app-arch/rzip
+ app-arch/sharutils
+ app-arch/tar
+ app-arch/unace
+ app-arch/unadf
+ app-arch/unzip
+ app-arch/xdms
+ app-arch/xz-utils
+ app-arch/zip
+ app-arch/zpaq
+ app-arch/zstd
+ app-cdr/cdrtools
+ dev-libs/chmlib
+ media-libs/flac
+ media-sound/shorten
+ sys-apps/diffutils
+ sys-apps/file
+ sys-apps/grep
+ !elibc_musl? ( app-arch/rar )
+ !x86? (
+ app-arch/clzip
+ app-arch/lrzip
+ app-arch/unar
+ )
+ )
+"
+# Test dependencies which are packaged but can't be tested for various reasons.
+# app-arch/arc
+# app-arch/zoo
+# app-arch/zopfli
+# media-sound/mac
+
+# app-arch/rar is masked on musl
+# app-arch/clzip is unkeyworded on x86
+# app-arch/lrzip bug #916317 on x86
+# app-arch/unar is unkeyworded on x86
+
+# Unpackaged testable dependencies
+# archmage
+# genisoimage
+# lhasa
+# nomarch
+# pdzip2
+# py_{bz2,echo,gzip,tarfile,zipfile}
+# rpm2cpio
+# rzip
+# star
+# unalz
+# uncompress.real
+
+distutils_enable_tests pytest
+
+src_install() {
+ distutils-r1_src_install
+
+ newdoc doc/README.txt README.md
+ doman doc/patool.1
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # zoo emits a non-zero exit status on a possibly false consistency check
+ # Zoo: WARNING: Archive header failed consistency check.
+ "tests/archives/test_zoo.py"
+ # Doesn't accept long arguments, such as those that files in ${S} would have.
+ # Too long argument: /var/tmp/portage/app-arch/patool-1.12_p20230424/work/patool-ab64562c8cdac34dfd69fcb6e30c8c0014282d11/tests/data/p.arc.foo
+ "tests/archives/test_arc.py"
+ # Error: 1002 (invalid input file)
+ "tests/archives/test_mac.py"
+ # AttributeError: module 'patoolib.programs.zopfli' has no attribute 'extract_gzip'
+ "tests/archives/test_zopfli.py"
+ )
+
+ if use elibc_musl; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_rar.py"
+ )
+ fi
+
+ if use x86; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_clzip.py"
+ # bug #916317
+ "tests/archives/test_lrzip.py::TestLrzip::test_lrzip"
+ )
+ fi
+
+ epytest
+}
diff --git a/app-arch/patool/patool-2.1.1.ebuild b/app-arch/patool/patool-2.1.1.ebuild
new file mode 100644
index 000000000000..101960679d5f
--- /dev/null
+++ b/app-arch/patool/patool-2.1.1.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Portable archive file manager"
+HOMEPAGE="https://wummel.github.io/patool/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="
+ test? (
+ app-arch/arj
+ app-arch/bzip2
+ app-arch/bzip3
+ app-arch/cabextract
+ app-alternatives/cpio
+ app-arch/dpkg
+ app-arch/gzip
+ app-arch/lbzip2
+ app-arch/lcab
+ app-arch/lha
+ app-arch/libarchive
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/ncompress
+ app-arch/p7zip[rar]
+ app-arch/pbzip2
+ app-arch/pdlzip
+ app-arch/pigz
+ app-arch/plzip
+ app-arch/rpm
+ app-arch/rzip
+ app-arch/sharutils
+ app-arch/tar
+ app-arch/unace
+ app-arch/unadf
+ app-arch/unzip
+ app-arch/xdms
+ app-arch/xz-utils
+ app-arch/zip
+ app-arch/zopfli
+ app-arch/zpaq
+ app-arch/zstd
+ app-cdr/cdrtools
+ dev-libs/chmlib
+ media-libs/flac
+ media-sound/shorten
+ sys-apps/diffutils
+ sys-apps/file
+ sys-apps/grep
+ !elibc_musl? ( app-arch/rar )
+ !x86? (
+ app-arch/clzip
+ app-arch/lrzip
+ app-arch/unar
+ )
+ )
+"
+# Test dependencies which are packaged but can't be tested for various reasons.
+# app-arch/arc
+# app-arch/zoo
+# media-sound/mac
+
+# app-arch/rar is masked on musl
+# app-arch/clzip is unkeyworded on x86
+# app-arch/lrzip bug #916317 on x86
+# app-arch/unar is unkeyworded on x86
+
+# Unpackaged testable dependencies
+# archmage
+# genisoimage
+# lhasa
+# nomarch
+# pdzip2
+# py_{bz2,echo,gzip,tarfile,zipfile}
+# rpm2cpio
+# rzip
+# star
+# unalz
+# uncompress.real
+# 7zz ( app-arch/7zip:guru )
+
+distutils_enable_tests pytest
+
+src_install() {
+ distutils-r1_src_install
+
+ newdoc doc/README.txt README.md
+ doman doc/patool.1
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # zoo emits a non-zero exit status on a possibly false consistency check
+ # Zoo: WARNING: Archive header failed consistency check.
+ "tests/archives/test_zoo.py"
+ # Doesn't accept long arguments, such as those that files in ${S} would have.
+ # Too long argument: /var/tmp/portage/app-arch/patool-1.12_p20230424/work/patool-ab64562c8cdac34dfd69fcb6e30c8c0014282d11/tests/data/p.arc.foo
+ "tests/archives/test_arc.py"
+ # Error: 1002 (invalid input file)
+ "tests/archives/test_mac.py"
+ )
+
+ if use elibc_musl; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_rar.py"
+ )
+ fi
+
+ if use x86; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_clzip.py"
+ # bug #916317
+ "tests/archives/test_lrzip.py::TestLrzip::test_lrzip"
+ )
+ fi
+
+ epytest
+}
diff --git a/app-arch/patool/patool-2.2.0.ebuild b/app-arch/patool/patool-2.2.0.ebuild
new file mode 100644
index 000000000000..101960679d5f
--- /dev/null
+++ b/app-arch/patool/patool-2.2.0.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Portable archive file manager"
+HOMEPAGE="https://wummel.github.io/patool/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="
+ test? (
+ app-arch/arj
+ app-arch/bzip2
+ app-arch/bzip3
+ app-arch/cabextract
+ app-alternatives/cpio
+ app-arch/dpkg
+ app-arch/gzip
+ app-arch/lbzip2
+ app-arch/lcab
+ app-arch/lha
+ app-arch/libarchive
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/ncompress
+ app-arch/p7zip[rar]
+ app-arch/pbzip2
+ app-arch/pdlzip
+ app-arch/pigz
+ app-arch/plzip
+ app-arch/rpm
+ app-arch/rzip
+ app-arch/sharutils
+ app-arch/tar
+ app-arch/unace
+ app-arch/unadf
+ app-arch/unzip
+ app-arch/xdms
+ app-arch/xz-utils
+ app-arch/zip
+ app-arch/zopfli
+ app-arch/zpaq
+ app-arch/zstd
+ app-cdr/cdrtools
+ dev-libs/chmlib
+ media-libs/flac
+ media-sound/shorten
+ sys-apps/diffutils
+ sys-apps/file
+ sys-apps/grep
+ !elibc_musl? ( app-arch/rar )
+ !x86? (
+ app-arch/clzip
+ app-arch/lrzip
+ app-arch/unar
+ )
+ )
+"
+# Test dependencies which are packaged but can't be tested for various reasons.
+# app-arch/arc
+# app-arch/zoo
+# media-sound/mac
+
+# app-arch/rar is masked on musl
+# app-arch/clzip is unkeyworded on x86
+# app-arch/lrzip bug #916317 on x86
+# app-arch/unar is unkeyworded on x86
+
+# Unpackaged testable dependencies
+# archmage
+# genisoimage
+# lhasa
+# nomarch
+# pdzip2
+# py_{bz2,echo,gzip,tarfile,zipfile}
+# rpm2cpio
+# rzip
+# star
+# unalz
+# uncompress.real
+# 7zz ( app-arch/7zip:guru )
+
+distutils_enable_tests pytest
+
+src_install() {
+ distutils-r1_src_install
+
+ newdoc doc/README.txt README.md
+ doman doc/patool.1
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # zoo emits a non-zero exit status on a possibly false consistency check
+ # Zoo: WARNING: Archive header failed consistency check.
+ "tests/archives/test_zoo.py"
+ # Doesn't accept long arguments, such as those that files in ${S} would have.
+ # Too long argument: /var/tmp/portage/app-arch/patool-1.12_p20230424/work/patool-ab64562c8cdac34dfd69fcb6e30c8c0014282d11/tests/data/p.arc.foo
+ "tests/archives/test_arc.py"
+ # Error: 1002 (invalid input file)
+ "tests/archives/test_mac.py"
+ )
+
+ if use elibc_musl; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_rar.py"
+ )
+ fi
+
+ if use x86; then
+ EPYTEST_IGNORE+=(
+ "tests/archives/test_clzip.py"
+ # bug #916317
+ "tests/archives/test_lrzip.py::TestLrzip::test_lrzip"
+ )
+ fi
+
+ epytest
+}
diff --git a/app-arch/pax/Manifest b/app-arch/pax/Manifest
index a31ca15a60ed..f2c316be31ca 100644
--- a/app-arch/pax/Manifest
+++ b/app-arch/pax/Manifest
@@ -1 +1 @@
-DIST paxmirabilis-20161104.cpio.gz 148061 BLAKE2B 997a126d3048488e1a4e49ff9753de2ebdbe75b7daedbea8c95ab5f1902d4768d4b12b13fa684cb2a7c2fe8470ab60e19ea3f9430429a6a4e6e1d57993130fd4 SHA512 42ec8365a5efb9ffb9d383cece39ffaac85c1c8d69856ec557a5567cf0d28d98a0f2d4b7fed53572366eba12c71111cc80b591d51c6a19a3e6437efb62af33ce
+DIST paxmirabilis-20201030.cpio.gz 171982 BLAKE2B cdda22bf73ff60cda7b8873ed278d1d9d7daab170084ca17760dacffc88b8edd29a0498155f860019b22641d9c84186074c5e696c67846e1997f5883267761b0 SHA512 14c913db49c05b92f3448b7ae2e11b4fdb86c2daa5f269d86e044e8779eec7ea19b41534fbd8ebfe31cffe6b50e51c0460c3994307ba2cfa07029602604882de
diff --git a/app-arch/pax/files/pax-20160306-glibc-to-linux.patch b/app-arch/pax/files/pax-20160306-glibc-to-linux.patch
deleted file mode 100644
index eec6624eedc2..000000000000
--- a/app-arch/pax/files/pax-20160306-glibc-to-linux.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- a/cache.c
-+++ b/cache.c
-@@ -195,7 +195,7 @@
- * No entry for this uid, we will add it
- */
- if (!pwopn) {
--#if defined(__GLIBC__)
-+#if defined(__GLIBC__) || defined(__linux__)
- setpwent();
- #elif !defined(__INTERIX)
- setpassent(1);
-@@ -265,7 +265,7 @@
- * No entry for this gid, we will add it
- */
- if (!gropn) {
--#if defined(__GLIBC__)
-+#if defined(__GLIBC__) || defined(__linux__)
- setgrent();
- #elif !defined(__INTERIX) && !defined(__CYGWIN__)
- setgroupent(1);
-@@ -336,7 +336,7 @@
- }
-
- if (!pwopn) {
--#if defined(__GLIBC__)
-+#if defined(__GLIBC__) || defined(__linux__)
- setpwent();
- #elif !defined(__INTERIX)
- setpassent(1);
-@@ -403,7 +403,7 @@
- }
-
- if (!gropn) {
--#if defined(__GLIBC__)
-+#if defined(__GLIBC__) || defined(__linux__)
- setgrent();
- #elif !defined(__INTERIX) && !defined(__CYGWIN__)
- setgroupent(1);
diff --git a/app-arch/pax/metadata.xml b/app-arch/pax/metadata.xml
index 6f49eba8f496..115e9d64a669 100644
--- a/app-arch/pax/metadata.xml
+++ b/app-arch/pax/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/app-arch/pax/pax-20161104.ebuild b/app-arch/pax/pax-20161104.ebuild
deleted file mode 100644
index 65117db6a47c..000000000000
--- a/app-arch/pax/pax-20161104.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit unpacker toolchain-funcs flag-o-matic
-
-DESCRIPTION="pax (Portable Archive eXchange) is the POSIX standard archive tool"
-HOMEPAGE="https://www.mirbsd.org/pax.htm"
-SRC_URI="https://www.mirbsd.org/MirOS/dist/mir/cpio/paxmirabilis-${PV}.cpio.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
-
-RDEPEND="
- dev-libs/libbsd
- elibc_musl? ( sys-libs/fts-standalone )
-"
-DEPEND="
- ${RDEPEND}
- $(unpacker_src_uri_depends)
-"
-PATCHES=(
- "${FILESDIR}/${PN}-20160306-glibc-to-linux.patch"
-)
-S=${WORKDIR}/${PN}
-
-src_prepare() {
- # Newer C libraries omit this include from sys/types.h.
- sed -i '1i#include <sys/sysmacros.h>' extern.h || die
- default
-}
-
-src_configure() {
- tc-export CC PKG_CONFIG
-}
-
-src_compile() {
- use elibc_musl && append-cflags "-lfts"
-
- # We can't rely on LFS flags as it uses the fts.h interface which lacks 64-bit support.
- set -- \
- ${CC} ${CPPFLAGS} ${CFLAGS} \
- -DPAX_SAFE_PATH=\"/bin:/usr/bin\" \
- -DHAVE_STRLCPY -DHAVE_VIS -DHAVE_STRMODE \
- -DLONG_OFF_T -DHAVE_LINKAT \
- $(${PKG_CONFIG} --cflags libbsd-overlay) \
- -Wall ${LDFLAGS} *.c -o ${PN} \
- $(${PKG_CONFIG} --libs libbsd-overlay)
- echo "$@"
- "$@" || die
-}
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-
- dosym pax /usr/bin/paxcpio
- newman cpio.1 paxcpio.1
-
- dosym pax /usr/bin/paxtar
- newman tar.1 paxtar.1
-}
diff --git a/app-arch/pax/pax-20201030.ebuild b/app-arch/pax/pax-20201030.ebuild
new file mode 100644
index 000000000000..b22da9159947
--- /dev/null
+++ b/app-arch/pax/pax-20201030.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit unpacker toolchain-funcs flag-o-matic
+
+DESCRIPTION="pax (Portable Archive eXchange) is the POSIX standard archive tool"
+HOMEPAGE="https://www.mirbsd.org/pax.htm"
+SRC_URI="https://www.mirbsd.org/MirOS/dist/mir/cpio/paxmirabilis-${PV}.cpio.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+RDEPEND="elibc_musl? ( sys-libs/fts-standalone )"
+DEPEND="${RDEPEND}"
+BDEPEND="$(unpacker_src_uri_depends)"
+
+S=${WORKDIR}/${PN}
+
+src_configure() {
+ use elibc_musl && append-libs -lfts
+
+ tc-export CC
+ tc-getPROG SIZE size
+}
+
+src_compile() {
+ set -- sh ./Build.sh
+ echo "$@"
+ "$@"
+}
+
+src_install() {
+ dobin pax
+ doman pax.1
+
+ dosym pax /usr/bin/paxcpio
+ newman cpio.1 paxcpio.1
+
+ dosym pax /usr/bin/paxtar
+ newman tar.1 paxtar.1
+}
diff --git a/app-arch/pbzip2/Manifest b/app-arch/pbzip2/Manifest
index 126b9c840392..c66c7c13c0f6 100644
--- a/app-arch/pbzip2/Manifest
+++ b/app-arch/pbzip2/Manifest
@@ -1,2 +1 @@
-DIST pbzip2-1.1.12.tar.gz 47826 BLAKE2B 62b1e47b7b67f2a27f31032654506552c33e68121dd50d3496dc746a405cf783807c4966058feb1aebda2080ae1d1d22e944d057ea3a0dba2f9247ea46b23eb0 SHA512 bb68e87867295b89ee6fb76a8b72834daebf0ca6c16b2f10bce67fe7386716a728acd28bf46a9732087202ca0cc774f02c741b0b58801184bb7550f6fd119cd6
DIST pbzip2-1.1.13.tar.gz 48015 BLAKE2B 1bb410acadc728963c3a04d2665fb1b1f0c206a893ed90352a9c16512e9bd5f82c3f5f3b383b382134bbe904735a1c8a81615a8bc54de8c6bc91633d9ce72c57 SHA512 a150e476a85b2ae71c244561380f8f113072ef712173afaa0bdace5845d5f81a15b135258cb01376156b69a5085b02b7ab866cfab5713aa773b251b203c087b8
diff --git a/app-arch/pbzip2/metadata.xml b/app-arch/pbzip2/metadata.xml
index 98d33df27533..58c362b73a80 100644
--- a/app-arch/pbzip2/metadata.xml
+++ b/app-arch/pbzip2/metadata.xml
@@ -1,13 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
- <use>
- <flag name="symlink">Install symlinks which override <pkg>app-arch/bzip2</pkg> implementation</flag>
- </use>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="launchpad">pbzip2</remote-id>
</upstream>
diff --git a/app-arch/pbzip2/pbzip2-1.1.12.ebuild b/app-arch/pbzip2/pbzip2-1.1.12.ebuild
deleted file mode 100644
index 1f7a715f73c3..000000000000
--- a/app-arch/pbzip2/pbzip2-1.1.12.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit flag-o-matic eutils toolchain-funcs
-
-DESCRIPTION="Parallel bzip2 (de)compressor using libbz2"
-HOMEPAGE="http://compression.ca/pbzip2/ https://launchpad.net/pbzip2"
-SRC_URI="https://launchpad.net/pbzip2/${PV:0:3}/${PV}/+download/${P}.tar.gz"
-
-LICENSE="BZIP2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="static symlink"
-
-LIB_DEPEND="app-arch/bzip2[static-libs(+)]"
-RDEPEND="
- !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- symlink? ( !app-arch/lbzip2[symlink] )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.1.10-makefile.patch
- tc-export CXX
- use static && append-ldflags -static
-}
-
-src_install() {
- dobin pbzip2
- dodoc AUTHORS ChangeLog README
- doman pbzip2.1
- dosym pbzip2 /usr/bin/pbunzip2
-
- if use symlink ; then
- local s
- for s in bzip2 bunzip2 bzcat ; do
- dosym pbzip2 /usr/bin/${s}
- done
- fi
-}
diff --git a/app-arch/pbzip2/pbzip2-1.1.13.ebuild b/app-arch/pbzip2/pbzip2-1.1.13.ebuild
index 18d59a91340f..45b38f64b96d 100644
--- a/app-arch/pbzip2/pbzip2-1.1.13.ebuild
+++ b/app-arch/pbzip2/pbzip2-1.1.13.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI="7"
-inherit flag-o-matic eutils toolchain-funcs
+inherit flag-o-matic toolchain-funcs
DESCRIPTION="Parallel bzip2 (de)compressor using libbz2"
HOMEPAGE="http://compression.ca/pbzip2/ https://launchpad.net/pbzip2"
@@ -11,20 +11,25 @@ SRC_URI="https://launchpad.net/pbzip2/${PV:0:3}/${PV}/+download/${P}.tar.gz"
LICENSE="BZIP2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="static symlink"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="static"
LIB_DEPEND="app-arch/bzip2[static-libs(+)]"
-RDEPEND="
- !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- symlink? ( !app-arch/lbzip2[symlink] )"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.10-makefile.patch
+)
+
src_prepare() {
+ default
# https://bugs.launchpad.net/pbzip2/+bug/1746369
sed -i 's:"PRIuMAX":" PRIuMAX ":g' *.cpp || die
- epatch "${FILESDIR}"/${PN}-1.1.10-makefile.patch
+}
+
+src_configure() {
tc-export CXX
use static && append-ldflags -static
}
@@ -32,11 +37,4 @@ src_prepare() {
src_install() {
emake DESTDIR="${ED}" install
dodoc AUTHORS ChangeLog README
-
- if use symlink ; then
- local s
- for s in bzip2 bunzip2 bzcat ; do
- dosym pbzip2 /usr/bin/${s}
- done
- fi
}
diff --git a/app-arch/pdlzip/Manifest b/app-arch/pdlzip/Manifest
index ab89ec193a3b..a37f3abf8412 100644
--- a/app-arch/pdlzip/Manifest
+++ b/app-arch/pdlzip/Manifest
@@ -1 +1,2 @@
-DIST pdlzip-1.10.tar.gz 62416 BLAKE2B 7e8a4bc5793e10a819e911535149336138473b30b552e6d728b3f547e13e34540ac8fa91d84656c3feeb2816c06cd636cf3eafc5b031cca2b63e704a8f7f6ee8 SHA512 a0da45df3af68176d1ebceccba833d0d41b04750d37e90b3da6f1bdc98a41fffcb8e0ce04a296a31351aa7babd1dcaddf08f616d103970ad5fbf13e469f287ad
+DIST pdlzip-1.13.tar.gz 74681 BLAKE2B 459b1be6c1526c9fe10f9208f7e9ecb0316304ff7d484991fd4a6c786efcef7ff46ce1e5f11c2df5aab403ebe047baf2c3f037b77b67f0601f176e718c61849e SHA512 3fdcfb3be40df564163fd429cefddaccc0b0dc487e8c9c0fb6ca79a26a875f6cfb3cf051b3a155467b333a54b7512ce1604249ae5b198414da5757b723110dd5
+DIST pdlzip-1.13.tar.gz.sig 72 BLAKE2B 666f80542b88c41af8a5e4b9df459ae2c804fd0500997092389efbc7c2f8ae615805a9fe915066eef77b3052fc75a21ec077500767679a9c8460c25adc4f688b SHA512 8b70f96c38db86f6d2dded432bad50875d29abeacc587db1ab6cdacb9c684130a46ca07abaf030e95cf09ac9bdd9ecc14a2360979e928194a9345525dcf1a191
diff --git a/app-arch/pdlzip/metadata.xml b/app-arch/pdlzip/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/pdlzip/metadata.xml
+++ b/app-arch/pdlzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/pdlzip/pdlzip-1.10.ebuild b/app-arch/pdlzip/pdlzip-1.13.ebuild
index 058c99d67e73..550b7b157c6b 100644
--- a/app-arch/pdlzip/pdlzip-1.10.ebuild
+++ b/app-arch/pdlzip/pdlzip-1.13.ebuild
@@ -1,18 +1,21 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit toolchain-funcs
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
DESCRIPTION="Public-domain version of lzip compressor"
HOMEPAGE="https://www.nongnu.org/lzip/pdlzip.html"
SRC_URI="https://download.savannah.gnu.org/releases/lzip/pdlzip/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz.sig )"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~amd64 ~mips ~x86"
-IUSE=""
+KEYWORDS="amd64 ~mips x86"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
src_configure() {
local myconf=(
diff --git a/app-arch/pdv/files/pdv-1.5.1-missing-prototype.patch b/app-arch/pdv/files/pdv-1.5.1-missing-prototype.patch
new file mode 100644
index 000000000000..d35ddedfda74
--- /dev/null
+++ b/app-arch/pdv/files/pdv-1.5.1-missing-prototype.patch
@@ -0,0 +1,19 @@
+Add missing prototype to a common header file.
+
+Bug: https://bugs.gentoo.org/882157
+
+diff --git a/X11/xmpdvmkpkg.h b/X11/xmpdvmkpkg.h
+index abaaa47..fd6c6f5 100644
+--- a/X11/xmpdvmkpkg.h
++++ b/X11/xmpdvmkpkg.h
+@@ -76,6 +76,7 @@ extern Widget g_statusw;
+ void spectowidgets(void);
+ void widgetstospec(struct pdvspec_st *spec);
+ int cmpspecandwidgets(void);
++void statusmsg(char *fmt, ...);
+ void xu_SetMainTitle(const char *newtitle, const char *newprefix
+ , Widget topshell);
+
+--
+2.41.0
+
diff --git a/app-arch/pdv/files/pdv-1.5.1-no-strip.patch b/app-arch/pdv/files/pdv-1.5.1-no-strip.patch
index 630bf5eb7c36..4beaeb1c4889 100644
--- a/app-arch/pdv/files/pdv-1.5.1-no-strip.patch
+++ b/app-arch/pdv/files/pdv-1.5.1-no-strip.patch
@@ -1,13 +1,12 @@
-diff -ur pdv-1.5.1-orig/pdv.c pdv-1.5.1/pdv.c
---- pdv-1.5.1-orig/Makefile.in 2008-12-06 23:17:46.000000000 -0800
-+++ pdv-1.5.1/Makefile.in 2008-12-06 23:18:37.000000000 -0800
-@@ -536,7 +536,8 @@
+diff --git a/extra.mk b/extra.mk
+index 65f6e72..e681adb 100644
+--- a/extra.mk
++++ b/extra.mk
+@@ -11,7 +11,6 @@ pdv_fixed.c : Makefile
touch $@
pdv_fixed : pdv_fixed.c pdv
- $(STRIPBIN) pdv
-+ # let portage decide whether to strip binaries
-+ #$(STRIPBIN) pdv
printf "%-5.5s" $$VERSION >> pdv
printf "\000\000\000\000\000\000\000\000" >> pdv
sleep 1
diff --git a/app-arch/pdv/metadata.xml b/app-arch/pdv/metadata.xml
index 3f8f6e0fd143..a2e376eb5da0 100644
--- a/app-arch/pdv/metadata.xml
+++ b/app-arch/pdv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/pdv/pdv-1.5.1-r3.ebuild b/app-arch/pdv/pdv-1.5.1-r5.ebuild
index 8b712196c4de..dc90318206d0 100644
--- a/app-arch/pdv/pdv-1.5.1-r3.ebuild
+++ b/app-arch/pdv/pdv-1.5.1-r5.ebuild
@@ -1,58 +1,61 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
+
inherit autotools toolchain-funcs
DESCRIPTION="build a self-extracting and self-installing binary package"
-HOMEPAGE="https://sourceforge.net/projects/pdv"
+HOMEPAGE="https://sourceforge.net/projects/pdv/"
SRC_URI="mirror://sourceforge/pdv/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~hppa ppc x86 ~x86-linux ~ppc-macos"
-IUSE="X"
+IUSE="gui"
-DEPEND="
- X? (
+RDEPEND="
+ gui? (
>=x11-libs/motif-2.3:0
>=x11-libs/libX11-1.0.0
>=x11-libs/libXt-1.0.0
- >=x11-libs/libXext-1.0.0 )
-"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
+ >=x11-libs/libXext-1.0.0
+ )"
+DEPEND="${RDEPEND}"
+PATCHES=(
# fix a size-of-variable bug
- eapply "${FILESDIR}"/${P}-opt.patch
+ "${FILESDIR}"/${P}-opt.patch
# fix a free-before-use bug
- eapply "${FILESDIR}"/${P}-early-free.patch
+ "${FILESDIR}"/${P}-early-free.patch
# fix a configure script bug
- eapply "${FILESDIR}"/${P}-x-config.patch
+ "${FILESDIR}"/${P}-x-config.patch
# fix default args bug from assuming 'char' is signed
- eapply "${FILESDIR}"/${P}-default-args.patch
+ "${FILESDIR}"/${P}-default-args.patch
# prevent pre-stripped binaries
- eapply "${FILESDIR}"/${P}-no-strip.patch
+ "${FILESDIR}"/${P}-no-strip.patch
+ # missing function prototype, see bug #882157
+ "${FILESDIR}"/${P}-missing-prototype.patch
+)
+
+src_prepare() {
+ default
# re-build configure script since patch was applied to configure.in
- cd "${S}"/X11
- mv configure.in configure.ac || die
+ # and to refresh old compiler checks, see bugs #880351 and #906002
eautoreconf
- tc-export CC
}
src_configure() {
- local myconf=""
- use X || myconf="--without-x" # configure script is broken, cant use use_with
- econf ${myconf}
+ tc-export CC
+
+ econf $(usev !gui --without-x) # configure script is broken, cant use use_with
}
src_install() {
dobin pdv pdvmkpkg
doman pdv.1 pdvmkpkg.1
- if use X ; then
+ if use gui ; then
dobin X11/xmpdvmkpkg
doman xmpdvmkpkg.1
fi
diff --git a/app-arch/pet2tgz/metadata.xml b/app-arch/pet2tgz/metadata.xml
index a272aeda686c..ecf849fbdf1a 100644
--- a/app-arch/pet2tgz/metadata.xml
+++ b/app-arch/pet2tgz/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/pigz/Manifest b/app-arch/pigz/Manifest
index cefc6fb77bc8..4fddcc524d11 100644
--- a/app-arch/pigz/Manifest
+++ b/app-arch/pigz/Manifest
@@ -1 +1,2 @@
-DIST pigz-2.4.tar.gz 98234 BLAKE2B 763fe3975c6a83f46b94741d4e16b40a4edef20b7677e8d32b99856498f951edebd86634c227b0f212f0aff87fd3626e21348fdb3839a6abfb21a547bed88be6 SHA512 79b2357176f93b9f3e2bc07fee393fc4d79b7bd0041808f8ddfd23eafccde72e60ca95e97595bb624a4f732fe3612bf46d57c44541c36ae62f9aa6336abe16ba
+DIST pigz-2.8.tar.gz 121304 BLAKE2B 9f1ae8b5e0dd9d9b1f17bcdbc41d8a9d50fd9b9ba7c50eb0bc1b738105d05cc396d9ce8e01f58f6b2fa7247a7c7e9926c602a613b1bb3e3a117c8f5c919ce640 SHA512 ae3d9d593e1645d65f9ab77aa828600c9af4bb30d0a073da7ae3dd805e65b87efaf6a0efb980f2d0168e475ae506eba194547d6479956dabb9d88293a9078a7f
+DIST pigz-2.8.tar.gz.asc 235 BLAKE2B eb204079597d3e958da3672ba7f92481848bb7824da12b9306ff180add107175bed7bdd435dbc270170769a489c34a033d6ff547e8203cf1d71df6564381b43d SHA512 cb1dbca21d8fed25049693de02abf7489f61407d85f9a52d566c14e0194c6c393aed3edd2fd716d0ecedf7eeead6ae89d0cecc236caacd98740d14bd71e078db
diff --git a/app-arch/pigz/files/2.4-trailing-junk.patch b/app-arch/pigz/files/2.4-trailing-junk.patch
deleted file mode 100644
index eb5585b7d362..000000000000
--- a/app-arch/pigz/files/2.4-trailing-junk.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 1414ff3eb0b1ac9e5f096b0a28efa459cb8be1cd Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Fri, 10 Jul 2020 19:46:10 -0700
-Subject: [PATCH] Ignore trailing junk on .gz by default, to emulate gzip.
-
-backport of
-https://github.com/madler/pigz/commit/9696c84cb1963651707e649978afb07d0c11b254
----
- pigz.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pigz.c b/pigz.c
-index bbbfd2c..f2e79d7 100644
---- a/pigz.c
-+++ b/pigz.c
-@@ -3368,7 +3368,7 @@ local void infchk(void) {
- cat();
- else if (was > 1 && get_header(0) != -5)
- complain("warning: %s: entries after the first were ignored", g.inf);
-- else if ((was == 0 && ret != -1) || (was == 1 && (GET(), !g.in_eof)))
-+ else if (( g.verbosity > 1 && was == 0 && ret != -1) || (was == 1 && (GET(), !g.in_eof)))
- complain("warning: %s: trailing junk was ignored", g.inf);
- }
-
---
-2.27.0
-
diff --git a/app-arch/pigz/metadata.xml b/app-arch/pigz/metadata.xml
index 918992722f52..6c4468bab2b9 100644
--- a/app-arch/pigz/metadata.xml
+++ b/app-arch/pigz/metadata.xml
@@ -1,19 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
</maintainer>
<longdescription lang="en">
pigz, which stands for parallel implementation of gzip,
is a fully functional replacement for gzip that exploits
multiple processors and multiple cores to the hilt when compressing data.
</longdescription>
- <use>
- <flag name="symlink">Install symlinks which override <pkg>app-arch/gzip</pkg> implementation</flag>
- </use>
<upstream>
<remote-id type="cpe">cpe:/a:zlib:pigz</remote-id>
+ <remote-id type="github">madler/pigz</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/pigz/pigz-2.4-r1.ebuild b/app-arch/pigz/pigz-2.4-r1.ebuild
deleted file mode 100644
index 29c9951c6bfa..000000000000
--- a/app-arch/pigz/pigz-2.4-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="A parallel implementation of gzip"
-HOMEPAGE="https://www.zlib.net/pigz/"
-SRC_URI="https://www.zlib.net/pigz/${P}.tar.gz"
-
-LICENSE="ZLIB"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~ppc-macos ~sparc64-solaris"
-IUSE="static symlink test"
-RESTRICT="!test? ( test )"
-
-LIB_DEPEND="sys-libs/zlib[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- test? ( app-arch/ncompress )"
-
-PATCHES=( "${FILESDIR}/${PV}-trailing-junk.patch" )
-
-src_compile() {
- use static && append-ldflags -static
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
-}
-
-src_install() {
- dobin ${PN}
- dosym ${PN} /usr/bin/un${PN}
- dodoc README
- doman ${PN}.1
-
- if use symlink; then
- dosym ${PN} /usr/bin/gzip
- dosym un${PN} /usr/bin/gunzip
- fi
-}
diff --git a/app-arch/pigz/pigz-2.8.ebuild b/app-arch/pigz/pigz-2.8.ebuild
new file mode 100644
index 000000000000..3f8b6a274058
--- /dev/null
+++ b/app-arch/pigz/pigz-2.8.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/madler.asc
+inherit toolchain-funcs flag-o-matic verify-sig
+
+DESCRIPTION="A parallel implementation of gzip"
+HOMEPAGE="https://www.zlib.net/pigz/"
+SRC_URI="
+ https://www.zlib.net/pigz/${P}.tar.gz
+ verify-sig? ( https://www.zlib.net/pigz/${P}-sig.txt -> ${P}.tar.gz.asc )
+"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos"
+IUSE="static test"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND=">=sys-libs/zlib-1.2.3[static-libs(+)]"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+ test? ( app-arch/ncompress )
+"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-madler )"
+
+src_compile() {
+ use static && append-ldflags -static
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin ${PN}
+ dosym ${PN} /usr/bin/un${PN}
+ dodoc README
+ doman ${PN}.1
+}
diff --git a/app-arch/pixz/Manifest b/app-arch/pixz/Manifest
index d5f9c719c42d..e3e710507a23 100644
--- a/app-arch/pixz/Manifest
+++ b/app-arch/pixz/Manifest
@@ -1,2 +1 @@
-DIST pixz-1.0.6.tar.xz 119516 BLAKE2B 758a4985b946284587998ab2a653e51ded9838a7c77c7795c82c15c1693714468b07c2cbfd86a0c7ce7be34d9a5bd8fdc3285d503524ce299ba53179447e60ed SHA512 361a8d8b736c350e4e3fd19b5d36777129a087eb81439d05edc08f9378938583bef8fc70e440ffd22efb6dad1f6494c6c3e532d7dd1ab12c9350b6078aa993d7
DIST pixz-1.0.7.tar.xz 120876 BLAKE2B 23563837169611d54dc4540715537b2e16c66bd9682097e4f37957e7422b487f221603b11aa30a39fd05c77dbeddc1697ac9ffe208d984c1da885a67f79a180f SHA512 7f343cb74958b9582b60a2e916243e72421fad1ebecc5867c9e046c881e8a318da9bb885edd71da8fe6953fd5d5c2f5119133cd0bbbf4d0f9b35f8aecd61120d
diff --git a/app-arch/pixz/files/pixz-1.0.6-avoid-unaligned-accesses.patch b/app-arch/pixz/files/pixz-1.0.6-avoid-unaligned-accesses.patch
deleted file mode 100644
index 24c53c9acc4a..000000000000
--- a/app-arch/pixz/files/pixz-1.0.6-avoid-unaligned-accesses.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-https://github.com/vasi/pixz/pull/82
-
-From 8b9a198d86e435929ed0c2246217d241ed1e707c Mon Sep 17 00:00:00 2001
-From: Matt Turner <mattst88@gmail.com>
-Date: Sun, 1 Sep 2019 23:58:26 -0700
-Subject: [PATCH] Avoid unaligned accesses
-
-Architectures like SPARC do not allow unaligned accesses. Avoid them by
-memcpy()ing the data to an aligned buffer. On x86 systems where
-unaligned loads are fast, the memcpy() will be compiled away and the
-same code generated as before.
----
- src/endian.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/endian.c b/src/endian.c
-index 51aea58..122c7da 100644
---- a/src/endian.c
-+++ b/src/endian.c
-@@ -13,6 +13,7 @@ void xle64enc(uint8_t *d, uint64_t n) {
- #elif defined(__linux__) || defined(__FreeBSD__)
-
- #include <stdint.h>
-+#include <string.h>
- #ifdef __linux__
- #include <endian.h>
- #include <byteswap.h>
-@@ -37,11 +38,14 @@ void xle64enc(uint8_t *d, uint64_t n) {
- #endif
-
- uint64_t xle64dec(const uint8_t *d) {
-- return le64toh(*(uint64_t*)d);
-+ uint64_t tmp;
-+ memcpy(&tmp, d, sizeof(tmp));
-+ return le64toh(tmp);
- }
-
- void xle64enc(uint8_t *d, uint64_t n) {
-- *(uint64_t*)d = htole64(n);
-+ uint64_t tmp = htole64(n);
-+ memcpy(d, &tmp, sizeof(tmp));
- }
-
- #else
diff --git a/app-arch/pixz/metadata.xml b/app-arch/pixz/metadata.xml
index 4256054ae7c0..4f7e31333ee0 100644
--- a/app-arch/pixz/metadata.xml
+++ b/app-arch/pixz/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
diff --git a/app-arch/pixz/pixz-1.0.6-r1.ebuild b/app-arch/pixz/pixz-1.0.6-r1.ebuild
deleted file mode 100644
index 08b4bdc897d7..000000000000
--- a/app-arch/pixz/pixz-1.0.6-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/vasi/${PN}.git"
- inherit git-r3 autotools
-else
- SRC_URI="https://github.com/vasi/pixz/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-fi
-
-DESCRIPTION="Parallel Indexed XZ compressor"
-HOMEPAGE="https://github.com/vasi/pixz"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="static"
-
-LIB_DEPEND=">=app-arch/libarchive-2.8:=[static-libs(+)]
- >=app-arch/xz-utils-5[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )"
-[[ ${PV} == "9999" ]] && DEPEND+=" app-text/asciidoc"
-
-PATCHES=(
- "${FILESDIR}"/${P}-avoid-unaligned-accesses.patch
-)
-
-src_prepare() {
- default
- [[ ${PV} == "9999" ]] && eautoreconf
-}
-
-src_configure() {
- use static && append-ldflags -static
- append-flags -std=gnu99
- # Workaround silly logic that breaks cross-compiles.
- # https://github.com/vasi/pixz/issues/67
- export ac_cv_file_src_pixz_1=$([[ -f src/pixz.1 ]] && echo yes || echo no)
- econf
-}
diff --git a/app-arch/pixz/pixz-1.0.7.ebuild b/app-arch/pixz/pixz-1.0.7-r1.ebuild
index c6564c5abe3d..42b11e22d697 100644
--- a/app-arch/pixz/pixz-1.0.7.ebuild
+++ b/app-arch/pixz/pixz-1.0.7-r1.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/vasi/${PN}.git"
inherit git-r3 autotools
else
SRC_URI="https://github.com/vasi/pixz/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
DESCRIPTION="Parallel Indexed XZ compressor"
@@ -27,25 +27,37 @@ LIB_DEPEND="
RDEPEND="
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
-DEPEND="${RDEPEND}
+DEPEND="
+ ${RDEPEND}
static? ( ${LIB_DEPEND} )
"
-[[ ${PV} == "9999" ]] && BDEPEND+=" app-text/asciidoc"
+[[ ${PV} == 9999 ]] && BDEPEND+=" app-text/asciidoc"
src_prepare() {
default
+
+ # We're not interested in linting tests for our purposes (bug #915008)
+ cat > test/cppcheck-src.sh <<-EOF || die
+ #!/bin/sh
+ exit 77
+ EOF
+
[[ ${PV} == "9999" ]] && eautoreconf
}
src_configure() {
use static && append-ldflags -static
append-flags -std=gnu99
+
# Workaround silly logic that breaks cross-compiles.
# https://github.com/vasi/pixz/issues/67
export ac_cv_file_src_pixz_1=$([[ -f src/pixz.1 ]] && echo yes || echo no)
econf
}
-src_test() {
- emake check
+src_install() {
+ default
+
+ # https://github.com/vasi/pixz/issues/94
+ [[ ${PV} == "9999" ]] || doman src/pixz.1
}
diff --git a/app-arch/pixz/pixz-9999.ebuild b/app-arch/pixz/pixz-9999.ebuild
index c6564c5abe3d..10a369c58a13 100644
--- a/app-arch/pixz/pixz-9999.ebuild
+++ b/app-arch/pixz/pixz-9999.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/vasi/${PN}.git"
inherit git-r3 autotools
else
SRC_URI="https://github.com/vasi/pixz/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="Parallel Indexed XZ compressor"
@@ -27,25 +27,34 @@ LIB_DEPEND="
RDEPEND="
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
-DEPEND="${RDEPEND}
+DEPEND="
+ ${RDEPEND}
static? ( ${LIB_DEPEND} )
"
-[[ ${PV} == "9999" ]] && BDEPEND+=" app-text/asciidoc"
+[[ ${PV} == 9999 ]] && BDEPEND+=" app-text/asciidoc"
src_prepare() {
default
+
+ # We're not interested in linting tests for our purposes (bug #915008)
+ cat > test/cppcheck-src.sh <<-EOF || die
+ #!/bin/sh
+ exit 77
+ EOF
+
[[ ${PV} == "9999" ]] && eautoreconf
}
src_configure() {
use static && append-ldflags -static
append-flags -std=gnu99
- # Workaround silly logic that breaks cross-compiles.
- # https://github.com/vasi/pixz/issues/67
- export ac_cv_file_src_pixz_1=$([[ -f src/pixz.1 ]] && echo yes || echo no)
+
econf
}
-src_test() {
- emake check
+src_install() {
+ default
+
+ # https://github.com/vasi/pixz/issues/94
+ [[ ${PV} == "9999" ]] || doman src/pixz.1
}
diff --git a/app-arch/plzip/Manifest b/app-arch/plzip/Manifest
index ac879667e47d..946d5852dbf0 100644
--- a/app-arch/plzip/Manifest
+++ b/app-arch/plzip/Manifest
@@ -1 +1,2 @@
-DIST plzip-1.8.tar.gz 72365 BLAKE2B 66b8881b6c70932c66e40edab22235103d671a870c980c0b0b08754e94fbc1b2d0f2eeb26deac4f27fbc89d69c3b588bd51cb973b7b59cbb2d0f6ab4cc9a115d SHA512 e8e822f8ae77e06178538b62075fa1c5d9cbc76c78bee7ad595a4637cd4077f53fd9e3fe61ca3fbddaa8b950e739d97527dc8fbecae04de1ac3ef83d0d5f13b4
+DIST plzip-1.11.tar.gz 96572 BLAKE2B 8de36791390c7b71cd42866a8be4503d601a94ca89a23355be48dff75bf8a6b34b260eea4b1e5ef68e63d20b8dfd6f5acd1e60a9b51290425f22c7a9905469ae SHA512 3a0f0443e68a6b776d85b69ed24d21e03d7bad1b788d6e8f741cc0ebb2537aebde2d68aa6765bcb4d61df6521779af27d176f5ef348014fa3088aa219d5ec691
+DIST plzip-1.11.tar.gz.sig 72 BLAKE2B b7543e93c7736135c95b179472c85226af4b489daa686ede710ac03dc1fb9c3cc31bfcff5452cdf855eb49d00f6548214e94143ed19f8d8420bd05bcb72ae1f9 SHA512 458edf3fb78716cb39164761b2f90cd32011ec2634370791918adc4845b377563f76a32fda9b99e478fb52a0b05c4dc6d4d8df5098da0c95670f205fa4a56511
diff --git a/app-arch/plzip/metadata.xml b/app-arch/plzip/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/plzip/metadata.xml
+++ b/app-arch/plzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/plzip/plzip-1.8.ebuild b/app-arch/plzip/plzip-1.11.ebuild
index 87f3445f1964..049c9fdd7ab5 100644
--- a/app-arch/plzip/plzip-1.8.ebuild
+++ b/app-arch/plzip/plzip-1.11.ebuild
@@ -1,21 +1,23 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit toolchain-funcs
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit toolchain-funcs verify-sig
DESCRIPTION="Parallel lzip compressor"
HOMEPAGE="https://www.nongnu.org/lzip/plzip.html"
SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.gz"
+SRC_URI+=" verify-sig? ( https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.gz.sig )"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE=""
+KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv x86"
RDEPEND="app-arch/lzlib:0="
-DEPEND=${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )"
src_configure() {
local myconf=(
diff --git a/app-arch/pure-sfv/files/pure-sfv-0.3-fix-build-system.patch b/app-arch/pure-sfv/files/pure-sfv-0.3-fix-build-system.patch
index ca2143f1f956..b7f6771b5ed9 100644
--- a/app-arch/pure-sfv/files/pure-sfv-0.3-fix-build-system.patch
+++ b/app-arch/pure-sfv/files/pure-sfv-0.3-fix-build-system.patch
@@ -1,10 +1,11 @@
--- a/Makefile
+++ b/Makefile
-@@ -54,18 +54,16 @@
+@@ -54,18 +54,17 @@
VC_CRAP = pure-sfv.ncb pure-sfv.plg
-CFLAGS += -Wall -Werror -O2 -g -Wno-unused
++CFLAGS += -Wall -Wno-unused
INSTALL_PREFIX = /usr/local
INSTALL_PROGRAM = /usr/bin/install -c
diff --git a/app-arch/pure-sfv/metadata.xml b/app-arch/pure-sfv/metadata.xml
index e48e0f140627..95cada5ab6da 100644
--- a/app-arch/pure-sfv/metadata.xml
+++ b/app-arch/pure-sfv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/pure-sfv/pure-sfv-0.3-r1.ebuild b/app-arch/pure-sfv/pure-sfv-0.3-r2.ebuild
index f28c6df42ec4..e10b8d93b4f1 100644
--- a/app-arch/pure-sfv/pure-sfv-0.3-r1.ebuild
+++ b/app-arch/pure-sfv/pure-sfv-0.3-r2.ebuild
@@ -1,25 +1,23 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit flag-o-matic toolchain-funcs
+inherit toolchain-funcs
DESCRIPTION="utility to test and create .sfv files and create .par files"
-HOMEPAGE="http://pure-sfv.sourceforge.net/"
+HOMEPAGE="https://pure-sfv.sourceforge.net/"
SRC_URI="mirror://sourceforge/pure-sfv/${PN}_${PV}_src.tar.gz"
+S="${WORKDIR}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~hppa ppc x86"
-IUSE=""
RESTRICT="test"
-S=${WORKDIR}
PATCHES=( "${FILESDIR}"/${PN}-0.3-fix-build-system.patch )
src_configure() {
- append-cflags -Wall -Wno-unused
tc-export CC
}
diff --git a/app-arch/pxz/Manifest b/app-arch/pxz/Manifest
index 5fd2bc75ba2c..bdad03e15579 100644
--- a/app-arch/pxz/Manifest
+++ b/app-arch/pxz/Manifest
@@ -1 +1 @@
-DIST pxz-5.0_pre20151029.tar.gz 12271 BLAKE2B 6ba2cb7629b0475761b59620375a2d0de7c6a3a61f7af20140e214383f737e046c45f0c602830c0331794fe1d38332d8d309ed0b8451e3a780ef1a2835de85e6 SHA512 d26bfdf9b70baf91c575e21824920cb42d0a9bd171254b99147a6e5e322ed3d1f7351a570358213431bdacdcbe6e7b22646a2dd2d7a127e167c8237bc4f3038a
+DIST pxz-5.0_pre20220509.tar.gz 12375 BLAKE2B 5d954d4cd1b139dc94a9ecc5aa99c19a1484812eb62fce089b8f33bfc0ce3ed3ad8053cdc58843c429a365439cd13b3a4b14ebc34de7f2a99deae7cd995cd4e6 SHA512 b1de877d2b8ee9ea5190af4c1a0dc97f7777c35a084137db6d86e23de99b332ea361a82ed995ac2ea12b7bf0670ae92a822235be3b19a1145b6cf5604074f960
diff --git a/app-arch/pxz/files/pxz-5.0_pre20220509-fix-xz-path.patch b/app-arch/pxz/files/pxz-5.0_pre20220509-fix-xz-path.patch
new file mode 100644
index 000000000000..76e1f1506157
--- /dev/null
+++ b/app-arch/pxz/files/pxz-5.0_pre20220509-fix-xz-path.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/887255
+https://github.com/jnovy/pxz/issues/34
+https://github.com/jnovy/pxz/pull/40
+
+From 20014a968d2330ac90f48fc2091e15a44cb1e759 Mon Sep 17 00:00:00 2001
+From: Tobias Faller <fallert@tf.uni-freiburg.de>
+Date: Tue, 20 Dec 2022 22:41:59 +0100
+Subject: [PATCH] Updated default path for xz binary
+
+--- a/pxz.c
++++ b/pxz.c
+@@ -43,7 +43,7 @@
+ #endif
+
+ #ifndef XZ_BINARY
+-#define XZ_BINARY "xz"
++#define XZ_BINARY "/usr/bin/xz"
+ #endif
+
+ #define BUFFSIZE 0x10000
+
diff --git a/app-arch/pxz/metadata.xml b/app-arch/pxz/metadata.xml
index 1d95e2b04b5d..c9d7bc294a84 100644
--- a/app-arch/pxz/metadata.xml
+++ b/app-arch/pxz/metadata.xml
@@ -1,15 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
-<email>chutzpah@gentoo.org</email>
-<name>Patrick McLean</name>
-</maintainer>
-<longdescription lang="en">
-Parallel XZ is a compression utility that takes advantage of running LZMA
-compression of different parts of an input file on multiple cores and
-processors simultaneously. Its primary goal is to utilize all resources
-to speed up compression time with minimal possible influence on compression
-ratio.
-</longdescription>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <longdescription lang="en">
+ Parallel XZ is a compression utility that takes advantage of running LZMA
+ compression of different parts of an input file on multiple cores and
+ processors simultaneously. Its primary goal is to utilize all resources
+ to speed up compression time with minimal possible influence on compression
+ ratio.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jnovy/pxz</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/pxz/pxz-5.0_pre20151029.ebuild b/app-arch/pxz/pxz-5.0_pre20151029.ebuild
deleted file mode 100644
index 1ae6092ecb65..000000000000
--- a/app-arch/pxz/pxz-5.0_pre20151029.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs vcs-snapshot
-
-DESCRIPTION="Parallel implementation of the XZ compression utility"
-HOMEPAGE="http://jnovy.fedorapeople.org/pxz/"
-SRC_URI="https://github.com/jnovy/pxz/archive/fcfea93957d96b7661d1439cf4b767ecfd341eed.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux"
-IUSE=""
-
-# needs the library from xz-utils
-# needs the libgomp library from gcc at runtime
-RDEPEND="app-arch/xz-utils
- sys-devel/gcc:*[openmp]"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- tc-check-openmp
- tc-export CC
- export BINDIR="${EPREFIX}"/usr/bin
- export MANDIR="${EPREFIX}"/usr/share/man
- default_src_prepare
-}
diff --git a/app-arch/pxz/pxz-5.0_pre20220509-r1.ebuild b/app-arch/pxz/pxz-5.0_pre20220509-r1.ebuild
new file mode 100644
index 000000000000..0968ba7b2f96
--- /dev/null
+++ b/app-arch/pxz/pxz-5.0_pre20220509-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs prefix vcs-snapshot
+
+PXZ_COMMIT="136e5c25daf545753329d7cee1b06ae482fb9c44"
+DESCRIPTION="Parallel implementation of the XZ compression utility"
+HOMEPAGE="https://jnovy.fedorapeople.org/pxz/"
+SRC_URI="https://github.com/jnovy/pxz/archive/${PXZ_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux"
+
+# Needs the library from xz-utils
+RDEPEND="app-arch/xz-utils"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.0_pre20220509-fix-xz-path.patch
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && tc-check-openmp
+}
+
+src_prepare() {
+ default
+
+ # bug #887255
+ eprefixify pxz.c
+
+ if use elibc_musl ; then
+ sed -i -e '/<error.h>/c\#define error(R,E,S,...) fprintf(stderr, S "\\n", ##__VA_ARGS__); exit(R)' pxz.c || die
+ fi
+}
+
+src_configure() {
+ tc-export CC
+ export BINDIR="${EPREFIX}"/usr/bin
+ export MANDIR="${EPREFIX}"/usr/share/man
+}
diff --git a/app-arch/pxz/pxz-9999.ebuild b/app-arch/pxz/pxz-9999.ebuild
deleted file mode 100644
index 24f23c3bd088..000000000000
--- a/app-arch/pxz/pxz-9999.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs flag-o-matic
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/jnovy/pxz.git"
- inherit git-r3
-else
- MY_PV=${PV/_}
- case ${MY_PV} in
- *beta?*) MY_PV="${MY_PV/beta/beta.}git" ;;
- esac
- MY_P="${PN}-${MY_PV}"
- SRC_URI="https://jnovy.fedorapeople.org/pxz/${MY_P}.tar.xz"
- KEYWORDS="~amd64 ~x86"
- S=${WORKDIR}/${MY_P/beta*/beta}
-fi
-
-DESCRIPTION="parallel LZMA compressor (no parallel decompression!)"
-HOMEPAGE="https://jnovy.fedorapeople.org/pxz/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE=""
-
-# needs the library from xz-utils
-# needs the libgomp library from gcc at runtime
-DEPEND="app-arch/xz-utils
- sys-devel/gcc:*[openmp]"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- tc-check-openmp
- tc-export CC
- export BINDIR="${EPREFIX}"/usr/bin
- export MANDIR="${EPREFIX}"/usr/share/man
- default_src_prepare
-}
diff --git a/app-arch/qpress/Manifest b/app-arch/qpress/Manifest
index 012e32d902a3..6d228f011e70 100644
--- a/app-arch/qpress/Manifest
+++ b/app-arch/qpress/Manifest
@@ -1 +1 @@
-DIST qpress-11-source.zip 26998 BLAKE2B 08dd943f248f7211e8588fbaf7a2c2eee988d33b17aebfb5f1178647d80314fde576caec9b4aab67d69689f5931d086f88fd51204c1df6d3abc2cca583830380 SHA512 986754cca8bb2cdcfc7e197f7e123c6b2da90db840642a6385f14613f49f7ec6b2c18944838405fe35d5382d71fcd5d69050a036dda4c5de2e588d144e16ea6b
+DIST qpress-20220819.tar.gz 25150 BLAKE2B e19a2bca747ec48507288b1b1ad8e053cfb35558f5936dff4ff83c548a3ab613a640813fc3b793e7acb1b65f371af414635d7e469e92c014b580efce4f84ee90 SHA512 f9cf4f87c25fdaa9b8ed12bbfb8d95c3036a7c5c1a0548042ba460b79787a83d5cd2ad93f2da84e5b6715ade5e137024541a3f29e076d4236d0507e2c604113c
diff --git a/app-arch/qpress/files/qpress-1.1-fix-build-system.patch b/app-arch/qpress/files/qpress-1.1-fix-build-system.patch
deleted file mode 100644
index b6f7c0f2841b..000000000000
--- a/app-arch/qpress/files/qpress-1.1-fix-build-system.patch
+++ /dev/null
@@ -1,7 +0,0 @@
---- a/makefile
-+++ b/makefile
-@@ -1,2 +1 @@
--g++: qpress.cpp aio.cpp quicklz.c utilities.cpp
-- g++ -O3 -o qpress qpress.cpp aio.cpp quicklz.c utilities.cpp -lpthread
-\ No newline at end of file
-+qpress: aio.o quicklz.o utilities.o
diff --git a/app-arch/qpress/files/qpress-1.1-fix-includes.patch b/app-arch/qpress/files/qpress-1.1-fix-includes.patch
deleted file mode 100644
index 51bfee465aa9..000000000000
--- a/app-arch/qpress/files/qpress-1.1-fix-includes.patch
+++ /dev/null
@@ -1,7 +0,0 @@
---- a/qpress.cpp
-+++ b/qpress.cpp
-@@ -1,3 +1,4 @@
-+#include <unistd.h>
- /*
- qpress - portable high-speed file archiver
- Copyright Lasse Reinhold 2006-2010
diff --git a/app-arch/qpress/files/qpress-20220819-fix-build-system.patch b/app-arch/qpress/files/qpress-20220819-fix-build-system.patch
new file mode 100644
index 000000000000..3fb5750eac9b
--- /dev/null
+++ b/app-arch/qpress/files/qpress-20220819-fix-build-system.patch
@@ -0,0 +1,39 @@
+From 1627b18fdf76e978bdd05b985eb6efb1286fa1da Mon Sep 17 00:00:00 2001
+From: Davide Cavalca <dcavalca@fedoraproject.org>
+Date: Thu, 24 Nov 2022 16:13:30 -0800
+Subject: [PATCH] Rework makefile to ease packaging
+
+---
+ makefile | 22 +++++++++++++++++-----
+ 1 file changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/makefile b/makefile
+index 4890f9d..349fbb2 100755
+--- a/makefile
++++ b/makefile
+@@ -1,9 +1,20 @@
+-PREFIX = /usr/local
++DESTDIR ?=
++PREFIX ?= /usr/local
++CXX ?= g++
++CXXFLAGS ?= -O3 -Wall -Wextra -Werror
++LDFLAGS ?=
+
+-g++: qpress.cpp aio.cpp quicklz.c utilities.cpp
+- g++ -O3 -o qpress -x c quicklz.c -x c++ qpress.cpp aio.cpp utilities.cpp -lpthread -Wall -Wextra -Werror
++qpress: qpress.cpp aio.cpp quicklz.c utilities.cpp
++ $(CXX) $(CXXFLAGS) -o qpress -x c quicklz.c -x c++ qpress.cpp aio.cpp utilities.cpp -lpthread $(LDFLAGS)
+
+ install: qpress
+- install -m 0755 qpress $(PREFIX)/bin
++ install -D -p -m 0755 -t $(DESTDIR)$(PREFIX)/bin qpress
+
+-.PHONY: install g++
++clean:
++ rm -f qpress
++
++all: qpress
++
++g++: qpress
++
++.PHONY: clean install
diff --git a/app-arch/qpress/metadata.xml b/app-arch/qpress/metadata.xml
index 49901e8a0d40..ff29f9711f94 100644
--- a/app-arch/qpress/metadata.xml
+++ b/app-arch/qpress/metadata.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>azamat.hackimov@gmail.com</email>
<name>Azamat H. Hackimov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">PierreLvx/qpress</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/qpress/qpress-1.1.ebuild b/app-arch/qpress/qpress-1.1.ebuild
deleted file mode 100644
index 21904daf9eb3..000000000000
--- a/app-arch/qpress/qpress-1.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="A portable file archiver using QuickLZ algorithm"
-HOMEPAGE="http://www.quicklz.com/"
-SRC_URI="http://www.quicklz.com/${PN}-${PV/./}-source.zip"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.1-fix-includes.patch
- "${FILESDIR}"/${PN}-1.1-fix-build-system.patch
-)
-
-src_configure() {
- tc-export CC CXX
- export LDLIBS="-lpthread"
-}
-
-src_install() {
- dobin ${PN}
-}
diff --git a/app-arch/qpress/qpress-20220819.ebuild b/app-arch/qpress/qpress-20220819.ebuild
new file mode 100644
index 000000000000..c7327d69a530
--- /dev/null
+++ b/app-arch/qpress/qpress-20220819.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A portable file archiver using QuickLZ algorithm"
+HOMEPAGE="https://github.com/PierreLvx/qpress"
+SRC_URI="https://github.com/PierreLvx/qpress/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-1 GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-build-system.patch"
+)
+
+src_install() {
+ dobin qpress
+ dodoc readme.md
+}
diff --git a/app-arch/rar/Manifest b/app-arch/rar/Manifest
index 51c372a1a027..aefd06729f16 100644
--- a/app-arch/rar/Manifest
+++ b/app-arch/rar/Manifest
@@ -1,6 +1,3 @@
-DIST rarlinux-5.9.1_p20200625.tar.gz 606675 BLAKE2B fe8f26d422bc816fbba27405f9d2e4063e9af6e136ca4c270bb5274a67e99d9a7c97250b05e6041f3ed27517398b0500aad765a1f599474ff08ebb6bacf5b0a3 SHA512 3ed37adda5f5b2f5502ab2e549614dad2848157321a31174d7259aaf77cc773c6398eb0e19ee6597536c58a938289a587e7db9681e6c47c906a5307c2d362147
-DIST rarlinux-6.0_beta1_p20201022.tar.gz 609438 BLAKE2B ab4793431f5d1d1570e1046868004722a39614ca4c3174d8f0cb2c67db0d138565e524deace2319dbbb853e3d4b33f35ae583596c6f77f52724e48484787c776 SHA512 668d0a4fa610aa71d5b69cace186c8d33683337bb88aa5e7f5ffeb5a314b666277205f0d6962cf6203dc3bfe0c2ec4fe2b38ede90754709f89479168bdd050d8
-DIST rarlinux-x64-5.9.1_p20200625.tar.gz 595595 BLAKE2B 68eb24da7ecb2fe8a2be68bc3c3397df85490f4cd5517a2dc5390ad0dafbdd0a04d15968276657d600cf6c127cd8f52b74e920f7ee9b86b7083b9edbf0a57141 SHA512 6e0aec1642118331bfe79a35fa654f7d5143e61c0315375fa21d862a3941b672c58eaed4da69b8ea23a024aaafcfd02a277251391e59220b845847d4b3b82562
-DIST rarlinux-x64-6.0_beta1_p20201022.tar.gz 598338 BLAKE2B a0af6342f71a6ae448ce8b3fdc49dfd022337d74364d17f8135eb3c32d3d778857e9a4ef7e819d336581f477713a647be22377ced2d50faba4ab4a0c6e14f49c SHA512 312c1a59236cb32df69462bead45df5fa4f8180a8c075c964d508326027f2182cc8a1e31347fcb7570ff18d105a8df7abb5adf463a34f41c8f3e091cfba7f0fc
-DIST winrar-x64-5.9.1_p20200625.exe 3246712 BLAKE2B c0616e600b11aaa524154b9b0108ab1a62e09cdd27a968b5bf9fa6d742800c9006ee7655df39511f31b24506dd03eb431c3e016ea63a5fe8fff702ccd8d3b358 SHA512 da7a85d56f1ed4dd6204e51297175c90349a26896b223bf210055a0c38f315c59f9d9b8368d5c279049443467d962c72bad48a3c62c1d80f2260f8ecd4d17db6
-DIST winrar-x64-6.0_beta1_p20201022.exe 3334400 BLAKE2B 61615920c38671649fe44b3c50f0427c82ba36cc5d610eeeeda5ec8acbc465b2e2a9573875a3efc5082bef24b3e1f1490e47eaf47d0a326aaade8ed3c3231cad SHA512 26bcfef84aa20eaed415b088e5a69fd2833baf3f660c38e58f26a04e6754335603f0d5e89e802b02acbef43ecbe43b45f810f5682c5857fbad1689c44c80bc9a
+DIST rarlinux-x32-700.tar.gz 739081 BLAKE2B 3f0d18ba3c9ff6b606bbddd3aafcc70209d87a1aa08877fa8ee62e4c28a56b0dd0d38304d273abb708fa1a9fb1d2264df0dc7eb2ac6dbd1264b250df40f141c5 SHA512 a1f1d1f203ae2f98949346ad331a27ce2d120bf28f289fc42d286fae5c9392af033a4ff72fbe078a130b9267eb42e9739db35aa98ce07f4d97566299aa233934
+DIST rarlinux-x64-700.tar.gz 730268 BLAKE2B 6a3c4890232b6bdc24a6e321bff66c8a41c3c64b7da8dbcd40714de647edabb32f8719be882335895a09453f36e247b7ce96edf8089f8fa6ea08489d69eb7813 SHA512 988b755d1b52051f5d4115a64f598e5d6a6a9d1756e8136a00a159001199bf684c4961245c1010f0414e174f61964e1e3f32f437810708cd77742b9b89946166
+DIST winrar-x64-700.exe 3911632 BLAKE2B f2191937e1e3d0938f0ca2c56467c838415401a20a0966efad050e9fde5fe7fc6e05694c98fd06daa6fe4d7c03f588e60d456d8d510c849929a52dab36d6a10a SHA512 bc94f526d4dd751a44071dd6f540f2957d96f5c6500d7e5bb41ec6581bb0a584a6bb91fe13f7a1d9c7749c4601b1fe95f2a12a204b73bdc9a37c83cff7ac35c3
diff --git a/app-arch/rar/metadata.xml b/app-arch/rar/metadata.xml
index 89f2e872e662..950f254e370b 100644
--- a/app-arch/rar/metadata.xml
+++ b/app-arch/rar/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>whissi@gentoo.org</email>
- <name>Thomas Deutschmann</name>
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
</maintainer>
<use>
- <flag name="all_sfx">
+ <flag name="all-sfx">
Install all SFX (Self-Extracting) files rather than just the native
format (allows creation of Windows EXEs on Linux ELF systems)
</flag>
diff --git a/app-arch/rar/rar-6.0_beta1_p20201022.ebuild b/app-arch/rar/rar-6.0_beta1_p20201022.ebuild
deleted file mode 100644
index 7623c5c7ee5d..000000000000
--- a/app-arch/rar/rar-6.0_beta1_p20201022.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DESCRIPTION="RAR compressor/uncompressor"
-HOMEPAGE="https://rarlab.com/"
-URI_x86="https://mirror.whissi.de/distfiles/rar/rarlinux-${PV}.tar.gz"
-URI_amd64="https://mirror.whissi.de/distfiles/rar/rarlinux-x64-${PV}.tar.gz"
-URI_w64="https://mirror.whissi.de/distfiles/rar/winrar-x64-${PV}.exe"
-SRC_URI="x86? ( ${URI_x86} )
- amd64? ( ${URI_amd64} )
- all_sfx? (
- ${URI_x86}
- ${URI_amd64}
- ${URI_w64}
- )"
-
-LICENSE="RAR BSD BSD-2"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE="all_sfx"
-RESTRICT="mirror bindist"
-
-DEPEND="all_sfx? ( app-arch/unrar )"
-RDEPEND="sys-libs/glibc"
-
-S="${WORKDIR}/${PN}"
-
-QA_FLAGS_IGNORED="opt/rar/default.sfx
- opt/rar/default-elf32.sfx
- opt/rar/default-elf64.sfx
- opt/rar/default-win32.sfx
- opt/rar/default-win64.sfx
- opt/rar/WinCon.SFX
- opt/rar/WinCon64.SFX
- opt/rar/Zip.SFX
- opt/rar/Zip64.SFX
- opt/rar/unrar
- opt/rar/rar"
-QA_PRESTRIPPED=${QA_FLAGS_IGNORED}
-
-src_unpack() {
- local _file
-
- for _file in ${A}; do
- if [[ "${_file}" == rarli* ]]; then
- if [[ "${_file}" =~ x64 ]]; then
- if ! use amd64; then
- continue
- fi
-
- unpack "${_file}"
- elif [[ ! "${_file}" =~ x64 ]]; then
- if ! use x86; then
- continue
- fi
-
- unpack "${_file}"
- else
- die "Unknown SRC file '${_file}'!"
- fi
- fi
- done
-
- rm -f "${S}"/license.txt
-
- if use all_sfx ; then
- mkdir sfx
- cd sfx
- for _file in ${A}; do
- if [[ "${_file}" == rarli* ]]; then
- unpack "${_file}"
- if [[ "${_file}" =~ x64 ]]; then
- mv rar/default.sfx default-elf64.sfx || die
- else
- mv rar/default.sfx default-elf32.sfx || die
- fi
- elif [[ "${_file}" == winrar* ]]; then
- ln -s "${DISTDIR}"/${_file} w64.rar || die
- unpack ./w64.rar
- mv Default.SFX default-win32.sfx || die
- mv Default64.SFX default-win64.sfx || die
- else
- die "Unknown SFX file '${_file}'!"
- fi
- done
- fi
-}
-
-src_compile() { :; }
-
-src_install() {
- exeinto /opt/rar
- doexe rar unrar
-
- dodir /opt/bin
- dosym ../rar/rar /opt/bin/rar
- dosym ../rar/unrar /opt/bin/unrar
-
- insinto /opt/rar
- if use all_sfx ; then
- doins "${WORKDIR}"/sfx/*.{sfx,SFX}
- else
- doins default.sfx
- fi
- doins rarfiles.lst
- dodoc *.txt
-}
diff --git a/app-arch/rar/rar-5.9.1_p20200625.ebuild b/app-arch/rar/rar-7.00.ebuild
index b90959c703e9..cefa88191bb3 100644
--- a/app-arch/rar/rar-5.9.1_p20200625.ebuild
+++ b/app-arch/rar/rar-7.00.ebuild
@@ -1,44 +1,52 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
+
+MY_PV="${PV/./}"
+URI_AMD64="https://www.rarlab.com/rar/rarlinux-x64-${MY_PV}.tar.gz"
+URI_X86="https://www.rarlab.com/rar/rarlinux-x32-${MY_PV}.tar.gz"
+URI_WIN64="https://www.rarlab.com/rar/winrar-x64-${MY_PV}.exe"
+
+inherit unpacker
DESCRIPTION="RAR compressor/uncompressor"
-HOMEPAGE="https://rarlab.com/"
-URI_x86="https://mirror.whissi.de/distfiles/rar/rarlinux-${PV}.tar.gz"
-URI_amd64="https://mirror.whissi.de/distfiles/rar/rarlinux-x64-${PV}.tar.gz"
-URI_w64="https://mirror.whissi.de/distfiles/rar/winrar-x64-${PV}.exe"
-SRC_URI="x86? ( ${URI_x86} )
- amd64? ( ${URI_amd64} )
- all_sfx? (
- ${URI_x86}
- ${URI_amd64}
- ${URI_w64}
- )"
-
-LICENSE="RAR BSD BSD-2"
+HOMEPAGE="https://www.rarlab.com/"
+SRC_URI="
+ all-sfx? (
+ ${URI_AMD64}
+ ${URI_X86}
+ ${URI_WIN64}
+ )
+ amd64? ( ${URI_AMD64} )
+ x86? ( ${URI_X86} )
+"
+S="${WORKDIR}/${PN}"
+
+LICENSE="BSD BSD-2 RAR"
SLOT="0"
KEYWORDS="-* amd64 x86"
-IUSE="all_sfx"
-RESTRICT="mirror bindist"
+IUSE="all-sfx"
+RESTRICT="bindist mirror"
-DEPEND="all_sfx? ( app-arch/unrar )"
RDEPEND="sys-libs/glibc"
+BDEPEND="all-sfx? ( app-arch/unrar )"
-S="${WORKDIR}/${PN}"
+DOCS=( "acknow.txt" "rar.txt" "readme.txt" "whatsnew.txt" )
-QA_FLAGS_IGNORED="opt/rar/default.sfx
+QA_PREBUILT="
+ opt/rar/default.sfx
opt/rar/default-elf32.sfx
opt/rar/default-elf64.sfx
opt/rar/default-win32.sfx
opt/rar/default-win64.sfx
+ opt/rar/unrar
+ opt/rar/rar
opt/rar/WinCon.SFX
opt/rar/WinCon64.SFX
opt/rar/Zip.SFX
opt/rar/Zip64.SFX
- opt/rar/unrar
- opt/rar/rar"
-QA_PRESTRIPPED=${QA_FLAGS_IGNORED}
+"
src_unpack() {
local _file
@@ -63,9 +71,7 @@ src_unpack() {
fi
done
- rm -f "${S}"/license.txt
-
- if use all_sfx ; then
+ if use all-sfx ; then
mkdir sfx
cd sfx
for _file in ${A}; do
@@ -78,9 +84,9 @@ src_unpack() {
fi
elif [[ "${_file}" == winrar* ]]; then
ln -s "${DISTDIR}"/${_file} w64.rar || die
- unpack ./w64.rar
- mv Default.SFX default-win32.sfx || die
- mv Default64.SFX default-win64.sfx || die
+ unpack_rar ./w64.rar
+ mv Default.SFX default-win64.sfx || die
+ mv Default32.SFX default-win32.sfx || die
else
die "Unknown SFX file '${_file}'!"
fi
@@ -94,16 +100,21 @@ src_install() {
exeinto /opt/rar
doexe rar unrar
- dodir /opt/bin
- dosym ../rar/rar /opt/bin/rar
- dosym ../rar/unrar /opt/bin/unrar
-
insinto /opt/rar
- if use all_sfx ; then
+ doins rarfiles.lst
+
+ if use all-sfx; then
doins "${WORKDIR}"/sfx/*.{sfx,SFX}
else
doins default.sfx
fi
- doins rarfiles.lst
- dodoc *.txt
+
+ dodir /opt/bin
+ dosym ../rar/rar /opt/bin/rar
+ dosym ../rar/unrar /opt/bin/unrar
+
+ docinto html
+ dodoc order.htm
+
+ einstalldocs
}
diff --git a/app-arch/rpm/Manifest b/app-arch/rpm/Manifest
index 08fa264efdf5..1598162f1521 100644
--- a/app-arch/rpm/Manifest
+++ b/app-arch/rpm/Manifest
@@ -1,2 +1,2 @@
-DIST rpm-4.14.2.1.tar.bz2 4156574 BLAKE2B 2eb0cf621eecef7d8977d28d52be922156ceb64b14d2aefda0f5a927b90cf3d3e9c055d773e05ed52422254397153b79557dc94bdb43ca28a2ea126153a43c1f SHA512 0aad457f91918904c15649a1764ce7cbfaf38e083678031286e866f7997be0435a6b7b73596706d97e9263cff7b4df4a3150b142d81e6e3fddbfcf67bd83f990
-DIST rpm-4.16.0.tar.bz2 4341683 BLAKE2B 5161e5dcc6d9a1f1d4b8e44740fb368050b808fd9e8b8276fb17b530a4642e1b9ad104b5a30c0071215aef7f823eeab10988dd41f73af1c52d575529c374b5eb SHA512 177119c3ac3d48980db55bb4ba0fdbb2a911968e5efc690bfa8cc343f850fc90531cc0dee6dd8e45d2b14f0d951ced35bd8893d24011b7f270745d281ddf4e3d
+DIST rpm-4.18.1.tar.bz2 6396363 BLAKE2B 4bc582bdc34a89d83346a8e18133c4f1846f2e8741c85ae2d0fd3398166e5a5d81ed86869e34700d3ea414fbf8ccf6c918692e865b956b1e6b70830b64cd323e SHA512 0ede2138b9b4c3b50d7e914cf82655507fcc207ba67804c749ea17560002976cb26b95801e9138a51589b60459494a991213a1131dbef5af2eca9b5050a4f29c
+DIST rpm-4.19.1.1.tar.bz2 5849649 BLAKE2B 66ed845007f3767fd92e2384962927b93cef7b825b8ea60f81f0a4b51b9d6a09d1cbec1668226fa85de675347d52635cb25c4d11204ada0eed6c898425b21536 SHA512 3364c453c29903c144a3680ceca7a17426eb085c288b6313fb7e857a42a5e0a965f623882e0f58e633f8b8770e839d9df9f7653d99c73759af5c89d0a981908d
diff --git a/app-arch/rpm/files/rpm-4.11.0-autotools.patch b/app-arch/rpm/files/rpm-4.11.0-autotools.patch
deleted file mode 100644
index 2a2dcb129de3..000000000000
--- a/app-arch/rpm/files/rpm-4.11.0-autotools.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -urN rpm-4.11.0.1.old/configure.ac rpm-4.11.0.1/configure.ac
---- rpm-4.11.0.1.old/configure.ac 2013-03-26 18:38:35.137667450 +0100
-+++ rpm-4.11.0.1/configure.ac 2013-03-26 18:44:08.632673258 +0100
-@@ -824,10 +810,6 @@
-
- AC_SUBST(OBJDUMP)
-
--if test "$with_external_db" = no; then
-- AC_CONFIG_SUBDIRS(db3)
--fi
--
- AM_CONDITIONAL([WITH_INTERNAL_DB],[test "$with_external_db" = no])
- AM_CONDITIONAL([DOXYGEN],[test "$DOXYGEN" != no])
- AM_CONDITIONAL([HACKINGDOCS],[test "$with_hackingdocs" = yes])
diff --git a/app-arch/rpm/files/rpm-4.16.0-autotools.patch b/app-arch/rpm/files/rpm-4.16.0-autotools.patch
deleted file mode 100644
index 9b1f71ad86e5..000000000000
--- a/app-arch/rpm/files/rpm-4.16.0-autotools.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -uNr rpm-4.16.0.ORIG/configure.ac rpm-4.16.0/configure.ac
---- rpm-4.16.0.ORIG/configure.ac 2020-10-01 11:02:21.605485875 +0100
-+++ rpm-4.16.0/configure.ac 2020-10-01 11:05:34.077157904 +0100
-@@ -552,9 +552,6 @@
-
- AM_CONDITIONAL([BDB], [test "x$have_bdb" != "xno"])
- AM_CONDITIONAL([WITH_INTERNAL_DB],[test "x$have_bdb" = "xinternal"])
--if test "x$have_bdb" = "xinternal"; then
-- AC_CONFIG_SUBDIRS(db3)
--fi
-
-
- #=================
diff --git a/app-arch/rpm/files/rpm-4.16.0-libdir.patch b/app-arch/rpm/files/rpm-4.17.0-libdir.patch
index c9f5f297233b..5bff26b71290 100644
--- a/app-arch/rpm/files/rpm-4.16.0-libdir.patch
+++ b/app-arch/rpm/files/rpm-4.17.0-libdir.patch
@@ -1,7 +1,6 @@
-diff -uNr rpm-4.16.0.ORIG/configure.ac rpm-4.16.0/configure.ac
---- rpm-4.16.0.ORIG/configure.ac 2020-10-01 11:08:43.780842602 +0100
-+++ rpm-4.16.0/configure.ac 2020-10-01 11:09:03.533705353 +0100
-@@ -935,13 +935,7 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -865,13 +865,7 @@ AC_ARG_WITH([rundir],
AC_DEFINE_UNQUOTED([RUNDIR],["${RUNDIR}"],[run-time variable directory])
AC_SUBST(RUNDIR)
@@ -16,19 +15,18 @@ diff -uNr rpm-4.16.0.ORIG/configure.ac rpm-4.16.0/configure.ac
AC_SUBST(RPMCONFIGDIR)
AC_SUBST(OBJDUMP)
-diff -uNr rpm-4.16.0.ORIG/rpm.am rpm-4.16.0/rpm.am
---- rpm-4.16.0.ORIG/rpm.am 2020-10-01 11:08:43.743842859 +0100
-+++ rpm-4.16.0/rpm.am 2020-10-01 11:09:03.533705353 +0100
-@@ -1,10 +1,8 @@
+--- a/rpm.am
++++ b/rpm.am
+@@ -1,10 +1,10 @@
# Internal binaries
--## HACK: It probably should be $(libexecdir)/rpm or $(libdir)/rpm
+ ## HACK: It probably should be $(libexecdir)/rpm or $(libdir)/rpm
-rpmlibexecdir = $(prefix)/lib/rpm
+rpmlibexecdir = $(pkglibexecdir)
# Host independent config files
--## HACK: it probably should be $(datadir)/rpm
+ ## HACK: it probably should be $(datadir)/rpm
-rpmconfigdir = $(prefix)/lib/rpm
+rpmconfigdir = $(pkglibexecdir)
# Libtool version (current-revision-age) for all our libraries
- rpm_version_info = 10:0:1
+ rpm_version_info = 11:0:2
diff --git a/app-arch/rpm/files/rpm-4.18.1-musl-nls.patch b/app-arch/rpm/files/rpm-4.18.1-musl-nls.patch
new file mode 100644
index 000000000000..7d1fde28bacf
--- /dev/null
+++ b/app-arch/rpm/files/rpm-4.18.1-musl-nls.patch
@@ -0,0 +1,42 @@
+https://bugs.gentoo.org/888954
+https://github.com/rpm-software-management/rpm/commit/f401979a4c4829d68e9614860644bdb74b6dda66
+
+From da222f0d82721d17e57d491d2749a4bc44754b9d Mon Sep 17 00:00:00 2001
+From: Takuya Wakazono <pastalian46@gmail.com>
+Date: Thu, 18 Jan 2024 18:41:11 +0900
+Subject: [PATCH] Don't use _nl_msg_cat_cntr if __GLIC__ is not defined
+
+musl doesn't need to use libintl from GNU gettext because it has its
+own NLS implementation. Assuming _nl_msg_cat_cntr exists breaks the
+build against the musl system.
+--- a/lib/tagexts.c
++++ b/lib/tagexts.c
+@@ -532,7 +532,7 @@ static int filerequireTag(Header h, rpmtd td, headerGetFlags hgflags)
+
+ /* I18N look aside diversions */
+
+-#if defined(ENABLE_NLS)
++#if defined(ENABLE_NLS) && (defined(__GLIBC__) || !defined(__linux__))
+ extern int _nl_msg_cat_cntr; /* XXX GNU gettext voodoo */
+ #endif
+ static const char * const language = "LANGUAGE";
+@@ -569,7 +569,9 @@ static int i18nTag(Header h, rpmTag tag, rpmtd td, headerGetFlags hgflags)
+ /* change to en_US for msgkey -> msgid resolution */
+ langval = getenv(language);
+ (void) setenv(language, "en_US", 1);
++#if defined(__GLIBC__) || !defined(__linux__)
+ ++_nl_msg_cat_cntr;
++#endif
+
+ msgid = NULL;
+ for (domain = dstring; domain != NULL; domain = de) {
+@@ -584,7 +586,9 @@ static int i18nTag(Header h, rpmTag tag, rpmtd td, headerGetFlags hgflags)
+ (void) setenv(language, langval, 1);
+ else
+ unsetenv(language);
++#if defined(__GLIBC__) || !defined(__linux__)
+ ++_nl_msg_cat_cntr;
++#endif
+
+ if (domain && msgid) {
+ td->data = dgettext(domain, msgid);
diff --git a/app-arch/rpm/files/rpm-4.19.0-libdir.patch b/app-arch/rpm/files/rpm-4.19.0-libdir.patch
new file mode 100644
index 000000000000..9899827c985e
--- /dev/null
+++ b/app-arch/rpm/files/rpm-4.19.0-libdir.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c164e9c52..5738c821f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -32,7 +32,7 @@ option(WITH_FSVERITY "Build with fsverity support" OFF)
+ option(WITH_IMAEVM "Build with IMA support" OFF)
+ option(WITH_FAPOLICYD "Build with fapolicyd support" ON)
+
+-set(RPM_CONFIGDIR "${CMAKE_INSTALL_PREFIX}/lib/rpm" CACHE PATH "rpm home")
++set(RPM_CONFIGDIR "${CMAKE_INSTALL_PREFIX}/libexec/rpm" CACHE PATH "rpm home")
+ set(RPM_VENDOR "vendor" CACHE STRING "rpm vendor string")
+
+ # Emulate libtool versioning. Before a public release:
diff --git a/app-arch/rpm/files/rpm-4.19.1.1-musl-compat.patch b/app-arch/rpm/files/rpm-4.19.1.1-musl-compat.patch
new file mode 100644
index 000000000000..441689febd5d
--- /dev/null
+++ b/app-arch/rpm/files/rpm-4.19.1.1-musl-compat.patch
@@ -0,0 +1,17 @@
+musl doesn't implement GLOB_BRACE, simply disable it.
+
+https://bugs.gentoo.org/922286
+https://github.com/rpm-software-management/rpm/issues/2844
+--- a/rpmio/rpmglob.c
++++ b/rpmio/rpmglob.c
+@@ -33,6 +33,10 @@
+
+ #include "debug.h"
+
++#ifndef GLOB_BRACE
++#define GLOB_BRACE 0
++#endif
++
+ /* Return 1 if pattern contains a magic char, see glob(7) for a list */
+ static int ismagic(const char *pattern)
+ {
diff --git a/app-arch/rpm/files/rpm-4.8.1-clang.patch b/app-arch/rpm/files/rpm-4.8.1-clang.patch
new file mode 100644
index 000000000000..714fbc09b534
--- /dev/null
+++ b/app-arch/rpm/files/rpm-4.8.1-clang.patch
@@ -0,0 +1,52 @@
+https://github.com/rpm-software-management/rpm/commit/6ad8a71407b173b6c50d389f01edd8a4aecd6807
+--- a/lib/fsm.c
++++ b/lib/fsm.c
+@@ -1015,27 +1015,28 @@
+ }
+
+ setmeta:
+- /* Special files require path-based ops */
+- int mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode);
+- if (!rc && fd == -1 && mayopen) {
+- int flags = O_RDONLY;
+- /* Only follow safe symlinks, and never on temporary files */
+- if (fp->suffix)
+- flags |= AT_SYMLINK_NOFOLLOW;
+- fd = fsmOpenat(di.dirfd, fp->fpath, flags,
+- S_ISDIR(fp->sb.st_mode));
+- if (fd < 0)
+- rc = RPMERR_OPEN_FAILED;
+- }
++ {
++ /* Special files require path-based ops */
++ int mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode);
++ if (!rc && fd == -1 && mayopen) {
++ int flags = O_RDONLY;
++ /* Only follow safe symlinks, and never on temporary files */
++ if (fp->suffix)
++ flags |= AT_SYMLINK_NOFOLLOW;
++ fd = fsmOpenat(di.dirfd, fp->fpath, flags,
++ S_ISDIR(fp->sb.st_mode));
++ if (fd < 0)
++ rc = RPMERR_OPEN_FAILED;
++ }
++ if (!rc && fp->setmeta) {
++ rc = fsmSetmeta(fd, di.dirfd, fp->fpath,
++ fi, plugins, fp->action,
++ &fp->sb, nofcaps);
++ }
+
+- if (!rc && fp->setmeta) {
+- rc = fsmSetmeta(fd, di.dirfd, fp->fpath,
+- fi, plugins, fp->action,
+- &fp->sb, nofcaps);
+- }
+-
+- if (fd != firstlinkfile)
+- fsmClose(&fd);
++ if (fd != firstlinkfile)
++ fsmClose(&fd);
++ }
+ }
+
+ /* Notify on success. */
diff --git a/app-arch/rpm/files/rpm-4.9.1.2-libdir.patch b/app-arch/rpm/files/rpm-4.9.1.2-libdir.patch
deleted file mode 100644
index 221926494411..000000000000
--- a/app-arch/rpm/files/rpm-4.9.1.2-libdir.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff -urN rpm-4.9.1.2.old/configure.ac rpm-4.9.1.2/configure.ac
---- rpm-4.9.1.2.old/configure.ac 2012-04-19 12:18:27.584725220 +0200
-+++ rpm-4.9.1.2/configure.ac 2012-04-19 12:34:50.302722933 +0200
-@@ -846,13 +846,7 @@
- AC_SUBST(RPMCANONGNU)
- AC_DEFINE_UNQUOTED([RPMCANONVENDOR],["${RPMCANONVENDOR}"],[canonical vendor])
-
--if test X"$prefix" = XNONE ; then
-- usrprefix="$ac_default_prefix"
--else
-- usrprefix=$prefix
--fi
--
--RPMCONFIGDIR="`echo ${usrprefix}/lib/rpm`"
-+RPMCONFIGDIR="`echo ${libexecdir}/rpm/`"
- AC_SUBST(RPMCONFIGDIR)
-
- AC_SUBST(OBJDUMP)
-diff -urN rpm-4.9.1.2.old/rpm.am rpm-4.9.1.2/rpm.am
---- rpm-4.9.1.2.old/rpm.am 2012-04-19 12:18:27.584725220 +0200
-+++ rpm-4.9.1.2/rpm.am 2012-04-19 12:24:49.035724332 +0200
-@@ -1,7 +1,5 @@
- # Internal binaries
--## HACK: It probably should be $(libexecdir)/rpm or $(libdir)/rpm
--rpmlibexecdir = $(prefix)/lib/rpm
-+rpmlibexecdir = $(pkglibexecdir)
-
- # Host independent config files
--## HACK: it probably should be $(datadir)/rpm
--rpmconfigdir = $(prefix)/lib/rpm
-+rpmconfigdir = $(pkglibexecdir)
diff --git a/app-arch/rpm/metadata.xml b/app-arch/rpm/metadata.xml
index 19acc8e397fe..8e808eda79fe 100644
--- a/app-arch/rpm/metadata.xml
+++ b/app-arch/rpm/metadata.xml
@@ -1,11 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>chainsaw@gentoo.org</email>
- <name>Tony Vroon</name>
+ <maintainer type="person" proxied="yes">
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">rpm-software-management/rpm</remote-id>
</upstream>
+ <use>
+ <flag name="sequoia">Use <pkg>app-crypt/rpm-sequoia</pkg> instead of the deprecated internal parser</flag>
+ </use>
</pkgmetadata>
diff --git a/app-arch/rpm/rpm-4.14.2.1-r1.ebuild b/app-arch/rpm/rpm-4.14.2.1-r1.ebuild
deleted file mode 100644
index f4a6a46bc5ea..000000000000
--- a/app-arch/rpm/rpm-4.14.2.1-r1.ebuild
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit autotools flag-o-matic perl-module python-single-r1 eapi7-ver
-
-DESCRIPTION="Red Hat Package Management Utils"
-HOMEPAGE="https://rpm.org
- https://github.com/rpm-software-management/rpm"
-SRC_URI="http://ftp.rpm.org/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 ~sparc x86 ~amd64-linux ~x86-linux"
-
-# Tests are broken. See bug 657500
-RESTRICT="test"
-
-IUSE="acl caps doc dbus lua nls python selinux test zstd"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="!app-arch/rpm5
- app-arch/libarchive
- >=sys-libs/db-4.5:*
- >=sys-libs/zlib-1.2.3-r1
- >=app-arch/bzip2-1.0.1
- >=dev-libs/popt-1.7
- >=app-crypt/gnupg-1.2
- dbus? ( sys-apps/dbus )
- dev-libs/elfutils
- virtual/libintl
- >=dev-lang/perl-5.8.8
- dev-libs/nss
- python? ( ${PYTHON_DEPS} )
- nls? ( virtual/libintl )
- lua? ( >=dev-lang/lua-5.1.0:*[deprecated] )
- acl? ( virtual/acl )
- caps? ( >=sys-libs/libcap-2.0 )
- zstd? ( app-arch/zstd )
-"
-DEPEND="${CDEPEND}
- nls? ( sys-devel/gettext )
- doc? ( app-doc/doxygen )
- virtual/pkgconfig
- test? ( sys-apps/fakechroot )
-"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-rpm )
-"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- eapply "${FILESDIR}"/${PN}-4.11.0-autotools.patch
- eapply "${FILESDIR}"/${PN}-4.8.1-db-path.patch
- eapply "${FILESDIR}"/${PN}-4.9.1.2-libdir.patch
-
- # fix #356769
- sed -i 's:%{_var}/tmp:/var/tmp:' macros.in || die "Fixing tmppath failed"
- # fix #492642
- sed -i "s:@__PYTHON@:${PYTHON}:" macros.in || die "Fixing %__python failed"
-
- eapply_user
-
- eautoreconf
-
- # Prevent automake maintainer mode from kicking in (#450448).
- touch -r Makefile.am preinstall.am
-}
-
-src_configure() {
- append-cppflags -I"${EPREFIX}/usr/include/nss" -I"${EPREFIX}/usr/include/nspr"
- econf \
- --without-selinux \
- --with-external-db \
- --with-crypto=nss \
- $(use_enable python) \
- $(use_with doc hackingdocs) \
- $(use_enable nls) \
- $(use_enable dbus inhibit-plugin) \
- $(use_with lua) \
- $(use_with caps cap) \
- $(use_with acl) \
- $(use_enable zstd zstd $(usex zstd yes no))
-}
-
-src_install() {
- default
-
- # remove la files
- find "${ED}" -name '*.la' -delete || die
-
- # fix symlinks to /bin/rpm (#349840)
- for binary in rpmquery rpmverify;do
- ln -sf rpm "${ED}"/usr/bin/${binary} || die
- done
-
- if ! use nls; then
- rm -rf "${ED}"/usr/share/man/?? || die
- fi
-
- keepdir /usr/src/rpm/{SRPMS,SPECS,SOURCES,RPMS,BUILD}
-
- dodoc CREDITS README*
- if use doc; then
- for docname in hacking librpm; do
- docinto "html/${docname}"
- dodoc -r "doc/${docname}/html/."
- done
- fi
-
- # Fix perllocal.pod file collision
- perl_delete_localpod
-
- use python && python_optimize
-}
-
-src_test() {
- # Known to fail with FEATURES=usersandbox (bug #657500):
- if has usersandbox $FEATURES ; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- emake check
-}
-
-pkg_postinst() {
- if [[ -f "${EROOT}"/var/lib/rpm/Packages ]] ; then
- einfo "RPM database found... Rebuilding database (may take a while)..."
- "${EROOT}"/usr/bin/rpmdb --rebuilddb --root="${EROOT}" || die
- else
- einfo "No RPM database found... Creating database..."
- "${EROOT}"/usr/bin/rpmdb --initdb --root="${EROOT}" || die
- fi
-}
diff --git a/app-arch/rpm/rpm-4.16.0.ebuild b/app-arch/rpm/rpm-4.16.0.ebuild
deleted file mode 100644
index 67132e47a629..000000000000
--- a/app-arch/rpm/rpm-4.16.0.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit autotools flag-o-matic perl-module python-single-r1
-
-DESCRIPTION="Red Hat Package Management Utils"
-HOMEPAGE="https://rpm.org
- https://github.com/rpm-software-management/rpm"
-SRC_URI="http://ftp.rpm.org/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-
-# Tests are broken. See bug 657500
-RESTRICT="test"
-
-IUSE="acl caps doc dbus lua nls python selinux test +zstd"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="!app-arch/rpm5
- app-arch/libarchive
- >=sys-libs/db-4.5:*
- >=sys-libs/zlib-1.2.3-r1
- >=app-arch/bzip2-1.0.1
- >=dev-libs/popt-1.7
- >=app-crypt/gnupg-1.2
- dbus? ( sys-apps/dbus )
- dev-libs/elfutils
- virtual/libintl
- >=dev-lang/perl-5.8.8
- dev-libs/nss
- python? ( ${PYTHON_DEPS} )
- nls? ( virtual/libintl )
- lua? ( dev-lang/lua:5.2 )
- acl? ( virtual/acl )
- caps? ( >=sys-libs/libcap-2.0 )
- zstd? ( app-arch/zstd )
-"
-DEPEND="${CDEPEND}
- nls? ( sys-devel/gettext )
- doc? ( app-doc/doxygen )
- virtual/pkgconfig
- test? ( sys-apps/fakechroot )
-"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-rpm )
-"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- eapply "${FILESDIR}"/${P}-autotools.patch
- eapply "${FILESDIR}"/${PN}-4.8.1-db-path.patch
- eapply "${FILESDIR}"/${P}-libdir.patch
-
- # fix #356769
- sed -i 's:%{_var}/tmp:/var/tmp:' macros.in || die "Fixing tmppath failed"
- # fix #492642
- sed -i "s:@__PYTHON@:${PYTHON}:" macros.in || die "Fixing %__python failed"
-
- eapply_user
-
- eautoreconf
-
- # Prevent automake maintainer mode from kicking in (#450448).
- touch -r Makefile.am preinstall.am
-}
-
-src_configure() {
- append-cppflags -I"${EPREFIX}/usr/include/nss" -I"${EPREFIX}/usr/include/nspr"
- econf \
- --without-selinux \
- --with-crypto=nss \
- $(use_enable python) \
- $(use_enable nls) \
- $(use_enable dbus inhibit-plugin) \
- $(use_with lua) \
- $(use_with caps cap) \
- $(use_with acl) \
- $(use_enable zstd zstd $(usex zstd yes no))
-}
-
-src_install() {
- default
-
- # remove la files
- find "${ED}" -name '*.la' -delete || die
-
- # fix symlinks to /bin/rpm (#349840)
- for binary in rpmquery rpmverify;do
- ln -sf rpm "${ED}"/usr/bin/${binary} || die
- done
-
- if ! use nls; then
- rm -rf "${ED}"/usr/share/man/?? || die
- fi
-
- keepdir /usr/src/rpm/{SRPMS,SPECS,SOURCES,RPMS,BUILD}
-
- dodoc CREDITS README*
- if use doc; then
- for docname in librpm; do
- docinto "html/${docname}"
- dodoc -r "doc/${docname}/html/."
- done
- fi
-
- # Fix perllocal.pod file collision
- perl_delete_localpod
-
- use python && python_optimize
-}
-
-src_test() {
- # Known to fail with FEATURES=usersandbox (bug #657500):
- if has usersandbox $FEATURES ; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- emake check
-}
-
-pkg_postinst() {
- if [[ -f "${EROOT}"/var/lib/rpm/Packages ]] ; then
- einfo "RPM database found... Rebuilding database (may take a while)..."
- "${EROOT}"/usr/bin/rpmdb --rebuilddb --root="${EROOT}/" || die
- else
- einfo "No RPM database found... Creating database..."
- "${EROOT}"/usr/bin/rpmdb --initdb --root="${EROOT}/" || die
- fi
-}
diff --git a/app-arch/rpm/rpm-4.18.1.ebuild b/app-arch/rpm/rpm-4.18.1.ebuild
new file mode 100644
index 000000000000..5054bab122a8
--- /dev/null
+++ b/app-arch/rpm/rpm-4.18.1.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{3,4} )
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit autotools lua-single perl-module python-single-r1 toolchain-funcs
+
+DESCRIPTION="Red Hat Package Management Utils"
+HOMEPAGE="https://rpm.org/ https://github.com/rpm-software-management/rpm"
+SRC_URI="
+ https://ftp.osuosl.org/pub/rpm/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2
+ http://ftp.rpm.org/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2
+"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="acl audit caps +berkdb doc dbus nls openmp python readline selinux +sqlite test +zstd"
+REQUIRED_USE="
+ ${LUA_REQUIRED_USE}
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+# Tests are broken. See bug #657500
+RESTRICT="test"
+
+DEPEND="
+ ${LUA_DEPS}
+ !app-arch/rpm5
+ app-arch/libarchive:=
+ >=app-arch/bzip2-1.0.1
+ app-arch/xz-utils
+ >=app-crypt/gnupg-1.2
+ >=dev-lang/perl-5.8.8
+ dev-libs/elfutils
+ dev-libs/libgcrypt:=
+ >=dev-libs/popt-1.7
+ sys-apps/file
+ >=sys-libs/zlib-1.2.3-r1
+ virtual/libintl
+ acl? ( virtual/acl )
+ audit? ( sys-process/audit )
+ caps? ( >=sys-libs/libcap-2.0 )
+ dbus? ( sys-apps/dbus )
+ readline? ( sys-libs/readline:= )
+ sqlite? ( dev-db/sqlite:3 )
+ python? ( ${PYTHON_DEPS} )
+ nls? ( virtual/libintl )
+ zstd? ( app-arch/zstd:= )
+"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+ nls? ( sys-devel/gettext )
+ test? ( sys-apps/fakechroot )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-rpm )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.8.1-db-path.patch
+ "${FILESDIR}"/${PN}-4.8.1-clang.patch
+ "${FILESDIR}"/${PN}-4.17.0-libdir.patch
+ "${FILESDIR}"/${PN}-4.18.1-musl-nls.patch
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ lua-single_pkg_setup
+
+ use python && python-single-r1_pkg_setup
+
+ # bug #779769
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ default
+
+ # bug #356769
+ sed -i 's:%{_var}/tmp:/var/tmp:' macros.in || die "Fixing tmppath failed"
+ # bug #492642
+ sed -i "s:@__PYTHON@:${PYTHON}:" macros.in || die "Fixing %__python failed"
+
+ # Prevent automake maintainer mode from kicking in (bug #450448).
+ #touch -r Makefile.am preinstall.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # rpm no longer supports berkdb, but has readonly support.
+ # https://github.com/rpm-software-management/rpm/commit/4290300e24c5ab17c615b6108f38438e31eeb1d0
+ local myeconfargs=(
+ --enable-libelf
+ --without-selinux
+ --disable-inhibit-plugin
+ --with-crypto=libgcrypt
+ $(use_enable berkdb bdb-ro)
+ $(use_enable python)
+ $(use_enable nls)
+ $(use_enable openmp)
+ $(use_enable dbus inhibit-plugin)
+ $(use_enable sqlite)
+ $(use_with caps cap)
+ $(use_with acl)
+ $(use_with audit)
+ $(use_with readline)
+ $(use_enable zstd zstd $(usex zstd yes no))
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # Known to fail with FEATURES=usersandbox (bug #657500)
+ if has usersandbox ${FEATURES} ; then
+ ewarn "You are emerging ${P} with 'usersandbox' enabled." \
+ "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
+ fi
+
+ emake check
+}
+
+src_install() {
+ default
+
+ # Remove la files
+ find "${ED}" -name '*.la' -delete || die
+
+ # Fix symlinks to /bin/rpm (bug #349840)
+ for binary in rpmquery rpmverify; do
+ ln -sf rpm "${ED}"/usr/bin/${binary} || die
+ done
+
+ if ! use nls; then
+ rm -rf "${ED}"/usr/share/man/?? || die
+ fi
+
+ keepdir /usr/src/rpm/{SRPMS,SPECS,SOURCES,RPMS,BUILD}
+
+ dodoc CREDITS README*
+ if use doc; then
+ local docname
+ for docname in librpm; do
+ docinto "html/${docname}"
+ dodoc -r "docs/${docname}/html/."
+ done
+ fi
+
+ # Fix perllocal.pod file collision
+ perl_delete_localpod
+
+ use python && python_optimize
+}
+
+pkg_postinst() {
+ if [[ -f "${EROOT}"/var/lib/rpm/Packages ]] ; then
+ einfo "RPM database found... Rebuilding database (may take a while)..."
+ "${EROOT}"/usr/bin/rpmdb --rebuilddb --root="${EROOT}/" || die
+ else
+ einfo "No RPM database found... Creating database..."
+ "${EROOT}"/usr/bin/rpmdb --initdb --root="${EROOT}/" || die
+ fi
+}
diff --git a/app-arch/rpm/rpm-4.19.1.1.ebuild b/app-arch/rpm/rpm-4.19.1.1.ebuild
new file mode 100644
index 000000000000..30fa81d1ff98
--- /dev/null
+++ b/app-arch/rpm/rpm-4.19.1.1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_MAKEFILE_GENERATOR=emake
+LUA_COMPAT=( lua5-{3,4} )
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit cmake lua-single python-single-r1 toolchain-funcs
+
+DESCRIPTION="The RPM Package Manager"
+HOMEPAGE="https://rpm.org/ https://github.com/rpm-software-management/rpm"
+SRC_URI="
+ https://ftp.osuosl.org/pub/rpm/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2
+ http://ftp.rpm.org/releases/rpm-$(ver_cut 1-2).x/${P}.tar.bz2
+"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~riscv ~s390 ~sparc ~x86"
+IUSE="acl audit caps +berkdb doc dbus nls openmp python readline selinux +sequoia +sqlite"
+REQUIRED_USE="
+ ${LUA_REQUIRED_USE}
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+# Tests run against a Fedora container image, which needs to be pulled.
+RESTRICT="test"
+
+DEPEND="
+ ${LUA_DEPS}
+ >=app-arch/bzip2-1.0.1
+ app-arch/libarchive:=
+ app-arch/xz-utils
+ app-arch/zstd:=
+ >=app-crypt/gnupg-1.2
+ >=dev-lang/perl-5.8.8
+ dev-libs/elfutils
+ >=dev-libs/popt-1.7
+ sys-apps/file
+ sys-libs/readline:=
+ >=sys-libs/zlib-1.2.3-r1
+ acl? ( virtual/acl )
+ audit? ( sys-process/audit )
+ caps? ( >=sys-libs/libcap-2.0 )
+ dbus? ( sys-apps/dbus )
+ nls? ( virtual/libintl )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:= )
+ sequoia? ( app-crypt/rpm-sequoia )
+ !sequoia? ( dev-libs/libgcrypt:= )
+ sqlite? ( dev-db/sqlite:3 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+ nls? ( sys-devel/gettext )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-rpm )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.19.0-libdir.patch
+ "${FILESDIR}"/${P}-musl-compat.patch
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ lua-single_pkg_setup
+
+ use python && python-single-r1_pkg_setup
+
+ # bug #779769
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ cmake_src_prepare
+}
+
+src_configure() {
+ # rpm no longer supports berkdb, but has readonly support.
+ # https://github.com/rpm-software-management/rpm/commit/4290300e24c5ab17c615b6108f38438e31eeb1d0
+ local mycmakeargs=(
+ -DENABLE_TESTSUITE=OFF
+ -DWITH_FAPOLICYD=OFF
+ -DWITH_SELINUX=OFF
+ -DENABLE_BDB_RO=$(usex berkdb)
+ -DENABLE_NLS=$(usex nls)
+ -DENABLE_OPENMP=$(usex openmp)
+ -DENABLE_PYTHON=$(usex python)
+ -DENABLE_SQLITE=$(usex sqlite)
+ -DWITH_ACL=$(usex acl)
+ -DWITH_AUDIT=$(usex audit)
+ -DWITH_CAP=$(usex caps)
+ -DWITH_DBUS=$(usex dbus)
+ -DWITH_INTERNAL_OPENPGP=$(usex sequoia OFF ON)
+ -DWITH_READLINE=$(usex readline)
+ $(cmake_use_find_package doc Doxygen)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ emake -C "${BUILD_DIR}" check
+}
+
+src_install() {
+ cmake_src_install
+
+ # Remove pre-built API docs.
+ use doc || rm -rf "${ED}/usr/share/doc/${PF}" || die
+
+ dodoc CREDITS README
+
+ keepdir /usr/src/rpm/{SRPMS,SPECS,SOURCES,RPMS,BUILD}
+
+ use python && python_optimize
+}
+
+pkg_postinst() {
+ if [[ -f "${EROOT}"/var/lib/rpm/rpmdb.sqlite ]] ; then
+ einfo "RPM database found... Rebuilding database (may take a while)..."
+ "${EROOT}"/usr/bin/rpmdb --rebuilddb --root="${EROOT}/" || die
+ else
+ einfo "No RPM database found... Creating database..."
+ "${EROOT}"/usr/bin/rpmdb --initdb --root="${EROOT}/" || die
+ fi
+}
diff --git a/app-arch/rpm2targz/Manifest b/app-arch/rpm2targz/Manifest
index 718d9bb3a4e2..e187af558200 100644
--- a/app-arch/rpm2targz/Manifest
+++ b/app-arch/rpm2targz/Manifest
@@ -1 +1 @@
-DIST rpm2targz-9.0.0.5g.tar.xz 5740 BLAKE2B 88c903119fc19bd1d2eec1ccc7616e05594465a0595b75be8ab8095b5404420a8a09ba8fb176ee21efa5df3b12d4436b60119a637f70910cc020bcb3dcc3833b SHA512 a595d23581bd396a3a00b6eae4cf6edca1c65b52510a02c7b162afc3d89f45026663a271279bb519741b4a35a0ee653fbfb124c5a7d6d921b466dc9236cbf549
+DIST rpm2targz-2021.03.16.tar.xz 6500 BLAKE2B fac1122fbfcab2b982ea6f5369b95b30814d438d0f853d846ef62a33ceaaf81d44b2a743bc20a3ef46defb63331bff06f9a268a5a805ecd899b11f86ec414bc2 SHA512 efd677642fbf73d4b8c90f338eea20452052f2bdc2b7a3a61c0e9215676575b5063aad733ec3ea4840baf281eb332db8f6fdeef600cc8a8aa7e208f2fa8ee599
diff --git a/app-arch/rpm2targz/files/rpm2targz-9.0.0.5g-add-zstd-support.patch b/app-arch/rpm2targz/files/rpm2targz-9.0.0.5g-add-zstd-support.patch
deleted file mode 100644
index cc0c46aee033..000000000000
--- a/app-arch/rpm2targz/files/rpm2targz-9.0.0.5g-add-zstd-support.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Origin: https://bugs.gentoo.org/719208
-Author: Rafał Mużyło
-
---- a/rpmoffset.c
-+++ b/rpmoffset.c
-@@ -58,11 +58,13 @@ int is_magic_lzma(const char *buf)
- static const unsigned char magic_gzip[] = { '\037', '\213', '\010' };
- static const unsigned char magic_bzip2[] = { 'B', 'Z', 'h' };
- static const unsigned char magic_xz[] = { 0xFD, '7', 'z', 'X', 'Z', 0x00 };
-+static const unsigned char magic_zstd[] = { 0x28, 0xB5, 0x2F, 0xFD };
- static const magic_t magics[] = {
- #define DECLARE_MAGIC_T(t) { .type = #t, .magic = magic_##t, .len = sizeof(magic_##t), },
- DECLARE_MAGIC_T(gzip)
- DECLARE_MAGIC_T(bzip2)
- DECLARE_MAGIC_T(xz)
-+ DECLARE_MAGIC_T(zstd)
- #undef DECLARE_MAGIC_T
- };
- #define MAGIC_SIZE_MIN 3
-
diff --git a/app-arch/rpm2targz/metadata.xml b/app-arch/rpm2targz/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/app-arch/rpm2targz/metadata.xml
+++ b/app-arch/rpm2targz/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/rpm2targz/rpm2targz-2021.03.16.ebuild b/app-arch/rpm2targz/rpm2targz-2021.03.16.ebuild
new file mode 100644
index 000000000000..d602205ff2a2
--- /dev/null
+++ b/app-arch/rpm2targz/rpm2targz-2021.03.16.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+DESCRIPTION="Convert a .rpm file to a .tar.gz archive"
+HOMEPAGE="http://www.slackware.com/config/packages.php"
+SRC_URI="mirror://gentoo/${P}.tar.xz
+ https://dev.gentoo.org/~vapier/dist/${P}.tar.xz"
+
+LICENSE="BSD-1"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-alternatives/cpio"
+
+src_configure() {
+ tc-export CC
+}
+
+src_install() {
+ emake DESTDIR="${D}" prefix="${EPREFIX}"/usr install
+ einstalldocs
+}
diff --git a/app-arch/rpm2targz/rpm2targz-9.0.0.5g-r2.ebuild b/app-arch/rpm2targz/rpm2targz-9.0.0.5g-r2.ebuild
deleted file mode 100644
index 1eee219709f9..000000000000
--- a/app-arch/rpm2targz/rpm2targz-9.0.0.5g-r2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Convert a .rpm file to a .tar.gz archive"
-HOMEPAGE="http://www.slackware.com/config/packages.php"
-SRC_URI="mirror://gentoo/${P}.tar.xz"
-
-LICENSE="BSD-1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=""
-RDEPEND="app-arch/cpio
- app-arch/zstd"
-
-PATCHES=( "${FILESDIR}"/${PN}-9.0.0.5g-add-zstd-support.patch )
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${ED}" install # need explicit install line #397835
- dodoc *.README*
-}
diff --git a/app-arch/rzip/files/rzip-2.1-configure-clang16.patch b/app-arch/rzip/files/rzip-2.1-configure-clang16.patch
new file mode 100644
index 000000000000..b2749ed45785
--- /dev/null
+++ b/app-arch/rzip/files/rzip-2.1-configure-clang16.patch
@@ -0,0 +1,13 @@
+See also: https://bugzilla.redhat.com/show_bug.cgi?id=2144458
+
+--- a/configure.in
++++ b/configure.in
+@@ -36,7 +36,7 @@ AC_CACHE_CHECK([for large file support],rzip_cv_HAVE_LARGE_FILES,[
+ AC_TRY_RUN([
+ #include <stdio.h>
+ #include <sys/types.h>
+-main() { return (sizeof(off_t) == 4); }],
++int main(void) { return (sizeof(off_t) == 4); }],
+ rzip_cv_HAVE_LARGE_FILES=yes,
+ rzip_cv_HAVE_LARGE_FILES=no,
+ rzip_cv_HAVE_LARGE_FILES=cross)])
diff --git a/app-arch/rzip/metadata.xml b/app-arch/rzip/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/app-arch/rzip/metadata.xml
+++ b/app-arch/rzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/app-arch/rzip/rzip-2.1-r3.ebuild b/app-arch/rzip/rzip-2.1-r5.ebuild
index 915c6deeef2b..cf8b6d722684 100644
--- a/app-arch/rzip/rzip-2.1-r3.ebuild
+++ b/app-arch/rzip/rzip-2.1-r5.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit autotools
@@ -11,20 +11,19 @@ SRC_URI="https://rzip.samba.org/ftp/rzip/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 hppa ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
+KEYWORDS="amd64 ~hppa ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
RDEPEND="app-arch/bzip2:="
-DEPEND="${DEPEND}"
+DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-2.1-darwin.patch
"${FILESDIR}"/${PN}-2.1-CVE-2017-8364.patch
+ "${FILESDIR}"/${PN}-2.1-configure-clang16.patch
)
src_prepare() {
default
- mv configure.{in,ac} || die
eautoreconf
}
@@ -33,7 +32,7 @@ pkg_postinst() {
ewarn "compression of large files it didn't set the right file size, so"
ewarn "if you have any reason to believe that your archive was compressed "
ewarn "with an old Gentoo rzip, please refer to "
- ewarn " https://bugs.gentoo.org/show_bug.cgi?id=217552 "
+ ewarn " https://bugs.gentoo.org/217552"
ewarn "for the rzip-handle-broken-archive.patch patch to rescue your"
ewarn "data."
ewarn
diff --git a/app-arch/sharutils/metadata.xml b/app-arch/sharutils/metadata.xml
index 92fa5463f2b2..f9c1b4ac617d 100644
--- a/app-arch/sharutils/metadata.xml
+++ b/app-arch/sharutils/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<upstream>
+ <remote-id type="savannah">sharutils</remote-id>
<remote-id type="cpe">cpe:/a:gnu:sharutils</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/sharutils/sharutils-4.15.2-r1.ebuild b/app-arch/sharutils/sharutils-4.15.2-r1.ebuild
deleted file mode 100644
index 00e6532922b5..000000000000
--- a/app-arch/sharutils/sharutils-4.15.2-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils flag-o-matic
-
-MY_P="${P/_/-}"
-DESCRIPTION="Tools to deal with shar archives"
-HOMEPAGE="https://www.gnu.org/software/sharutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls"
-
-DEPEND="app-arch/xz-utils
- sys-apps/texinfo
- nls? ( >=sys-devel/gettext-0.10.35 )"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- default
-
- epatch "${FILESDIR}/sharutils-4.15.2-glibc228.patch"
- epatch "${FILESDIR}/sharutils-4.15.2-CVE-2018-1000097.patch"
- epatch "${FILESDIR}/sharutils-4.15.2-gcc-10.patch"
-
- # Upstream is aware but thinks this isn't a bug/problem in sharutils itself
- # See http://lists.gnu.org/archive/html/bug-gnu-utils/2013-10/msg00011.html
- append-cflags $(test-flags-CC -Wno-error=format-security)
-}
-
-src_configure() {
- strip-linguas -u po
- econf $(use_enable nls)
-}
diff --git a/app-arch/sharutils/sharutils-4.15.2-r2.ebuild b/app-arch/sharutils/sharutils-4.15.2-r2.ebuild
index 2aaa0c101dea..c9304129d203 100644
--- a/app-arch/sharutils/sharutils-4.15.2-r2.ebuild
+++ b/app-arch/sharutils/sharutils-4.15.2-r2.ebuild
@@ -1,26 +1,25 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-inherit eutils flag-o-matic
+inherit flag-o-matic strip-linguas
MY_P="${P/_/-}"
DESCRIPTION="Tools to deal with shar archives"
HOMEPAGE="https://www.gnu.org/software/sharutils/"
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+S="${WORKDIR}"/${MY_P}
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="nls"
DEPEND="app-arch/xz-utils
sys-apps/texinfo
nls? ( >=sys-devel/gettext-0.10.35 )"
-S=${WORKDIR}/${MY_P}
-
PATCHES=(
"${FILESDIR}"/${PN}-4.15.2-glibc228.patch
"${FILESDIR}"/${PN}-4.15.2-CVE-2018-1000097.patch
diff --git a/app-arch/snappy/Manifest b/app-arch/snappy/Manifest
index 0995e291b707..284181c5cc40 100644
--- a/app-arch/snappy/Manifest
+++ b/app-arch/snappy/Manifest
@@ -1 +1,2 @@
-DIST snappy-1.1.8.tar.gz 1096137 BLAKE2B e21f2ea23727f118920b7f67981354194f12d1d61eaa18eb1cb2f4285fabafdd221b88cf1e3b3261634f65469a714d3efe6b218c0b1e9d41639cdeb21097d75e SHA512 efe18ff1b3edda1b4b6cefcbc6da8119c05d63afdbf7a784f3490353c74dced76baed7b5f1aa34b99899729192b9d657c33c76de4b507a51553fa8001ae75c1c
+DIST snappy-1.1.10.tar.gz 1105312 BLAKE2B 5195335fb1883974d290e7dca2b6d928bde2b183f3f61bca9da28855b39fd9a4ee1c24014322d238d2ec94f3a3a55fd43110c88283e85865272226e11cbb4834 SHA512 3578597f1d4ec09104ce0296b825b013590351230dfe56c635081fd282ce7a13a34caf2c283ac77bd24065e2d27af6db068d1f84b98cec2fd39a0e37a0d77070
+DIST snappy-1.2.0.tar.gz 1107265 BLAKE2B 327b60ea032ceb004c5f5e36a0013dc2a44258ec303d0701cf23446904b83e72a66b7e59866a7331c7751a08ce6ec6b871bc056efa6eeb86733d4640569d8072 SHA512 5b3b4e73ff24295885ff9f3d75ccb090e6c7dba40d4965f0892163aa9876296e61590d62023a32d750949268af8ce89df93273b02179d5b3a55de00966a3ae0a
diff --git a/app-arch/snappy/files/snappy-1.1.7-0001-cmake-Add-missing-linking-to-GTEST_LIBRARIES.patch b/app-arch/snappy/files/snappy-1.1.7-0001-cmake-Add-missing-linking-to-GTEST_LIBRARIES.patch
deleted file mode 100644
index f4fdd4727488..000000000000
--- a/app-arch/snappy/files/snappy-1.1.7-0001-cmake-Add-missing-linking-to-GTEST_LIBRARIES.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 1c9f699a6275f085ad710c9ae940e096ce552452 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Mon, 31 Jul 2017 20:49:22 +0200
-Subject: [PATCH] cmake: Add missing linking to GTEST_LIBRARIES
-
-Since the snappy_unittest target uses gtest routines (when available),
-it needs to link to gtest explicitly. Otherwise, the build fails due
-to unavailable gtest symbols.
----
- CMakeLists.txt | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3f534b1..3a44aa9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -119,6 +119,9 @@ if(SNAPPY_BUILD_TESTS)
- )
- target_compile_definitions(snappy_unittest PRIVATE -DHAVE_CONFIG_H)
-- target_link_libraries(snappy_unittest snappy ${GFLAGS_LIBRARIES})
-+ target_link_libraries(snappy_unittest
-+ snappy
-+ ${GFLAGS_LIBRARIES}
-+ ${GTEST_LIBRARIES})
-
- if(HAVE_LIBZ)
- target_link_libraries(snappy_unittest z)
---
-2.14.1
-
diff --git a/app-arch/snappy/files/snappy-1.1.9-clang-werror.patch b/app-arch/snappy/files/snappy-1.1.9-clang-werror.patch
new file mode 100644
index 000000000000..e89a8305e731
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.1.9-clang-werror.patch
@@ -0,0 +1,16 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -66,13 +66,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra")
+ endif(NOT CMAKE_CXX_FLAGS MATCHES "-Wextra")
+
+- # Use -Werror for clang only.
+- if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+- if(NOT CMAKE_CXX_FLAGS MATCHES "-Werror")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
+- endif(NOT CMAKE_CXX_FLAGS MATCHES "-Werror")
+- endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+-
+ # Disable C++ exceptions.
+ string(REGEX REPLACE "-fexceptions" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
diff --git a/app-arch/snappy/files/snappy-1.1.9_external_gtest.patch b/app-arch/snappy/files/snappy-1.1.9_external_gtest.patch
new file mode 100644
index 000000000000..8aa4c1eabd22
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.1.9_external_gtest.patch
@@ -0,0 +1,34 @@
+From 9c1283f6022647a6ea39c1388321d6029fcdf80c Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Wed, 5 May 2021 21:19:22 +0300
+Subject: [PATCH] Use external GTest framework
+
+---
+ CMakeLists.txt | 11 ++---------
+ 1 file changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 672561e..fc830fe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -291,15 +291,8 @@ if(SNAPPY_BUILD_TESTS)
+ set(build_gmock ON)
+
+ # This project is tested using GoogleTest.
+- add_subdirectory("third_party/googletest")
+-
+- # GoogleTest triggers a missing field initializers warning.
+- if(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+- set_property(TARGET gtest
+- APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+- set_property(TARGET gmock
+- APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+- endif(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
++ find_package(GTest REQUIRED)
++ include(GoogleTest)
+
+ add_executable(snappy_unittest "")
+ target_sources(snappy_unittest
+--
+2.26.3
+
diff --git a/app-arch/snappy/files/snappy-1.1.9_remove-no-rtti.patch b/app-arch/snappy/files/snappy-1.1.9_remove-no-rtti.patch
new file mode 100644
index 000000000000..16528b59457c
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.1.9_remove-no-rtti.patch
@@ -0,0 +1,35 @@
+From 516fdcca6606502e2d562d20c01b225c8d066739 Mon Sep 17 00:00:00 2001
+From: holmes1412 <liyingxin1412@gmail.com>
+Date: Fri, 28 May 2021 21:46:53 +0800
+Subject: [PATCH] remove Disable-RTTI flags for the convenient of derivation
+
+---
+ CMakeLists.txt | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 672561e..31afaa0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,10 +51,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ string(REGEX REPLACE "/EH[a-z]+" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHs-c-")
+ add_definitions(-D_HAS_EXCEPTIONS=0)
+-
+- # Disable RTTI.
+- string(REGEX REPLACE "/GR" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-")
+ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ # Use -Wall for clang and gcc.
+ if(NOT CMAKE_CXX_FLAGS MATCHES "-Wall")
+@@ -76,10 +72,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ # Disable C++ exceptions.
+ string(REGEX REPLACE "-fexceptions" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
+-
+- # Disable RTTI.
+- string(REGEX REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
+ endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+
+ # BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to make
diff --git a/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch b/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch
new file mode 100644
index 000000000000..6d929821ba0b
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch
@@ -0,0 +1,46 @@
+From 4e6c67832f53b126d1e54b9398b88f23e75846f3 Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Thu, 11 Apr 2024 10:05:30 +0300
+Subject: [PATCH 1/3] Use external GTest suite
+
+---
+ CMakeLists.txt | 22 ++--------------------
+ 1 file changed, 2 insertions(+), 20 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 85afe58..e23d2ca 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -319,27 +319,9 @@ endif(SNAPPY_BUILD_TESTS OR SNAPPY_BUILD_BENCHMARKS)
+ if(SNAPPY_BUILD_TESTS)
+ enable_testing()
+
+- # Prevent overriding the parent project's compiler/linker settings on Windows.
+- set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
+- set(install_gtest OFF)
+- set(install_gmock OFF)
+- set(build_gmock ON)
+-
+ # This project is tested using GoogleTest.
+- add_subdirectory("third_party/googletest")
+-
+- # GoogleTest triggers a missing field initializers warning.
+- if(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+- set_property(TARGET gtest
+- APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+- set_property(TARGET gmock
+- APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+- endif(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+-
+- if(SNAPPY_HAVE_NO_IMPLICIT_INT_FLOAT_CONVERSION)
+- set_property(TARGET gtest
+- APPEND PROPERTY COMPILE_OPTIONS -Wno-implicit-int-float-conversion)
+- endif(SNAPPY_HAVE_NO_IMPLICIT_INT_FLOAT_CONVERSION)
++ find_package(GTest REQUIRED)
++ include(GoogleTest)
+
+ add_executable(snappy_unittest "")
+ target_sources(snappy_unittest
+--
+2.43.2
+
diff --git a/app-arch/snappy/files/snappy-1.2.0_no-werror.patch b/app-arch/snappy/files/snappy-1.2.0_no-werror.patch
new file mode 100644
index 000000000000..813ff7a59136
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.2.0_no-werror.patch
@@ -0,0 +1,24 @@
+From 8a262c4de10c4a7e07db41779fd7ca1565d92631 Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Thu, 11 Apr 2024 10:06:47 +0300
+Subject: [PATCH 2/3] Don't use -Werror
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -66,13 +66,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra")
+ endif(NOT CMAKE_CXX_FLAGS MATCHES "-Wextra")
+
+- # Use -Werror for clang only.
+- if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+- if(NOT CMAKE_CXX_FLAGS MATCHES "-Werror")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
+- endif(NOT CMAKE_CXX_FLAGS MATCHES "-Werror")
+- endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+-
+ # Disable sign comparison warnings. Matches upcoming Bazel setup.
+ if(NOT CMAKE_CXX_FLAGS MATCHES "-Wno-sign-compare")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-sign-compare")
+--
+2.43.2
+
diff --git a/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch b/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch
new file mode 100644
index 000000000000..dcfeae45cfbb
--- /dev/null
+++ b/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch
@@ -0,0 +1,32 @@
+From 012ff3ef652027abd1a422268cf9f164b386f340 Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Thu, 11 Apr 2024 10:07:45 +0300
+Subject: [PATCH 3/3] Don't disable RTTI
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,10 +51,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ string(REGEX REPLACE "/EH[a-z]+" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHs-c-")
+ add_definitions(-D_HAS_EXCEPTIONS=0)
+-
+- # Disable RTTI.
+- string(REGEX REPLACE "/GR" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-")
+ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ # Use -Wall for clang and gcc.
+ if(NOT CMAKE_CXX_FLAGS MATCHES "-Wall")
+@@ -88,10 +84,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+ # Disable C++ exceptions.
+ string(REGEX REPLACE "-fexceptions" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
+-
+- # Disable RTTI.
+- string(REGEX REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
+ endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+
+ # BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to make
+--
+2.43.2
+
diff --git a/app-arch/snappy/metadata.xml b/app-arch/snappy/metadata.xml
index e5215ea6cd04..f228393d37be 100644
--- a/app-arch/snappy/metadata.xml
+++ b/app-arch/snappy/metadata.xml
@@ -1,15 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type='person'>
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
+ <maintainer type="person" proxied="yes">
+ <email>azamat.hackimov@gmail.com</email>
+ <name>Azamat H. Hackimov</name>
</maintainer>
- <longdescription lang="en">Snappy is a compression/decompression library. It does not aim for
- maximum compression, or compatibility with any other compression
- library; instead, it aims for very high speeds and reasonable
- compression.</longdescription>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription lang="en">Snappy is a compression/decompression library.
+ It does not aim for maximum compression, or compatibility with any
+ other compression library; instead, it aims for very high speeds and
+ reasonable compression.</longdescription>
<upstream>
+ <remote-id type="cpe">cpe:/a:google:snappy</remote-id>
<remote-id type="github">google/snappy</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/snappy/snappy-1.1.10-r1.ebuild b/app-arch/snappy/snappy-1.1.10-r1.ebuild
new file mode 100644
index 000000000000..83cd13e6ac21
--- /dev/null
+++ b/app-arch/snappy/snappy-1.1.10-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="A high-speed compression/decompression library by Google"
+HOMEPAGE="https://github.com/google/snappy"
+SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+# ${PV%%.*}.FUDGE where FUDGE is incremented if ABI is broken without a new SONAME
+# Please use abidiff on bumps.
+SLOT="0/${PV%%.*}.1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2 test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-cpp/gtest )"
+
+DOCS=( format_description.txt framing_format.txt NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.1.9_external_gtest.patch"
+ "${FILESDIR}/${PN}-1.1.9-clang-werror.patch"
+ "${FILESDIR}/${PN}-1.1.9_remove-no-rtti.patch"
+)
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD=14 # Latest gtest needs -std=c++14 or newer
+ -DSNAPPY_BUILD_TESTS=$(usex test)
+ -DSNAPPY_REQUIRE_AVX=$(usex cpu_flags_x86_avx)
+ -DSNAPPY_REQUIRE_AVX2=$(usex cpu_flags_x86_avx2)
+ -DSNAPPY_BUILD_BENCHMARKS=OFF
+ # Options below are related to benchmarking, that we disable.
+ -DHAVE_LIBZ=NO
+ -DHAVE_LIBLZO2=NO
+ -DHAVE_LIBLZ4=NO
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # run tests directly to get verbose output
+ cd "${S}" || die
+ "${BUILD_DIR}"/snappy_unittest || die
+}
diff --git a/app-arch/snappy/snappy-1.1.8.ebuild b/app-arch/snappy/snappy-1.1.8.ebuild
deleted file mode 100644
index 9f4dd1f9c58e..000000000000
--- a/app-arch/snappy/snappy-1.1.8.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-inherit cmake-multilib
-
-DESCRIPTION="A high-speed compression/decompression library by Google"
-HOMEPAGE="https://github.com/google/snappy"
-SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0/${PV%%.*}"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 ~sparc x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# all test dependencies are optional:
-# - gflags-2.2 is supposedly needed for command-line option parsing
-# but it's a huge hack and does not work,
-# - gtest probably gives nicer output,
-# - compression libraries are used for benchmarks which we do not run.
-DEPEND="test? ( dev-cpp/gtest )"
-
-# AUTHORS is useless, ChangeLog is stale
-DOCS=( format_description.txt framing_format.txt NEWS README.md )
-
-src_prepare() {
- local PATCHES=(
- "${FILESDIR}"/snappy-1.1.7-0001-cmake-Add-missing-linking-to-GTEST_LIBRARIES.patch
- )
-
- # command-line option parsing does not work at all, so just force
- # it off
- sed -i -e '/run_microbenchmarks/s:true:false:' snappy-test.cc || die
-
- cmake_src_prepare
-}
-
-multilib_src_configure() {
- # TODO: would be nice to make unittest build conditional
- # but it is not a priority right now
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
-
- # use gtest for tests only
- -DCMAKE_DISABLE_FIND_PACKAGE_GTest=$(usex '!test')
- # gflags does not work anyway
- -DCMAKE_DISABLE_FIND_PACKAGE_Gflags=ON
-
- # we do not want to run benchmarks, and those are only used
- # for benchmarks
- -DHAVE_LIBZ=NO
- -DHAVE_LIBLZO2=NO
- )
- cmake_src_configure
-}
-
-multilib_src_test() {
- # run tests directly to get verbose output
- cd "${S}" || die
- "${BUILD_DIR}"/snappy_unittest || die
-}
diff --git a/app-arch/snappy/snappy-1.2.0-r1.ebuild b/app-arch/snappy/snappy-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..a2331f1ef08a
--- /dev/null
+++ b/app-arch/snappy/snappy-1.2.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="A high-speed compression/decompression library by Google"
+HOMEPAGE="https://github.com/google/snappy"
+SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+# ${PV%%.*}.FUDGE where FUDGE is incremented if ABI is broken without a new SONAME
+# Please use abidiff on bumps.
+SLOT="0/${PV%%.*}.2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2 test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-cpp/gtest )"
+
+DOCS=( format_description.txt framing_format.txt NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.2.0_external-gtest.patch"
+ "${FILESDIR}/${PN}-1.2.0_no-werror.patch"
+ "${FILESDIR}/${PN}-1.2.0_remove-no-rtti.patch"
+)
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD=14 # Latest gtest needs -std=c++14 or newer
+ -DSNAPPY_BUILD_TESTS=$(usex test)
+ -DSNAPPY_REQUIRE_AVX=$(usex cpu_flags_x86_avx)
+ -DSNAPPY_REQUIRE_AVX2=$(usex cpu_flags_x86_avx2)
+ -DSNAPPY_BUILD_BENCHMARKS=OFF
+ # Options below are related to benchmarking, that we disable.
+ -DHAVE_LIBZ=NO
+ -DHAVE_LIBLZO2=NO
+ -DHAVE_LIBLZ4=NO
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # run tests directly to get verbose output
+ cd "${S}" || die
+ "${BUILD_DIR}"/snappy_unittest || die
+}
diff --git a/app-arch/stenc/Manifest b/app-arch/stenc/Manifest
index 8c8f20c3fed1..f8cbaf0666a3 100644
--- a/app-arch/stenc/Manifest
+++ b/app-arch/stenc/Manifest
@@ -1,2 +1,2 @@
-DIST stenc-1.0.7.tar.gz 107096 BLAKE2B 678be2fea4eb3db5cf84a70243fd61dcb574627bacb59b2f9af682e2e0851d41187565b4706313c98bb5b297f865b1424bc47c52f15efa2a2e8b2c7413b09009 SHA512 84cb0114c969e1a5122a8621d2c136663ee2a2d9aae1d455631c1d4555e947f4841004b74a1f63b800be713cfae637c19ea34adf40f0bc81f1c56a555a27ba31
-DIST stenc-1.0.8.tar.gz 29297 BLAKE2B 269310fb7a9063eb3b367dfec534096201003e6178a31aeb73aa7a73ed0473d4a606634ac9cf7377d17240dee074345efa49fc907d9487f573a75ec44c3454f6 SHA512 4fd882861d248cf59cde1782833bd3e4f7e01e8b6c00424c55f26454a620510b22de0d42f2d7f6c4e67c2b277776a174fe687756a75f410026fda55554f9dc87
+DIST stenc-1.1.1.tar.gz 161761 BLAKE2B 865d36befd53e1db00245688e2aac429546b29f7b039cbd04aaafb47fcc55f02ba01e7f13c7814ae4daf102372eded1f069c1b9ecfb2b2e7aaf009bfa2855ae4 SHA512 89eb1da2391be207e23d4e3cc6563405272eeb456b59360e92fbeca063badcfcf4c37fc814af59803707006e5c04e43e18755e1d30b0f3b3020a7645396db1a6
+DIST stenc-2.0.0.tar.gz 166547 BLAKE2B d5a5b8794887f7ba1353b573d4aad41abd719067ab7256f0f90101a960847707ce47d63618d7b406726841114e8495aba2a0c5053c3e11f9c118859ab8573a89 SHA512 9dcdcff547d8f0d1fd99eaaf54812e47ca5a3f4e56befe11d7e32919bc7caa968476f0f082925c86be1e9892369cec26125be089bf11f29c87ca63b3614ebffe
diff --git a/app-arch/stenc/metadata.xml b/app-arch/stenc/metadata.xml
index a07372b0e98c..ed60917084f0 100644
--- a/app-arch/stenc/metadata.xml
+++ b/app-arch/stenc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>jstein@gentoo.org</email>
diff --git a/app-arch/stenc/stenc-1.0.7.ebuild b/app-arch/stenc/stenc-1.0.7.ebuild
deleted file mode 100644
index 2a47f9366245..000000000000
--- a/app-arch/stenc/stenc-1.0.7.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="SCSI Tape Encryption Manager enables AES support for LTO drives."
-HOMEPAGE="https://sourceforge.net/projects/stenc/"
-SRC_URI="mirror://sourceforge/${PN}/source/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
diff --git a/app-arch/stenc/stenc-1.0.8.ebuild b/app-arch/stenc/stenc-1.1.1.ebuild
index 1f9c5860f701..7a5055a0913b 100644
--- a/app-arch/stenc/stenc-1.0.8.ebuild
+++ b/app-arch/stenc/stenc-1.1.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit autotools
@@ -14,17 +14,12 @@ else
KEYWORDS="~amd64 ~x86"
fi
-DESCRIPTION="SCSI Tape Encryption Manager enables AES support for LTO drives."
+DESCRIPTION="SCSI Tape Encryption Manager enables AES support for LTO drives"
HOMEPAGE="https://github.com/scsitape/stenc/"
LICENSE="GPL-2"
SLOT="0"
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-
src_prepare() {
default
eautoreconf
diff --git a/app-arch/stenc/stenc-2.0.0.ebuild b/app-arch/stenc/stenc-2.0.0.ebuild
new file mode 100644
index 000000000000..b90597d8f9e6
--- /dev/null
+++ b/app-arch/stenc/stenc-2.0.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/scsitape/stenc.git"
+ S="${WORKDIR}/${P}/src"
+else
+ SRC_URI="https://github.com/scsitape/stenc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="SCSI Tape Encryption Manager enables AES support for LTO drives"
+HOMEPAGE="https://github.com/scsitape/stenc/"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+BDEPEND="
+ virtual/pandoc
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/app-arch/stormlib/Manifest b/app-arch/stormlib/Manifest
new file mode 100644
index 000000000000..4081bddc12d0
--- /dev/null
+++ b/app-arch/stormlib/Manifest
@@ -0,0 +1,2 @@
+DIST StormLib-9.24.tar.gz 625374 BLAKE2B 3647580b1b048e284ade2fb23aed53cac76a89a0180908f48fc99d571e702d876de37e42a47b3d351c72e6fa905fc02f4b8fa691a6840013637e1560e9acafcb SHA512 38694685edfc9c53ff1e303109831b6a791200b9db275043bca8b3bbe7cc928cf0ce9cf554c6758f693da453b85e6385d277ae9add7af867c13488d77432cde5
+DIST StormLib-9.25.tar.gz 603875 BLAKE2B c7da242d039f5a49e8abd295b42e639fc540c77ee4bf8f210610d56940d1d35f19ea267dccde89e50f744218527f4c521e1d320f24e8fe3a0e0739ee899aa023 SHA512 0da78bda4bb89637da892fc73a0673b8a5f852ede4fdceba1029431d24dd1e59db9bfceafab1c5fb642e4b5d0d15d9865f7a138bfb190ce0c2d3601b22dd3023
diff --git a/app-arch/stormlib/files/stormlib-9.24-gnuinstalldirs.patch b/app-arch/stormlib/files/stormlib-9.24-gnuinstalldirs.patch
new file mode 100644
index 000000000000..f50dcaa82601
--- /dev/null
+++ b/app-arch/stormlib/files/stormlib-9.24-gnuinstalldirs.patch
@@ -0,0 +1,55 @@
+From 8cb9b76a5e85ffab436f7b01ecfc0a0dea7547af Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Mon, 3 Oct 2022 20:49:31 +0200
+Subject: [PATCH] cmake: Use GNUInstallDirs for configurable install
+ directories
+
+Use the standard GNUInstallDirs CMake module to provide configurable
+install directories rather than hardcoding 'bin', 'lib', etc. Most
+importantly, this fixes install on modern amd64 systems that use 'lib64'
+rather than 'lib'.
+---
+ CMakeLists.txt | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9cf1050..b10c2c5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,7 @@ set(CMAKE_CXX_EXTENSIONS OFF)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+ include(CMakeDependentOption)
++include(GNUInstallDirs)
+
+ option(BUILD_SHARED_LIBS "Compile shared libraries" OFF)
+ option(STORM_SKIP_INSTALL "Skip installing files" OFF)
+@@ -357,12 +358,12 @@ endif()
+
+ if (NOT STORM_SKIP_INSTALL)
+ install(TARGETS ${LIBRARY_NAME}
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ FRAMEWORK DESTINATION /Library/Frameworks
+- PUBLIC_HEADER DESTINATION include
+- INCLUDES DESTINATION include)
++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
++ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+
+ #CPack configurtion
+ SET(CPACK_GENERATOR "DEB" "RPM")
+@@ -395,6 +396,6 @@ endif()
+ if(STORM_BUILD_TESTS)
+ add_executable(StormLib_test ${TEST_SRC_FILES})
+ target_link_libraries(StormLib_test ${LIBRARY_NAME})
+- install(TARGETS StormLib_test RUNTIME DESTINATION bin)
++ install(TARGETS StormLib_test RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endif()
+
+--
+2.37.3
+
diff --git a/app-arch/stormlib/metadata.xml b/app-arch/stormlib/metadata.xml
new file mode 100644
index 000000000000..5b84358fc1cd
--- /dev/null
+++ b/app-arch/stormlib/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ladislav-zezula/StormLib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/stormlib/stormlib-9.24.ebuild b/app-arch/stormlib/stormlib-9.24.ebuild
new file mode 100644
index 000000000000..fa8ef965a8f1
--- /dev/null
+++ b/app-arch/stormlib/stormlib-9.24.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_P=StormLib-${PV}
+DESCRIPTION="Library to read and write MPQ archives (Diablo, StarCraft)"
+HOMEPAGE="
+ http://www.zezula.net/en/mpq/stormlib.html
+ https://github.com/ladislav-zezula/StormLib/
+"
+SRC_URI="
+ https://github.com/ladislav-zezula/StormLib/archive/v${PV}.tar.gz
+ -> ${MY_P}.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ app-arch/bzip2:=
+ dev-libs/libtomcrypt:=[libtommath]
+ sys-libs/zlib:=
+"
+DEPEND=${RDEPEND}
+
+PATCHES=(
+ "${FILESDIR}"/stormlib-9.24-gnuinstalldirs.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ # interactive test app
+ -DSTORM_BUILD_TESTS=OFF
+ -DWITH_LIBTOMCRYPT=ON
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/stormlib/stormlib-9.25.ebuild b/app-arch/stormlib/stormlib-9.25.ebuild
new file mode 100644
index 000000000000..dbb04664be09
--- /dev/null
+++ b/app-arch/stormlib/stormlib-9.25.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_P=StormLib-${PV}
+DESCRIPTION="Library to read and write MPQ archives (Diablo, StarCraft)"
+HOMEPAGE="
+ http://www.zezula.net/en/mpq/stormlib.html
+ https://github.com/ladislav-zezula/StormLib/
+"
+SRC_URI="
+ https://github.com/ladislav-zezula/StormLib/archive/v${PV}.tar.gz
+ -> ${MY_P}.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ app-arch/bzip2:=
+ dev-libs/libtomcrypt:=[libtommath]
+ sys-libs/zlib:=
+"
+DEPEND=${RDEPEND}
+
+PATCHES=(
+ "${FILESDIR}"/stormlib-9.24-gnuinstalldirs.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ # interactive test app
+ -DSTORM_BUILD_TESTS=OFF
+ -DWITH_LIBTOMCRYPT=ON
+ )
+
+ cmake_src_configure
+}
diff --git a/app-arch/stuffit/metadata.xml b/app-arch/stuffit/metadata.xml
index 9721c8429868..08ca87785011 100644
--- a/app-arch/stuffit/metadata.xml
+++ b/app-arch/stuffit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>Stuffit is a archive creating application, supporting .sit, .sitx .zip, and self-extracting archives</longdescription>
diff --git a/app-arch/stuffit/stuffit-5.2.0.611.ebuild b/app-arch/stuffit/stuffit-5.2.0.611-r1.ebuild
index f951829d1fe4..4edbd3e01728 100644
--- a/app-arch/stuffit/stuffit-5.2.0.611.ebuild
+++ b/app-arch/stuffit/stuffit-5.2.0.611-r1.ebuild
@@ -1,23 +1,21 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
MY_P="stuffit520.611linux-i386"
DESCRIPTION="Aladdin Software's StuffIt and StuffIt Expander"
HOMEPAGE="http://www.stuffit.com/"
SRC_URI="http://my.smithmicro.com/downloads/files/${MY_P}.tar.gz"
+S="${WORKDIR}"
LICENSE="Stuffit"
SLOT="0"
KEYWORDS="-* amd64 x86"
-IUSE=""
RESTRICT="fetch strip"
-S="${WORKDIR}"
-
-INSTALLDIR=/opt/stuffit
+INSTALLDIR="/opt/stuffit"
pkg_nofetch() {
einfo "Please download stuffit from"
@@ -49,12 +47,10 @@ src_install() {
doman man/man1/*
# Also add the executables to the path
- dodir /etc/env.d
- cat > "${T}"/10stuffit <<- EOF || die
+ newenvd - 10stuffit <<- EOF
PATH="${EPREFIX}${INSTALLDIR}/bin"
ROOTPATH="${EPREFIX}${INSTALLDIR}/bin"
EOF
- doenvd "${T}"/10stuffit
}
pkg_postinst() {
diff --git a/app-arch/tapeutils/metadata.xml b/app-arch/tapeutils/metadata.xml
index a4e0d354f696..a551e17802d7 100644
--- a/app-arch/tapeutils/metadata.xml
+++ b/app-arch/tapeutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/app-arch/tapeutils/tapeutils-0.4.ebuild b/app-arch/tapeutils/tapeutils-0.4-r1.ebuild
index 50e3aac72747..3910ba59b41b 100644
--- a/app-arch/tapeutils/tapeutils-0.4.ebuild
+++ b/app-arch/tapeutils/tapeutils-0.4-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
@@ -12,9 +12,7 @@ SRC_URI="http://www.brouhaha.com/~eric/software/tapeutils/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-DEPEND=""
RDEPEND="!app-emulation/hercules"
PATCHES=(
diff --git a/app-arch/tar/Manifest b/app-arch/tar/Manifest
index dc57e45b125b..52fa6aa731e6 100644
--- a/app-arch/tar/Manifest
+++ b/app-arch/tar/Manifest
@@ -1,2 +1,4 @@
-DIST tar-1.32.90.tar.xz 2145976 BLAKE2B 95f1442da87bcbd58e0a6aad303b8c9da9179cc32a6e835d3fbe2e090ad4316e96265a54f573906b262034b92d8d3e56f3ff2609145249bd16dd4ea2a79bb601 SHA512 a42703b73ec3c1f462849469f00dd190a0164972fd2e97f128c3b559a6e9c79e87d5bbf47fca17ca9f8b6810221fbc727b6c15e38693256d9e43a2c2a2d7b593
-DIST tar-1.32.tar.bz2 2947264 BLAKE2B 4e380a9a2f84a2af5130464e1b298ae6acf02ee459cbca20dd0991c2859785e5aac789d57b87b32e8b45d89985b6414af9dd37161385da9568d6030c5aa42c0e SHA512 3139e87112123269ee0600243b3ea081687cc93667bef5832bfe3c785c1be622f520f00fcfbdf44ad1d3247866d0ecfe347a85bbfec38eb38fa1014baef566f6
+DIST tar-1.34.tar.xz 2226068 BLAKE2B 741a662457509a6775338ffe5d2d84872fcf38b93ace70c8b748a81055b9b62f65a48c4e541955d08ae99e6f528509e89eacd7c799a65bcc3d017a259110c115 SHA512 5e77c4a7b49983ad7d15238c2bce28be7a8aa437b4b1815fc00abd13096da308b6bba196cc6e3ed79d85e62823d520ae0d8fcda2d93873842cf84dc3369fc902
+DIST tar-1.34.tar.xz.sig 181 BLAKE2B 2fae91293a9dacda0374706e1f83498042a9d5224f80f6f0e14abdb914cb5a8e980f720eb4a453485844c7fe26e0525f230c0eab11c7fa89159a1a929370795c SHA512 55297f41549deee511f5b14c6b5dc7bb3d9282dad52bcc85f9dddfad24b677f989ba86387ad9b133c3698feedbd6b6cd7e9f005e8e4c89f72c80543eeceb78f7
+DIST tar-1.35.tar.xz 2317208 BLAKE2B e1a200d21f433cd7d917dd979db16919a9167056ae62cf7d038a6118e56b2fe419cd4a396eee66f1f4dc13a8dc380e23f6ffd7ee0ca84e5dd9ad9411f60e002c SHA512 8b84ed661e6c878fa33eb5c1808d20351e6f40551ac63f96014fb0d0b9c72d5d94d8865d39e36bcb184fd250f84778a3b271bbd8bd2ceb69eece0c3568577510
+DIST tar-1.35.tar.xz.sig 95 BLAKE2B 8501b55b700bc99b81f04519db1cd8f7bc3d87dd5bfefa25a3d979b23359f02dfb770f3dd66dca275baa70a99612cb85c1019faaf3a1f0bcf50c9815b8e32eca SHA512 00e5c95bf8015f75f59556a82ed7f50bddefe89754c7ff3c19411aee2f37626a5d65c33e18b87f7f8f96388d3f175fd095917419a3ad1c0fc9d6188088bac944
diff --git a/app-arch/tar/files/tar-1.34-fix-cve-2022-48303.patch b/app-arch/tar/files/tar-1.34-fix-cve-2022-48303.patch
new file mode 100644
index 000000000000..7ef604b52378
--- /dev/null
+++ b/app-arch/tar/files/tar-1.34-fix-cve-2022-48303.patch
@@ -0,0 +1,32 @@
+Gentoo Bug: https://bugs.gentoo.org/898176
+Upstream Commit Link: https://git.savannah.gnu.org/cgit/tar.git/commit/?id=3da78400eafcccb97e2f2fd4b227ea40d794ede8
+
+From 3da78400eafcccb97e2f2fd4b227ea40d794ede8 Mon Sep 17 00:00:00 2001
+From: Sergey Poznyakoff <gray@gnu.org>
+Date: Sat, 11 Feb 2023 11:57:39 +0200
+Subject: [PATCH] Fix boundary checking in base-256 decoder
+
+* src/list.c (from_header): Base-256 encoding is at least 2 bytes
+long.
+---
+ src/list.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/list.c b/src/list.c
+index 9fafc425..86bcfdd1 100644
+--- a/src/list.c
++++ b/src/list.c
+@@ -881,8 +881,9 @@ from_header (char const *where0, size_t digs, char const *type,
+ where++;
+ }
+ }
+- else if (*where == '\200' /* positive base-256 */
+- || *where == '\377' /* negative base-256 */)
++ else if (where <= lim - 2
++ && (*where == '\200' /* positive base-256 */
++ || *where == '\377' /* negative base-256 */))
+ {
+ /* Parse base-256 output. A nonnegative number N is
+ represented as (256**DIGS)/2 + N; a negative number -N is
+--
+2.39.2.637.g21b0678d19-goog
diff --git a/app-arch/tar/metadata.xml b/app-arch/tar/metadata.xml
index c7c95933065b..8cbd50a67753 100644
--- a/app-arch/tar/metadata.xml
+++ b/app-arch/tar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/tar/tar-1.32.90.ebuild b/app-arch/tar/tar-1.32.90.ebuild
deleted file mode 100644
index 87f3d927f1c8..000000000000
--- a/app-arch/tar/tar-1.32.90.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-DESCRIPTION="Use this to make tarballs :)"
-HOMEPAGE="https://www.gnu.org/software/tar/"
-SRC_URI="mirror://gnu/tar/${P}.tar.xz
- mirror://gnu-alpha/tar/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-[[ -n "$(ver_cut 3)" ]] && [[ "$(ver_cut 3)" -ge 90 ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="acl elibc_glibc minimal nls selinux static userland_GNU xattr"
-
-LIB_DEPEND="acl? ( virtual/acl[static-libs(+)] )"
-
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- xattr? ( elibc_glibc? ( sys-apps/attr ) )"
-BDEPEND="nls? ( sys-devel/gettext )"
-
-src_prepare() {
- default
-
- if ! use userland_GNU ; then
- sed -i \
- -e 's:/backup\.sh:/gbackup.sh:' \
- scripts/{backup,dump-remind,restore}.in \
- || die "sed non-GNU"
- fi
-}
-
-src_configure() {
- use static && append-ldflags -static
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- --enable-backup-scripts
- --libexecdir="${EPREFIX}"/usr/sbin
- $(usex userland_GNU "" "--program-prefix=g")
- $(use_with acl posix-acls)
- $(use_enable nls)
- $(use_with selinux)
- $(use_with xattr xattrs)
- )
- FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- local p=$(usex userland_GNU "" "g")
- if [[ -z ${p} ]] ; then
- # a nasty yet required piece of baggage
- exeinto /etc
- doexe "${FILESDIR}"/rmt
- fi
-
- # autoconf looks for gtar before tar (in configure scripts), hence
- # in Prefix it is important that it is there, otherwise, a gtar from
- # the host system (FreeBSD, Solaris, Darwin) will be found instead
- # of the Prefix provided (GNU) tar
- if use prefix ; then
- dosym tar /bin/gtar
- fi
-
- mv "${ED}"/usr/sbin/${p}backup{,-tar} || die
- mv "${ED}"/usr/sbin/${p}restore{,-tar} || die
-
- if use minimal ; then
- find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
- -type f -a '!' '(' -name tar -o -name ${p}tar ')' \
- -delete || die
- fi
-}
diff --git a/app-arch/tar/tar-1.32.ebuild b/app-arch/tar/tar-1.32.ebuild
deleted file mode 100644
index 81267f7aa858..000000000000
--- a/app-arch/tar/tar-1.32.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-DESCRIPTION="Use this to make tarballs :)"
-HOMEPAGE="https://www.gnu.org/software/tar/"
-SRC_URI="mirror://gnu/tar/${P}.tar.bz2
- mirror://gnu-alpha/tar/${P}.tar.bz2"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="acl elibc_glibc minimal nls selinux static userland_GNU xattr"
-
-LIB_DEPEND="acl? ( virtual/acl[static-libs(+)] )"
-
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
- nls? ( >=sys-devel/gettext-0.10.35 )
- static? ( ${LIB_DEPEND} )
- xattr? ( elibc_glibc? ( sys-apps/attr ) )"
-
-src_prepare() {
- default
-
- if ! use userland_GNU ; then
- sed -i \
- -e 's:/backup\.sh:/gbackup.sh:' \
- scripts/{backup,dump-remind,restore}.in \
- || die "sed non-GNU"
- fi
-}
-
-src_configure() {
- use static && append-ldflags -static
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- --enable-backup-scripts
- --libexecdir="${EPREFIX}"/usr/sbin
- $(usex userland_GNU "" "--program-prefix=g")
- $(use_with acl posix-acls)
- $(use_enable nls)
- $(use_with selinux)
- $(use_with xattr xattrs)
- )
- FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- local p=$(usex userland_GNU "" "g")
- if [[ -z ${p} ]] ; then
- # a nasty yet required piece of baggage
- exeinto /etc
- doexe "${FILESDIR}"/rmt
- fi
-
- # autoconf looks for gtar before tar (in configure scripts), hence
- # in Prefix it is important that it is there, otherwise, a gtar from
- # the host system (FreeBSD, Solaris, Darwin) will be found instead
- # of the Prefix provided (GNU) tar
- if use prefix ; then
- dosym tar /bin/gtar
- fi
-
- mv "${ED%/}"/usr/sbin/${p}backup{,-tar} || die
- mv "${ED%/}"/usr/sbin/${p}restore{,-tar} || die
-
- if use minimal ; then
- find "${ED%/}"/etc "${ED%/}"/*bin/ "${ED%/}"/usr/*bin/ \
- -type f -a '!' '(' -name tar -o -name ${p}tar ')' \
- -delete || die
- fi
-}
diff --git a/app-arch/tar/tar-1.34-r3.ebuild b/app-arch/tar/tar-1.34-r3.ebuild
new file mode 100644
index 000000000000..cc5253e340f7
--- /dev/null
+++ b/app-arch/tar/tar-1.34-r3.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/tar.asc
+inherit verify-sig
+
+DESCRIPTION="Use this to make tarballs :)"
+HOMEPAGE="https://www.gnu.org/software/tar/"
+SRC_URI="mirror://gnu/tar/${P}.tar.xz
+ https://alpha.gnu.org/gnu/tar/${P}.tar.xz"
+SRC_URI+=" verify-sig? (
+ mirror://gnu/tar/${P}.tar.xz.sig
+ https://alpha.gnu.org/gnu/tar/${P}.tar.xz.sig
+ )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+if [[ -z "$(ver_cut 3)" ]] || [[ "$(ver_cut 3)" -lt 90 ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="acl minimal nls selinux xattr"
+
+RDEPEND="
+ acl? ( virtual/acl )
+ selinux? ( sys-libs/libselinux )
+"
+DEPEND="${RDEPEND}
+ xattr? ( elibc_glibc? ( sys-apps/attr ) )
+"
+BDEPEND="
+ nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-tar )
+"
+PDEPEND="
+ app-alternatives/tar
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-cve-2022-48303.patch
+)
+
+src_configure() {
+ # -fanalyzer doesn't make sense for us in ebuilds, as it's for static analysis
+ export gl_cv_warn_c__fanalyzer=no
+
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ # Avoid -Werror
+ --disable-gcc-warnings
+ --enable-backup-scripts
+ --libexecdir="${EPREFIX}"/usr/sbin
+ $(use_with acl posix-acls)
+ $(use_enable nls)
+ $(use_with selinux)
+ $(use_with xattr xattrs)
+
+ # autoconf looks for gtar before tar (in configure scripts), hence
+ # in Prefix it is important that it is there, otherwise, a gtar from
+ # the host system (FreeBSD, Solaris, Darwin) will be found instead
+ # of the Prefix provided (GNU) tar
+ --program-prefix=g
+ )
+
+ FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # a nasty yet required piece of baggage
+ exeinto /etc
+ doexe "${FILESDIR}"/rmt
+
+ mv "${ED}"/usr/sbin/{gbackup,backup-tar} || die
+ mv "${ED}"/usr/sbin/{grestore,restore-tar} || die
+ mv "${ED}"/usr/sbin/{g,}backup.sh || die
+ mv "${ED}"/usr/sbin/{g,}dump-remind || die
+
+ if use minimal ; then
+ find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
+ -type f -a '!' -name gtar \
+ -delete || die
+ fi
+
+ if ! use minimal; then
+ dosym grmt /usr/sbin/rmt
+ fi
+ dosym grmt.8 /usr/share/man/man8/rmt.8
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlink before app-alternatives/tar
+ # is installed
+ if [[ ! -h ${EROOT}/bin/tar ]]; then
+ if [[ -e ${EROOT}/usr/bin/tar ]] ; then
+ # bug #904887
+ ewarn "${EROOT}/usr/bin/tar exists but is not a symlink."
+ ewarn "This is expected during Prefix bootstrap and unusual otherwise."
+ ewarn "Moving away unexpected ${EROOT}/usr/bin/tar to .bak."
+ mv "${EROOT}/usr/bin/tar" "${EROOT}/usr/bin/tar.bak" || die
+ fi
+ ln -s gtar "${EROOT}/bin/tar" || die
+ fi
+}
diff --git a/app-arch/tar/tar-1.35.ebuild b/app-arch/tar/tar-1.35.ebuild
new file mode 100644
index 000000000000..46d2ebf890bb
--- /dev/null
+++ b/app-arch/tar/tar-1.35.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/tar.asc
+inherit multiprocessing verify-sig
+
+DESCRIPTION="Use this to make tarballs :)"
+HOMEPAGE="https://www.gnu.org/software/tar/"
+SRC_URI="
+ mirror://gnu/tar/${P}.tar.xz
+ https://alpha.gnu.org/gnu/tar/${P}.tar.xz
+ verify-sig? (
+ mirror://gnu/tar/${P}.tar.xz.sig
+ https://alpha.gnu.org/gnu/tar/${P}.tar.xz.sig
+ )
+"
+
+LICENSE="GPL-3+"
+SLOT="0"
+if [[ -z "$(ver_cut 3)" || "$(ver_cut 3)" -lt 90 ]] ; then
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="acl minimal nls selinux xattr"
+
+RDEPEND="
+ acl? ( virtual/acl )
+ selinux? ( sys-libs/libselinux )
+"
+DEPEND="
+ ${RDEPEND}
+ xattr? ( elibc_glibc? ( sys-apps/attr ) )
+"
+BDEPEND="
+ nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-tar )
+"
+PDEPEND="
+ app-alternatives/tar
+"
+
+src_configure() {
+ # -fanalyzer doesn't make sense for us in ebuilds, as it's for static analysis
+ export gl_cv_warn_c__fanalyzer=no
+
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ # Avoid -Werror
+ --disable-gcc-warnings
+ --enable-backup-scripts
+ --libexecdir="${EPREFIX}"/usr/sbin
+ $(use_with acl posix-acls)
+ $(use_enable nls)
+ $(use_with selinux)
+ $(use_with xattr xattrs)
+
+ # autoconf looks for gtar before tar (in configure scripts), hence
+ # in Prefix it is important that it is there, otherwise, a gtar from
+ # the host system (FreeBSD, Solaris, Darwin) will be found instead
+ # of the Prefix provided (GNU) tar
+ --program-prefix=g
+ )
+
+ # Drop CONFIG_SHELL hack after 1.35: https://git.savannah.gnu.org/cgit/tar.git/commit/?id=7687bf4acc4dc4554538389383d7fb4c3e6521cd
+ CONFIG_SHELL="${BROOT}"/bin/bash FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # Drop after 1.35: https://git.savannah.gnu.org/cgit/tar.git/commit/?id=18f90676e4695ffcf13413e9fbb24cc0ae2ae9d5
+ local -x XZ_OPT= XZ_DEFAULTS=
+
+ emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)"
+}
+
+src_install() {
+ default
+
+ # A nasty yet required piece of baggage
+ exeinto /etc
+ doexe "${FILESDIR}"/rmt
+
+ mv "${ED}"/usr/sbin/{gbackup,backup-tar} || die
+ mv "${ED}"/usr/sbin/{grestore,restore-tar} || die
+ mv "${ED}"/usr/sbin/{g,}backup.sh || die
+ mv "${ED}"/usr/sbin/{g,}dump-remind || die
+
+ if use minimal ; then
+ find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
+ -type f -a '!' -name gtar \
+ -delete || die
+ fi
+
+ if ! use minimal; then
+ dosym grmt /usr/sbin/rmt
+ fi
+ dosym grmt.8 /usr/share/man/man8/rmt.8
+}
+
+pkg_postinst() {
+ # Ensure to preserve the symlink before app-alternatives/tar
+ # is installed
+ if [[ ! -h ${EROOT}/bin/tar ]]; then
+ if [[ -e ${EROOT}/usr/bin/tar ]] ; then
+ # bug #904887
+ ewarn "${EROOT}/usr/bin/tar exists but is not a symlink."
+ ewarn "This is expected during Prefix bootstrap and unusual otherwise."
+ ewarn "Moving away unexpected ${EROOT}/usr/bin/tar to .bak."
+ mv "${EROOT}/usr/bin/tar" "${EROOT}/usr/bin/tar.bak" || die
+ fi
+ ln -s gtar "${EROOT}/bin/tar" || die
+ fi
+}
diff --git a/app-arch/tardelta/metadata.xml b/app-arch/tardelta/metadata.xml
index 727296200d6d..fe31e6721876 100644
--- a/app-arch/tardelta/metadata.xml
+++ b/app-arch/tardelta/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<upstream>
<remote-id type="github">zmedico/tardelta</remote-id>
diff --git a/app-arch/tardelta/tardelta-1.0.1.ebuild b/app-arch/tardelta/tardelta-1.0.1-r1.ebuild
index d847ff417e0b..37dfd6b81b3e 100644
--- a/app-arch/tardelta/tardelta-1.0.1.ebuild
+++ b/app-arch/tardelta/tardelta-1.0.1-r1.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
DESCRIPTION="Generate a tarball of differences between two tarballs"
@@ -13,7 +14,6 @@ SRC_URI="https://github.com/zmedico/tardelta/archive/${PV}.tar.gz -> ${P}.tar.gz
LICENSE="Apache-2.0"
KEYWORDS="~amd64 ~x86"
SLOT="0"
-IUSE=""
src_prepare() {
sed -i "s:^\(__version__ =\).*:\\1 \"${PV}\":" src/${PN}.py || die
diff --git a/app-arch/tarlz/Manifest b/app-arch/tarlz/Manifest
new file mode 100644
index 000000000000..772095f9e4fc
--- /dev/null
+++ b/app-arch/tarlz/Manifest
@@ -0,0 +1 @@
+DIST tarlz-0.25.tar.lz 113783 BLAKE2B 56aad4c839ec4fe10bcd7101cea3300aae8e73630ac95de529401d308b23f8fb292d02a7817484259985fc079380e50219ea8d5002427f2bffad63137a1f03b1 SHA512 a55e89c3e701375d47f6fefd3cba5621f53371f3b3e59c174759e5d122f852b6eec02f5e71ce375b84d6af253841ad4b0d4c8a8af8fc12b81f877f0ab8c3b3c8
diff --git a/app-arch/tarlz/metadata.xml b/app-arch/tarlz/metadata.xml
new file mode 100644
index 000000000000..08a467d3d198
--- /dev/null
+++ b/app-arch/tarlz/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-arch/tarlz/tarlz-0.25.ebuild b/app-arch/tarlz/tarlz-0.25.ebuild
new file mode 100644
index 000000000000..6e55bf850642
--- /dev/null
+++ b/app-arch/tarlz/tarlz-0.25.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs unpacker
+
+DESCRIPTION="A parallel archiver combining tar and lzip"
+HOMEPAGE="https://www.nongnu.org/lzip/tarlz.html"
+SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.lz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64"
+
+RDEPEND="
+ >=app-arch/lzlib-1.12
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ $(unpacker_src_uri_depends)
+"
+
+src_configure() {
+ econf \
+ CXX="$(tc-getCXX)" \
+ CXXFLAGS="${CXXFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
diff --git a/app-arch/tarsync/Manifest b/app-arch/tarsync/Manifest
index 802e382e3066..407f6af99559 100644
--- a/app-arch/tarsync/Manifest
+++ b/app-arch/tarsync/Manifest
@@ -1 +1 @@
-DIST tarsync-0.2.1.tar.bz2 13593 BLAKE2B 4841d501587c8d4932031fe939fce9f41019622af2a4253bfe12c01160956e7eaeebf5ff00174332dce6b17ae150ead42b7c1a57483f948ba191b5c3943f6596 SHA512 bebf8e495ad196c002414c41f9fe9737b5300de18b7c3b16576a7d3bfd94608f36f1b86cb6ed4879c600b71c7706255d9b2d4140b73c5743a473fa2500dbca2d
+DIST tarsync-0.2.3.tar.gz 21148 BLAKE2B 53eff0b6b8b3a6fe9c9e56a08659c02ec01b9e521dd06abd3fe9c04da6ec463eb79758ffe5bce17dc0396c3c5d6daf258d8dc5c2479047f9a1e14f892e05948b SHA512 dcb4c4e329b2a25ce0e9986defb0dfb76417352683c9ff5c71ed32861be3847d47af7db4e28b214e194cb1751b8934bb11644450a3dccd0bf24fcf009167a03b
diff --git a/app-arch/tarsync/files/tarsync-0.2.1-gcc5.patch b/app-arch/tarsync/files/tarsync-0.2.1-gcc5.patch
deleted file mode 100644
index f11c86bb248a..000000000000
--- a/app-arch/tarsync/files/tarsync-0.2.1-gcc5.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-diff --git a/excludes.c b/excludes.c
-index b7c928d..fa43cef 100644
---- a/excludes.c
-+++ b/excludes.c
-@@ -106,7 +106,7 @@ build_exclude(fnm_exclude **ex_ptr, const char *pattern)
- }
-
-
--inline int
-+int
- match_excludes(const char *dir, const char *file, fnm_exclude **excludes)
- {
- char *p;
-diff --git a/main.c b/main.c
-index 84feed4..2c2da3e 100644
---- a/main.c
-+++ b/main.c
-@@ -42,8 +42,8 @@ int remove_node(const char *path, struct stat *st);
- int ensure_files_layout(const tar_entry **ttar, const unsigned int ttar_count, tar_entry ***missing,
- unsigned int *missing_count, tar_entry ***existing, unsigned int *existing_count,
- fnm_exclude **excludes);
--inline int check_existing_node(const struct dirent *de, const tar_entry *t, struct stat *st);
--inline int enforce_owner(const char *path, const tar_entry *t, struct stat *st);
-+int check_existing_node(const struct dirent *de, const tar_entry *t, struct stat *st);
-+int enforce_owner(const char *path, const tar_entry *t, struct stat *st);
- int copy_whole_file(cfile *tar_cfh, const tar_entry *ttent);
-
- static int check_mtime = 1;
-@@ -669,7 +669,7 @@ recursively_delete_dir(const char *path)
- return ret;
- }
-
--inline int
-+int
- check_existing_node(const struct dirent *de, const tar_entry *t, struct stat *st)
- {
- int type;
-@@ -685,7 +685,7 @@ check_existing_node(const struct dirent *de, const tar_entry *t, struct stat *st
- return 0;
- }
-
--inline int
-+int
- enforce_owner(const char *path, const tar_entry *t, struct stat *st)
- {
- struct stat st2;
-diff --git a/tar.c b/tar.c
-index 792ccd4..42dc8e7 100644
---- a/tar.c
-+++ b/tar.c
-@@ -40,7 +40,7 @@ int check_str_chksum(const char *block)
-
- /* possibly this could be done different, what of endptr of strtol?
- Frankly I worry about strtol trying to go too far and causing a segfault, due to tar fields not always having trailing \0 */
--inline unsigned long octal_str2long(const char *string, unsigned int length)
-+unsigned long octal_str2long(const char *string, unsigned int length)
- {
- if(string[length]) {
- char *ptr = strndup(string, length);
diff --git a/app-arch/tarsync/files/tarsync-0.2.1-make.patch b/app-arch/tarsync/files/tarsync-0.2.1-make.patch
deleted file mode 100644
index 72591115a45a..000000000000
--- a/app-arch/tarsync/files/tarsync-0.2.1-make.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Respect CC and LDFLAGS.
-
---- Makefile
-+++ Makefile
-@@ -2,7 +2,7 @@
- CC=gcc
- endif
- tarsync: main.o names.o tar.o string-misc.o fs.o options.o excludes.o
-- gcc $(CFLAGS) $^ -o tarsync -lcfile
-+ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o tarsync -lcfile
- all: tarsync
-
- clean:
diff --git a/app-arch/tarsync/metadata.xml b/app-arch/tarsync/metadata.xml
index 6f49eba8f496..96e679fe0172 100644
--- a/app-arch/tarsync/metadata.xml
+++ b/app-arch/tarsync/metadata.xml
@@ -1,5 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zmedico/tarsync</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/tarsync/tarsync-0.2.1-r1.ebuild b/app-arch/tarsync/tarsync-0.2.1-r1.ebuild
deleted file mode 100644
index c9db986bc6c6..000000000000
--- a/app-arch/tarsync/tarsync-0.2.1-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="Delta compression suite for using/generating binary patches"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ppc x86 ~amd64-linux"
-IUSE=""
-
-DEPEND=">=dev-util/diffball-0.7"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${PN}
-
-pkg_setup() {
- tc-export CC
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-make.patch
- epatch "${FILESDIR}"/${P}-gcc5.patch
-}
-
-src_install() {
- dobin "${PN}" #make install doesn't support prefix
-}
diff --git a/app-arch/tarsync/tarsync-0.2.3.ebuild b/app-arch/tarsync/tarsync-0.2.3.ebuild
new file mode 100644
index 000000000000..50c6d73f3dbf
--- /dev/null
+++ b/app-arch/tarsync/tarsync-0.2.3.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Synchronize tarball content with file system content"
+HOMEPAGE="https://github.com/zmedico/tarsync"
+SRC_URI="https://github.com/zmedico/tarsync/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ppc x86 ~amd64-linux"
+
+DEPEND=">=dev-util/diffball-0.7:="
+RDEPEND="${DEPEND}"
diff --git a/app-arch/torrentzip/Manifest b/app-arch/torrentzip/Manifest
index e33a18a286e3..08aa339c1310 100644
--- a/app-arch/torrentzip/Manifest
+++ b/app-arch/torrentzip/Manifest
@@ -1 +1,3 @@
DIST torrentzip-0.9.tar.gz 59007 BLAKE2B eb5d7d8d9026115367afd88ef0cf33d2eed600e6eaa773f039a713c76a48a39e12cb5a8ac6faf2937d3563c9270029543bdb6361d2f22a39e2341953872f589c SHA512 691cd25f501de3de16b5b15b2afadfc34b833c3e93208c2c3497674936580ad2c3532a02e02531b89974302eee7b36f7579a412718914b1b38044b78a39a4d4d
+DIST trrntzip-1.2.tar.gz 62707 BLAKE2B 289ddfe89b91c63b1a6902ea7a4055fa8e235e712d6ea911da2848cc8db15cbdf712967b9fcc1414513c1a18eef160108f5f7b03aefd8f8f18c4d04907a16c17 SHA512 90c853efde1d077c741206362bc14fe779627f1b20571246e99ed29980840e78c0377110431c59c35596a0d209e612f6fe77b385707eb4bdb1ea47bb797c9272
+DIST trrntzip-1.3.tar.gz 67297 BLAKE2B c77fd134cfd3ab30f46b66f4b3dd36b899ee6267b17100b1ad15bdf5c6beddaea94fe22d23f1a81de85522768d76401f0192d0deac2ff75edc816510c8069e2c SHA512 c21ed6ac4dacd652e2a67b700741d70dd9da699259bd299ca177c741111f92e70eef0b3ad2ced54b5635780cab2b4c46b3f9c258dfa18bdde24e2718c38339be
diff --git a/app-arch/torrentzip/files/torrentzip-0.9-autoconf-quote.patch b/app-arch/torrentzip/files/torrentzip-0.9-autoconf-quote.patch
new file mode 100644
index 000000000000..f1f15ced173e
--- /dev/null
+++ b/app-arch/torrentzip/files/torrentzip-0.9-autoconf-quote.patch
@@ -0,0 +1,8 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,4 +1,4 @@
+-AC_INIT([TorrentZip], [0.0], [StatMan, shindakun, Ultrasubmarine, r3nh03k <http://trrntzip.sf.net>], [trrntzip])
++AC_INIT([TorrentZip], [0.9], [[StatMan, shindakun, Ultrasubmarine, r3nh03k <http://trrntzip.sf.net>]], [trrntzip])
+
+ AM_INIT_AUTOMAKE
+ AM_CONFIG_HEADER(config.h)
diff --git a/app-arch/torrentzip/files/torrentzip-1.2-checksum-detection.patch b/app-arch/torrentzip/files/torrentzip-1.2-checksum-detection.patch
new file mode 100644
index 000000000000..ac1ae14cbe03
--- /dev/null
+++ b/app-arch/torrentzip/files/torrentzip-1.2-checksum-detection.patch
@@ -0,0 +1,51 @@
+From 016915e16f32105590a6dc11a4adc988b2f8d9a9 Mon Sep 17 00:00:00 2001
+From: Alexander Miller <alex.miller@gmx.de>
+Date: Mon, 4 Mar 2024 19:26:21 +0100
+Subject: [PATCH] Fix broken detection of missing or wrong TORRENTZIPPED-...
+ comment
+
+The commit listed below introduces a regression where in MigrateZip(),
+variable rc would be clobbered when its value is still needed. That
+completely breaks handling of zips that should be re-zipped because
+of missing or out of date TORRENTZIPPED-... comment.
+
+Rewrite the offending code such that it no longer touches the variable.
+
+Fixes: cf11c900079e ("Check for more errors while reading zip entries")
+---
+ src/trrntzip.c | 20 ++++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/src/trrntzip.c b/src/trrntzip.c
+index e55d217..49f796e 100644
+--- a/src/trrntzip.c
++++ b/src/trrntzip.c
+@@ -379,16 +379,20 @@ int MigrateZip(const char *zip_path, const char *pDir, WORKSPACE *ws,
+
+ CHECK_DYNAMIC_STRING_ARRAY(ws->FileNameArray, ws->iElements);
+ // Get the filelist from the zip file in original order in ws->FileNameArray
+- rc = GetFileList(UnZipHandle, ws);
+- if (rc != TZ_OK) {
++ switch (GetFileList(UnZipHandle, ws)) {
++ case TZ_OK:
++ break;
++ case TZ_CRITICAL:
+ logprint3(stderr, mig->fProcessLog, ErrorLog(ws),
+- rc == TZ_CRITICAL
+- ? "Error allocating memory!\n"
+- : "Could not list contents of \"%s\". File is corrupted or "
+- "contains entries with bad names.\n",
+- szZipFileName);
++ "Error allocating memory!\n");
++ unzClose(UnZipHandle);
++ return TZ_CRITICAL;
++ default:
++ logprint3(stderr, mig->fProcessLog, ErrorLog(ws),
++ "Could not list contents of \"%s\". File is corrupted or "
++ "contains entries with bad names.\n", szZipFileName);
+ unzClose(UnZipHandle);
+- return rc;
++ return TZ_ERR;
+ }
+ CHECK_DYNAMIC_STRING_ARRAY(ws->FileNameArray, ws->iElements);
+
diff --git a/app-arch/torrentzip/metadata.xml b/app-arch/torrentzip/metadata.xml
index 8c0252f5120a..7f1fee17f0f1 100644
--- a/app-arch/torrentzip/metadata.xml
+++ b/app-arch/torrentzip/metadata.xml
@@ -1,22 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>alex.miller@gmx.de</email>
<name>Alexander Miller</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription>
- TorrentZip is a replacement for MameZip. The goal of the program is to
- use standard values when creating zips to create identical files over
- multiple systems. It has the ability to create a torrentzip format
- from a zip file.
+ Torrentzip converts zip archives to a standard format with some
+ pre-defined values, sorting the files, and using particular
+ compression settings so that running it on zip archives created
+ by other tools will always result in the same output. This helps
+ e.g. with sharing zip archives using BitTorrent (which is where
+ the name comes from).
</longdescription>
<upstream>
+ <remote-id type="github">0-wiz-0/trrntzip</remote-id>
<remote-id type="sourceforge">trrntzip</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/torrentzip/torrentzip-0.9.ebuild b/app-arch/torrentzip/torrentzip-0.9-r1.ebuild
index 0aa3083323bf..ad564eefcc4c 100644
--- a/app-arch/torrentzip/torrentzip-0.9.ebuild
+++ b/app-arch/torrentzip/torrentzip-0.9-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit autotools
@@ -12,17 +12,14 @@ SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
-RDEPEND="
- sys-libs/zlib"
-
-DEPEND="
- ${RDEPEND}
- app-arch/unzip"
+RDEPEND="sys-libs/zlib"
+DEPEND="${RDEPEND}"
DOCS=(README AUTHORS)
+PATCHES=("${FILESDIR}/${P}-autoconf-quote.patch")
+
src_prepare() {
default
export CPPFLAGS+=" -DOF\\(args\\)=args"
diff --git a/app-arch/torrentzip/torrentzip-1.2-r1.ebuild b/app-arch/torrentzip/torrentzip-1.2-r1.ebuild
new file mode 100644
index 000000000000..d526e0b88c10
--- /dev/null
+++ b/app-arch/torrentzip/torrentzip-1.2-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_P="trrntzip-${PV}"
+DESCRIPTION="Create identical zip archives over multiple systems"
+HOMEPAGE="https://github.com/0-wiz-0/trrntzip"
+SRC_URI="https://github.com/0-wiz-0/trrntzip/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2+ ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+DOCS=(AUTHORS NEWS.md README.md)
+PATCHES=(
+ "${FILESDIR}/${P}-checksum-detection.patch"
+)
diff --git a/app-arch/torrentzip/torrentzip-1.3.ebuild b/app-arch/torrentzip/torrentzip-1.3.ebuild
new file mode 100644
index 000000000000..7a3ce63d28a3
--- /dev/null
+++ b/app-arch/torrentzip/torrentzip-1.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit cmake python-any-r1
+
+MY_P="trrntzip-${PV}"
+DESCRIPTION="Create identical zip archives over multiple systems"
+HOMEPAGE="https://github.com/0-wiz-0/trrntzip"
+SRC_URI="https://github.com/0-wiz-0/trrntzip/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2+ ZLIB"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ ${PYTHON_DEPS}
+ >=dev-util/nihtest-1.5.0
+ )
+"
+
+DOCS=(AUTHORS NEWS.md README.md)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ if use test; then
+ local mycmakeargs=( -DPYTHONBIN="${EPYTHON}" )
+ else
+ local mycmakeargs=( -DRUN_REGRESS=NO )
+ fi
+ cmake_src_configure
+}
diff --git a/app-arch/unace/files/unace-2.5-includes.patch b/app-arch/unace/files/unace-2.5-includes.patch
new file mode 100644
index 000000000000..ca272a185041
--- /dev/null
+++ b/app-arch/unace/files/unace-2.5-includes.patch
@@ -0,0 +1,10 @@
+--- a/source/base/all/uninorm/unincore.c
++++ b/source/base/all/uninorm/unincore.c
+@@ -19,6 +19,7 @@
+ #include <string.h>
+ #include "base/all/includes.h" /* BASE_LFN_MAXLEN */
+ #include "unidata.h"
++#include "unincore.h"
+
+ /* Hangul constants */
+ #define SBase 0xAC00
diff --git a/app-arch/unace/metadata.xml b/app-arch/unace/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/app-arch/unace/metadata.xml
+++ b/app-arch/unace/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/unace/unace-2.5-r5.ebuild b/app-arch/unace/unace-2.5-r6.ebuild
index 44e46a2e81c2..48bed159fdc8 100644
--- a/app-arch/unace/unace-2.5-r5.ebuild
+++ b/app-arch/unace/unace-2.5-r6.ebuild
@@ -1,22 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="6"
+EAPI=8
inherit toolchain-funcs
DEB_VER="9"
+
DESCRIPTION="ACE unarchiver"
HOMEPAGE="http://www.winace.com/"
-SRC_URI="mirror://debian/pool/non-free/u/unace-nonfree/unace-nonfree_${PV}.orig.tar.gz
+SRC_URI="
+ mirror://debian/pool/non-free/u/unace-nonfree/unace-nonfree_${PV}.orig.tar.gz
mirror://debian/pool/non-free/u/unace-nonfree/unace-nonfree_${PV}-${DEB_VER}.debian.tar.xz"
LICENSE="freedist"
SLOT="1"
-KEYWORDS="~alpha amd64 arm hppa ppc ppc64 s390 x86 ~amd64-linux ~x86-linux ~sparc-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 arm ~hppa ppc ppc64 ~s390 x86 ~amd64-linux ~x86-linux"
-PATCHES=( "${WORKDIR}"/debian/patches/ )
+PATCHES=(
+ "${WORKDIR}"/debian/patches/
+ "${FILESDIR}"/${P}-includes.patch
+)
src_configure() {
tc-export CC
diff --git a/app-arch/unadf/metadata.xml b/app-arch/unadf/metadata.xml
index 79d462e85571..aaab041e8885 100644
--- a/app-arch/unadf/metadata.xml
+++ b/app-arch/unadf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/app-arch/unadf/unadf-0.7.12-r1.ebuild b/app-arch/unadf/unadf-0.7.12-r2.ebuild
index 1bbe4e3b7be6..5e358f5bf7e8 100644
--- a/app-arch/unadf/unadf-0.7.12-r1.ebuild
+++ b/app-arch/unadf/unadf-0.7.12-r2.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit autotools
@@ -10,13 +10,12 @@ MY_PN="adflib"
DESCRIPTION="Extract files from Amiga adf disk images"
HOMEPAGE="http://lclevy.free.fr/adflib/"
SRC_URI="http://lclevy.free.fr/${MY_PN}/${MY_PN}-${PV}.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 hppa ppc x86 ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE="static-libs"
+KEYWORDS="amd64 ~hppa ppc x86 ~x86-linux ~ppc-macos"
-S="${WORKDIR}/${MY_PN}-${PV}"
PATCHES=( "${FILESDIR}"/${PN}-0.7.12-CVE-2016-1243_CVE-2016-1244.patch )
src_prepare() {
@@ -24,11 +23,7 @@ src_prepare() {
eautoreconf
}
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
src_install() {
default
- find "${D}" -name '*.la' -delete || die
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/app-arch/unar/Manifest b/app-arch/unar/Manifest
index 270ff06cac04..1bac5fca46f0 100644
--- a/app-arch/unar/Manifest
+++ b/app-arch/unar/Manifest
@@ -1,2 +1,2 @@
-DIST XADMaster-1.10.7.tar.gz 2064770 BLAKE2B f6119dfb46f3d617fafb5847f41d6c0f3e5e87c8cd0763cd8e5986fae1d5b1c6e6761e9e7e4fa84125003979151b2b34d35ff47dc9be3271107cf53f1be22644 SHA512 3447b6d8f3f4fa5eea93c6628a1633017da6ff09c580d5ce4fd422027b3b79acbf38d6e41a059806d1e60eb25a9d66889938b32599168dc2c0ca648e1c1976b1
+DIST XADMaster-1.10.8.tar.gz 2072715 BLAKE2B ffa674a007865a7bbe3b67a97ad41ac4c4d4fcaf90a39d410a1f7668ac5dd526d0af7b523aca951a3dcc8ee61eb1b7f17db88604464504b2273471f3c31f846a SHA512 34c6c47806877763e022720ac3f6097c9c369481f2bb4a1c1c22e65e2c6250835c73bc3f73e71764810acec8950b05ae9f2dc29348ff192ef22968776fc7efe4
DIST universal-detector-1.1.tar.gz 196274 BLAKE2B d84dc1f850031213d88c288341edcbb588197f23ae0d10632ed129e73e4cc2b7670c8c862bba2165fcc7421c265e4dc3e791ea188e3d2b647bd1ab9b428bb866 SHA512 e514670b3d37b2472ed3e9cb0fdc3298a8479772264b7573411f104be554222bec2e01f73e1f35db95620fe785bee2dcf9ddc9c2b1f4ff6b522fa64d14d020f5
diff --git a/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch b/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch
new file mode 100644
index 000000000000..73053c97b86a
--- /dev/null
+++ b/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch
@@ -0,0 +1,40 @@
+Without this change, GCC 14 will fail compilation with an error:
+
+XADRAR5Parser.m: In function ‘+[XADRAR5Parser recognizeFileWithHandle:firstBytes:name:]’: XADRAR5Parser.m:79:5: warning: ‘XADRAR5Parser’ may not respond to ‘+signatureLocationInData:’
+ 79 | off_t signatureLocation = [self signatureLocationInData:data];
+ | ^~~~~
+XADRAR5Parser.m:79:5: warning: (messages without a matching method signature will be assumed to return ‘id’ and accept ‘...’ as arguments)
+XADRAR5Parser.m:79:31: error: initialization of ‘off_t’ {aka ‘long int’} from ‘id’ makes integer from pointer without a cast
+ 79 | off_t signatureLocation = [self signatureLocationInData:data];
+ | ^
+
+Submitted upstream: <https://github.com/MacPaw/XADMaster/pull/161>
+
+--- a/XADRAR5Parser.m
++++ b/XADRAR5Parser.m
+@@ -74,12 +74,6 @@ static inline BOOL IsZeroHeaderBlock(RAR5HeaderBlock block) { return IsZeroBlock
+ return 8;
+ }
+
+-+(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
+-{
+- off_t signatureLocation = [self signatureLocationInData:data];
+- return signatureLocation != RAR5SignatureNotFound;
+-}
+-
+ + (off_t)signatureLocationInData:(NSData *)data {
+ const uint8_t *bytes=[data bytes];
+ int length=[data length];
+@@ -98,6 +92,12 @@ static inline BOOL IsZeroHeaderBlock(RAR5HeaderBlock block) { return IsZeroBlock
+ return RAR5SignatureNotFound;
+ }
+
+++(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
++{
++ off_t signatureLocation = [self signatureLocationInData:data];
++ return signatureLocation != RAR5SignatureNotFound;
++}
++
+ +(NSArray *)volumesForHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
+ {
+ // Check if multipart
diff --git a/app-arch/unar/metadata.xml b/app-arch/unar/metadata.xml
index e6cd877e7798..6331a43e5661 100644
--- a/app-arch/unar/metadata.xml
+++ b/app-arch/unar/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>soap@gentoo.org</email>
- <name>David Seifert</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">MacPaw/XADMaster</remote-id>
</upstream>
diff --git a/app-arch/unar/unar-1.10.7.ebuild b/app-arch/unar/unar-1.10.8.ebuild
index 8e9518d4b8e6..77668d74dd51 100644
--- a/app-arch/unar/unar-1.10.7.ebuild
+++ b/app-arch/unar/unar-1.10.8.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit bash-completion-r1 toolchain-funcs
@@ -9,29 +9,49 @@ DESCRIPTION="Unpacker for various archiving formats, e.g. rar v3"
HOMEPAGE="https://unarchiver.c3.cx/"
SRC_URI="
https://github.com/MacPaw/XADMaster/archive/v${PV}/XADMaster-${PV}.tar.gz
- https://github.com/MacPaw/universal-detector/archive/1.1/universal-detector-1.1.tar.gz
-"
+ https://github.com/MacPaw/universal-detector/archive/1.1/universal-detector-1.1.tar.gz"
+S="${WORKDIR}/XADMaster-${PV}"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="amd64"
-BDEPEND="
- sys-devel/gcc[objc]
-"
RDEPEND="
app-arch/bzip2:=
dev-libs/icu:=
gnustep-base/gnustep-base:=
media-sound/wavpack
- sys-libs/zlib
-"
-DEPEND="${RDEPEND}
- ${BDEPEND}
- gnustep-base/gnustep-make[native-exceptions]
-"
+ sys-libs/zlib"
+DEPEND="
+ ${RDEPEND}
+ gnustep-base/gnustep-make[native-exceptions]"
+BDEPEND="
+ || (
+ sys-devel/gcc[objc]
+ gnustep-base/gnustep-make[libobjc2]
+ )"
-S="${WORKDIR}/XADMaster-${PV}"
+PATCHES=( "${FILESDIR}"/${P}-Wint-conversion.patch )
+
+check_objc_toolchain() {
+ if tc-is-gcc; then
+ has_version 'sys-devel/gcc[-objc]' &&
+ die "GCC requires sys-devel/gcc with USE=objc"
+ elif tc-is-clang; then
+ has_version 'gnustep-base/gnustep-make[-libobjc2]' &&
+ die "Clang requires gnustep-base/gnustep-make with USE=libobjc2"
+ else
+ die "${PN} can only be build using GCC or Clang"
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_objc_toolchain
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_objc_toolchain
+}
src_prepare() {
default
diff --git a/app-arch/unmakeself/Manifest b/app-arch/unmakeself/Manifest
deleted file mode 100644
index ac220ed9db06..000000000000
--- a/app-arch/unmakeself/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST unmakeself-1.1.tar.gz 3635 BLAKE2B 650a7f45dc5204f5ae42002addc5892fb3ce3d4d2b8b5ed343329cd34ae7086e1f680ddcb25123255feff1dd2a70d4427a30aa0a8ac7c0309b19847fefcb5390 SHA512 3e8a05a907b8807080208300f6c20577587a0e87000c6746ba457c276e4dff37c8d61227bd1db37e60ac20d9532290c4110a1204c8389a8a1e97a121b68c682b
diff --git a/app-arch/unmakeself/metadata.xml b/app-arch/unmakeself/metadata.xml
deleted file mode 100644
index 7a38bb900964..000000000000
--- a/app-arch/unmakeself/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/app-arch/unmakeself/unmakeself-1.1.ebuild b/app-arch/unmakeself/unmakeself-1.1.ebuild
deleted file mode 100644
index f826b09d6035..000000000000
--- a/app-arch/unmakeself/unmakeself-1.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Makeself archive extractor"
-HOMEPAGE="https://www.freshports.org/archivers/unmakeself"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="app-arch/libarchive:=[bzip2,zlib]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-src_configure() {
- append-cppflags $($(tc-getPKG_CONFIG) --cflags libarchive)
- export LDLIBS=$($(tc-getPKG_CONFIG) --libs libarchive)
-
- tc-export CC
-}
-
-src_compile() {
- emake ${PN}
-}
-
-src_install() {
- dobin unmakeself
-}
diff --git a/app-arch/unp/Manifest b/app-arch/unp/Manifest
index 85142386f91e..1388f986cc78 100644
--- a/app-arch/unp/Manifest
+++ b/app-arch/unp/Manifest
@@ -1,3 +1,3 @@
-DIST unp_2.0~pre7+nmu1.tar.bz2 17537 BLAKE2B 7ef6cfcc524daf95c7cd9dc41ba690cb8db1b1983cd45709c8764591af36d6d00631975bfef0359ac633aae1c11b73efe827e367931f73fe7c5fcc8832b0fe84 SHA512 1b30f14c8d17e0a6b149ca4795f2219e9180f814347410e7ff7fa2b9720a9d308190f2ded8fcfd11bac9b5bb7a64ffd93f140bdaffcba1127f0e15e3d2737362
-DIST unp_2.0~pre8.tar.xz 16336 BLAKE2B 6c6ffd75acda980e6c572c48944b238788a64d2bf1f854b45a3bc468da19fc6e593a8b604d99dac51b5b645ec88b27300be6af4d988a56470812a7ae92f19336 SHA512 58d2a6a9f7fe868773273532b46249109e1e757517dd46e485f2b3a77fea404aeea34edf4460e76376806ae0d28baefa55f1063919bdf1493617f1b361fe6039
+DIST unp_2.0.tar.xz 19252 BLAKE2B d807cdae6cccd846b3d138b7060b17f37f6f6962e2dd75400e86f0fd8f7f4721afbf29509dfce16beb5dac66996df45cc146d72312f859999f33d435f66890d5 SHA512 bdb2059aa3f1872efd49eb6c8e2fa3a09c05d9e1c26abdcfc4e728699c25a132ea610525461e94183263086756e9b60daeb5cecf69533578d01ab1a37b0af744
+DIST unp_2.0~pre10.tar.xz 17992 BLAKE2B 63d8c995091a1342677b6aed5854293c582cb6d42c6748ef3d92347ca75e1d3e9e5b128309299ec0b6fc0361bc14dededcc8e290fe8721aecfe82665e07998e9 SHA512 3f8f9f20eef88658b4b00efd37208d859fb3220178f9446696f755a864fea3c3dd301100668bd9c97ca9312ebe961aaf9ec523d8817b8aacb5a1ee6a36213666
DIST unp_2.0~pre9.tar.xz 16424 BLAKE2B 9042f48be0f80d5e40a08161a35c282ba458dc98cf13992835bdeecebd5fbadd33b3af9165738332cb9f508550a234a48d314332f00ecdacc808a8051eb0740b SHA512 74c9a6e143c9023bdd456dacff5c3a6e30722e259f324c066fe3eed9e4a09c38b399b381719c8677c2fa84434c1e7720384d782d97c098fa6fbcbdbf4030986e
diff --git a/app-arch/unp/files/unp-2.0_pre7_p1-remove-deprecated-have.diff b/app-arch/unp/files/unp-2.0_pre7_p1-remove-deprecated-have.diff
deleted file mode 100644
index a0838a82559f..000000000000
--- a/app-arch/unp/files/unp-2.0_pre7_p1-remove-deprecated-have.diff
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -Naur unp-2.0~pre7+nmu1/bash_completion.d/unp unp-2.0~pre7+nmu1-1/bash_completion.d/unp
---- unp-2.0~pre7+nmu1/bash_completion.d/unp 2012-05-16 22:05:13.000000000 +0200
-+++ unp-2.0~pre7+nmu1-1/bash_completion.d/unp 2014-10-22 10:34:20.343233166 +0200
-@@ -1,6 +1,5 @@
- # bash completion for unp
-
--have unp &&
- _unp()
- {
- local cur
diff --git a/app-arch/unp/metadata.xml b/app-arch/unp/metadata.xml
index 28ef3c7b080f..4da67a4f4b42 100644
--- a/app-arch/unp/metadata.xml
+++ b/app-arch/unp/metadata.xml
@@ -1,5 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person"><email>hanno@gentoo.org</email></maintainer>
+ <maintainer type="person">
+ <email>hanno@gentoo.org</email>
+ </maintainer>
</pkgmetadata>
diff --git a/app-arch/unp/unp-2.0_pre7_p1-r1.ebuild b/app-arch/unp/unp-2.0.ebuild
index cd6ef967dc03..37398ba03966 100644
--- a/app-arch/unp/unp-2.0_pre7_p1-r1.ebuild
+++ b/app-arch/unp/unp-2.0.ebuild
@@ -1,28 +1,29 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit eutils bash-completion-r1
+inherit bash-completion-r1 strip-linguas
DESCRIPTION="Script for unpacking various file formats"
HOMEPAGE="https://packages.qa.debian.org/u/unp.html"
-TEMP_PV="${PV/_pre/$'\x7e'pre}"
-MY_PV="${TEMP_PV/_p/+nmu}"
-SRC_URI="mirror://debian/pool/main/u/unp/${PN}_${MY_PV}.tar.bz2"
-S="${WORKDIR}/${PN}-${MY_PV}"
+SRC_URI="mirror://debian/pool/main/u/unp/${PN}_${PV}.tar.xz"
+S="${WORKDIR}/${P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="nls"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="nls test"
-DEPEND="nls? ( sys-devel/gettext )"
+DEPEND="nls? ( sys-devel/gettext )
+ test? ( app-arch/lzop
+ app-arch/lzip
+ app-arch/zstd )"
RDEPEND="${DEPEND}
dev-lang/perl"
-PATCHES=( "${FILESDIR}/${P}-remove-deprecated-have.diff" )
+RESTRICT="!test? ( test )"
src_compile() {
if use nls; then
@@ -40,7 +41,7 @@ src_install() {
dosym unp /usr/bin/ucat
doman debian/unp.1
dodoc debian/changelog debian/README.Debian
- dobashcomp bash_completion.d/unp
+ newbashcomp debian/unp.bash-completion unp
if use nls; then
if [ -n "$LINGUAS" ]; then
diff --git a/app-arch/unp/unp-2.0_pre8.ebuild b/app-arch/unp/unp-2.0_pre10.ebuild
index 8116fc04c3ae..c719be032835 100644
--- a/app-arch/unp/unp-2.0_pre8.ebuild
+++ b/app-arch/unp/unp-2.0_pre10.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit eutils bash-completion-r1
+inherit bash-completion-r1 strip-linguas
DESCRIPTION="Script for unpacking various file formats"
HOMEPAGE="https://packages.qa.debian.org/u/unp.html"
@@ -13,7 +13,7 @@ S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="nls"
DEPEND="nls? ( sys-devel/gettext )"
@@ -21,6 +21,9 @@ DEPEND="nls? ( sys-devel/gettext )"
RDEPEND="${DEPEND}
dev-lang/perl"
+# tests in upstream tarball are missing sample files
+RESTRICT="test"
+
src_compile() {
if use nls; then
strip-linguas -i .
diff --git a/app-arch/unp/unp-2.0_pre9.ebuild b/app-arch/unp/unp-2.0_pre9.ebuild
index 5832db6717e6..f1c6e585a03f 100644
--- a/app-arch/unp/unp-2.0_pre9.ebuild
+++ b/app-arch/unp/unp-2.0_pre9.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils bash-completion-r1
+inherit bash-completion-r1 strip-linguas
DESCRIPTION="Script for unpacking various file formats"
HOMEPAGE="https://packages.qa.debian.org/u/unp.html"
@@ -13,7 +13,7 @@ S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="nls"
DEPEND="nls? ( sys-devel/gettext )"
diff --git a/app-arch/unrar/Manifest b/app-arch/unrar/Manifest
index dd762bb57f2c..460f0cf5c907 100644
--- a/app-arch/unrar/Manifest
+++ b/app-arch/unrar/Manifest
@@ -1,2 +1,5 @@
-DIST unrar-5.9.4.tar.gz 229921 BLAKE2B d87189a6b6b3566a0efac7f72e40732ff673cdcac6f4fdaa96b5a771025f02779d74e2822053681477b3490f45817196673aa5707846767c4061ca95718557a1 SHA512 4c026bc12c38314c7df6e1b2f296be681fffa4ba525e378809063519cb5d51889fe8d3cbce16e802023354f02b45b1bcc672b79a6fa81b4baa13a374ce22c8f1
-DIST unrar-6.0.1.tar.gz 232142 BLAKE2B 0f048f67769b31c67988131b5d8cca33dc9fa2abc6b39e5be63aa8f6061cbf93fa7d7e2055641f286f6be4de2733d2a123441d26381335e2779b3c7d7004ad11 SHA512 2c88dd05252237d7d62ad34332673ac9e457bb43b0ed980be977d557d0deb3d5bd19372d41ac2e254d94e20ecb1ca62b1c15781320cf231f2a7bfa12fe176d8a
+DIST unrar-6.2.10.tar.gz 246383 BLAKE2B 6f7e7bf099f5a9de71c01b941c4cceaaf568709ac8b8e2f490f2f037c27adabc3bcde595e1330476f72204e6c5611e8c995c4c2842d9248731d876e67abc1086 SHA512 26e7febc4e62bcace7aa36e05d5341ab57813cc0c224c6a924ca909828879b0172d2cea9ab6cfdfe4bc3b51d49feb48f46df3874fa6f070f6062a15e1020271d
+DIST unrar-6.2.12.tar.gz 246918 BLAKE2B 3c7744ee5839b4d87362625a03f30e3cac3d74df988479692023b9c242c136044666ebf0470197b28b95171dae076faecf815ef50caffb747185b8433707612c SHA512 261ac3728f917f36a03c7c3c563d7775abdb06b598ab48a299d837e8fc0ca75ad885ec8e292aeb1775e87e775ed274e9e0f033001598229ec96db69d69824ddb
+DIST unrar-6.2.8.tar.gz 246249 BLAKE2B 3766f7ebd0379835cff7cce8bb2deaf86d3de7c4a37d211d8a41effeb13a5a9efc53deabb5f10cd7f49d8e144cd9c1a93cce2ca3ae74e8a2142ab3ae97ab4759 SHA512 9b956d0c4b6a13f9ff4d9e57de7284dc879070746e3792e7640481a5b5b8336142b21c4d0c66c64627630cafbed0ff019a41b8f8536299ac7cbfdb933f92f75a
+DIST unrar-6.2.9.tar.gz 246388 BLAKE2B 495af1b78d2213c6bac0e75462b3d5e9fc3bfea809bcbb672216da47cd483bcc5867b504358125c51147a0e1869568c8a822946ca8148f204eeb087671029d9d SHA512 80424348946a56b47c107b2cd78c8bc7ce7f223a4d923b137860ec50678c4f279114dd7cdc9eb6a2fa6ff8c8a059ab8d35e16e3feae9dd1433fe51479501b61c
+DIST unrar-7.0.7.tar.gz 258219 BLAKE2B 06897428ef6ae9b2e6ef3183f25c06447386c7b5ce1c1438ad0119507ccbd2f2b62ce9d45c4dc73241db4440a1f96c7d9a9f3f542c0a7967df9c08b8cd3141cb SHA512 7151a42742d4c34a8f03c58dae471f80788b76adbb52188759b7fc7357757f88fa9d980de006ce48732c40f326b92b79fb069e807c2b66d4387ee60433a8accb
diff --git a/app-arch/unrar/files/unrar-5.9.3-build.patch b/app-arch/unrar/files/unrar-5.9.3-build.patch
deleted file mode 100644
index d9cbcfd8683a..000000000000
--- a/app-arch/unrar/files/unrar-5.9.3-build.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Makefile: Fix parallel build issue
-
-If clean runs in parallel with $(OBJECTS), it is possible to build some
-objects first, then the clean target fires and deletes some, and then we
-try to link and fail.
-
-Gentoo-Bug: https://bugs.gentoo.org/528218
-
---- unrar/makefile
-+++ unrar/makefile
-@@ -142,21 +142,18 @@
- @rm -f $(OBJECTS) $(UNRAR_OBJ) $(LIB_OBJ)
- @rm -f unrar libunrar.*
-
--unrar: clean $(OBJECTS) $(UNRAR_OBJ)
-- @rm -f unrar
-+unrar: $(OBJECTS) $(UNRAR_OBJ)
- $(LINK) -o unrar $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS)
- $(STRIP) unrar
-
- sfx: WHAT=SFX_MODULE
--sfx: clean $(OBJECTS)
-- @rm -f default.sfx
-+sfx: $(OBJECTS)
- $(LINK) -o default.sfx $(LDFLAGS) $(OBJECTS)
- $(STRIP) default.sfx
-
- lib: WHAT=RARDLL
- lib: CXXFLAGS+=$(LIBFLAGS)
--lib: clean $(OBJECTS) $(LIB_OBJ)
-- @rm -f libunrar.*
-+lib: $(OBJECTS) $(LIB_OBJ)
- $(LINK) -shared -o libunrar.so $(LDFLAGS) $(OBJECTS) $(LIB_OBJ)
- $(AR) rcs libunrar.a $(OBJECTS) $(LIB_OBJ)
-
diff --git a/app-arch/unrar/files/unrar-5.5.5-honor-flags.patch b/app-arch/unrar/files/unrar-6.2.6-honor-flags.patch
index 0237e3d30f05..976f1417c861 100644
--- a/app-arch/unrar/files/unrar-5.5.5-honor-flags.patch
+++ b/app-arch/unrar/files/unrar-6.2.6-honor-flags.patch
@@ -17,30 +17,30 @@ Gentoo-Bug: https://bugs.gentoo.org/461806
DESTDIR=/usr
# Linux using LCC
-@@ -145,18 +145,19 @@ clean:
- @rm -f libunrar.a
+@@ -147,20 +147,21 @@ clean:
unrar: $(OBJECTS) $(UNRAR_OBJ)
+ @rm -f unrar
- $(LINK) -o unrar $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS)
+ $(LINK) -o unrar $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS)
$(STRIP) unrar
sfx: WHAT=SFX_MODULE
sfx: $(OBJECTS)
+ @rm -f default.sfx
- $(LINK) -o default.sfx $(LDFLAGS) $(OBJECTS)
+ $(LINK) -o default.sfx $(CXXFLAGS) $(LDFLAGS) $(OBJECTS)
$(STRIP) default.sfx
-+$(OBJECTS) $(LIB_OBJ): CXXFLAGS+=$(LIBFLAGS)
++$(OBJECTS) $(LIB_OBJ): CXXFLAGS+=$(LIBFLAGS)
+
lib: WHAT=RARDLL
-lib: CXXFLAGS+=$(LIBFLAGS)
lib: $(OBJECTS) $(LIB_OBJ)
+ @rm -f libunrar.*
- $(LINK) -shared -o libunrar.so $(LDFLAGS) $(OBJECTS) $(LIB_OBJ)
+ $(LINK) -shared -o libunrar.so $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(LIB_OBJ)
$(AR) rcs libunrar.a $(OBJECTS) $(LIB_OBJ)
install-unrar:
---
-2.13.1
-
+--
diff --git a/app-arch/unrar/metadata.xml b/app-arch/unrar/metadata.xml
index 08898384e738..29bcd146892a 100644
--- a/app-arch/unrar/metadata.xml
+++ b/app-arch/unrar/metadata.xml
@@ -1,18 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>whissi@gentoo.org</email>
- <name>Thomas Deutschmann</name>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<slots>
- <subslots>Reflect ABI of libunrar.so.</subslots>
-</slots>
-<upstream>
- <remote-id type="cpe">cpe:/a:rarlab:unrar</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <slots>
+ <subslots>Reflect ABI of libunrar.so.</subslots>
+ </slots>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:rarlab:unrar</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/unrar/unrar-5.9.4.ebuild b/app-arch/unrar/unrar-6.2.10.ebuild
index 5665bd061bcf..64caffbf3b3a 100644
--- a/app-arch/unrar/unrar-5.9.4.ebuild
+++ b/app-arch/unrar/unrar-6.2.10.ebuild
@@ -1,30 +1,22 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit flag-o-matic multilib toolchain-funcs
+inherit multilib toolchain-funcs
MY_PN="${PN}src"
DESCRIPTION="Uncompress rar files"
HOMEPAGE="https://www.rarlab.com/rar_add.htm"
SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
LICENSE="unRAR"
-# subslot = soname version
-SLOT="0/5"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="!<=app-arch/unrar-gpl-0.0.1_p20080417"
-
-S="${WORKDIR}/unrar"
+SLOT="0/6" # subslot = soname version
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-PATCHES=(
- "${FILESDIR}"/${PN}-5.9.3-build.patch
- "${FILESDIR}"/${PN}-5.5.5-honor-flags.patch
-)
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
src_prepare() {
default
@@ -39,7 +31,7 @@ src_prepare() {
}
src_configure() {
- mkdir -p build-{lib,bin}
+ mkdir -p build-{lib,bin} || die
printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
cp build-{lib,bin}/Makefile || die
}
diff --git a/app-arch/unrar/unrar-6.2.12-r1.ebuild b/app-arch/unrar/unrar-6.2.12-r1.ebuild
new file mode 100644
index 000000000000..66957ceed24c
--- /dev/null
+++ b/app-arch/unrar/unrar-6.2.12-r1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib toolchain-funcs
+
+MY_PN="${PN}src"
+
+DESCRIPTION="Uncompress rar files"
+HOMEPAGE="https://www.rarlab.com/rar_add.htm"
+SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
+
+LICENSE="unRAR"
+SLOT="0/6" # subslot = soname version
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
+
+src_prepare() {
+ default
+
+ local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
+ else
+ sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
+ fi
+ sed -i "${sed_args[@]}" makefile || die
+}
+
+src_configure() {
+ mkdir -p build-{lib,bin} || die
+ printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
+ cp build-{lib,bin}/Makefile || die
+}
+
+src_compile() {
+ unrar_make() {
+ emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
+ }
+
+ unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
+
+ unrar_make -C build-bin
+}
+
+src_install() {
+ dobin build-bin/unrar
+ dodoc readme.txt
+
+ dolib.so build-lib/libunrar*
+
+ # unrar doesn't officially install headers, but unofficially, software
+ # depends on it anyway. There is no standard for where to install them,
+ # but the most common location (shared by nearly all vendors) is "unrar".
+ # FreeBSD alone uses "libunrar". Gentoo formerly used "libunrar6" and
+ # had a compat symlink for FreeBSD, then passed the compat location in
+ # ./configure scripts e.g. for sys-fs/rar2fs. Software in the wild
+ # seems to expect either "unrar" or "libunrar".
+ # See: https://bugs.gentoo.org/916036
+ #
+ # We now use the "standard" (hah) location, and keep the compat symlink but
+ # change the destination. The version-suffixed location lacks utility, but
+ # we would keep it if we could, just in case -- unfortunately portage is
+ # buggy: https://bugs.gentoo.org/834600
+ #
+ # Hopefully, no one has ever actually used it and therefore this does not
+ # matter. The odds are on our side, since it periodically changed location
+ # arbitrarily.
+ insinto /usr/include/unrar
+ doins *.hpp
+ dosym unrar /usr/include/libunrar
+
+ find "${ED}" -type f -name "*.a" -delete || die
+}
diff --git a/app-arch/unrar/unrar-6.0.1.ebuild b/app-arch/unrar/unrar-6.2.12.ebuild
index bd059f18fdd7..c97982261acd 100644
--- a/app-arch/unrar/unrar-6.0.1.ebuild
+++ b/app-arch/unrar/unrar-6.2.12.ebuild
@@ -1,30 +1,22 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit flag-o-matic multilib toolchain-funcs
+inherit multilib toolchain-funcs
MY_PN="${PN}src"
DESCRIPTION="Uncompress rar files"
HOMEPAGE="https://www.rarlab.com/rar_add.htm"
SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
LICENSE="unRAR"
-# subslot = soname version
-SLOT="0/6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="!<=app-arch/unrar-gpl-0.0.1_p20080417"
-
-S="${WORKDIR}/unrar"
+SLOT="0/6" # subslot = soname version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-PATCHES=(
- "${FILESDIR}"/${PN}-5.9.3-build.patch
- "${FILESDIR}"/${PN}-5.5.5-honor-flags.patch
-)
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
src_prepare() {
default
@@ -39,7 +31,7 @@ src_prepare() {
}
src_configure() {
- mkdir -p build-{lib,bin}
+ mkdir -p build-{lib,bin} || die
printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
cp build-{lib,bin}/Makefile || die
}
diff --git a/app-arch/unrar/unrar-6.2.8.ebuild b/app-arch/unrar/unrar-6.2.8.ebuild
new file mode 100644
index 000000000000..64caffbf3b3a
--- /dev/null
+++ b/app-arch/unrar/unrar-6.2.8.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib toolchain-funcs
+
+MY_PN="${PN}src"
+
+DESCRIPTION="Uncompress rar files"
+HOMEPAGE="https://www.rarlab.com/rar_add.htm"
+SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
+
+LICENSE="unRAR"
+SLOT="0/6" # subslot = soname version
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
+
+src_prepare() {
+ default
+
+ local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
+ else
+ sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
+ fi
+ sed -i "${sed_args[@]}" makefile || die
+}
+
+src_configure() {
+ mkdir -p build-{lib,bin} || die
+ printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
+ cp build-{lib,bin}/Makefile || die
+}
+
+src_compile() {
+ unrar_make() {
+ emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
+ }
+
+ unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
+
+ unrar_make -C build-bin
+}
+
+src_install() {
+ dobin build-bin/unrar
+ dodoc readme.txt
+
+ dolib.so build-lib/libunrar*
+
+ insinto /usr/include/libunrar${PV%.*.*}
+ doins *.hpp
+ dosym libunrar${PV%.*.*} /usr/include/libunrar
+
+ find "${ED}" -type f -name "*.a" -delete || die
+}
diff --git a/app-arch/unrar/unrar-6.2.9.ebuild b/app-arch/unrar/unrar-6.2.9.ebuild
new file mode 100644
index 000000000000..c97982261acd
--- /dev/null
+++ b/app-arch/unrar/unrar-6.2.9.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib toolchain-funcs
+
+MY_PN="${PN}src"
+
+DESCRIPTION="Uncompress rar files"
+HOMEPAGE="https://www.rarlab.com/rar_add.htm"
+SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
+
+LICENSE="unRAR"
+SLOT="0/6" # subslot = soname version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
+
+src_prepare() {
+ default
+
+ local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
+ else
+ sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
+ fi
+ sed -i "${sed_args[@]}" makefile || die
+}
+
+src_configure() {
+ mkdir -p build-{lib,bin} || die
+ printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
+ cp build-{lib,bin}/Makefile || die
+}
+
+src_compile() {
+ unrar_make() {
+ emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
+ }
+
+ unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
+
+ unrar_make -C build-bin
+}
+
+src_install() {
+ dobin build-bin/unrar
+ dodoc readme.txt
+
+ dolib.so build-lib/libunrar*
+
+ insinto /usr/include/libunrar${PV%.*.*}
+ doins *.hpp
+ dosym libunrar${PV%.*.*} /usr/include/libunrar
+
+ find "${ED}" -type f -name "*.a" -delete || die
+}
diff --git a/app-arch/unrar/unrar-7.0.7.ebuild b/app-arch/unrar/unrar-7.0.7.ebuild
new file mode 100644
index 000000000000..dcc656ed9f4f
--- /dev/null
+++ b/app-arch/unrar/unrar-7.0.7.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib toolchain-funcs
+
+MY_PN="${PN}src"
+
+DESCRIPTION="Uncompress rar files"
+HOMEPAGE="https://www.rarlab.com/rar_add.htm"
+SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/unrar"
+
+LICENSE="unRAR"
+SLOT="0/7" # subslot = soname version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=( "${FILESDIR}/${PN}-6.2.6-honor-flags.patch" )
+
+src_prepare() {
+ default
+
+ local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
+ else
+ sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
+ fi
+ sed -i "${sed_args[@]}" makefile || die
+}
+
+src_configure() {
+ mkdir -p build-{lib,bin} || die
+ printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
+ cp build-{lib,bin}/Makefile || die
+}
+
+src_compile() {
+ unrar_make() {
+ emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
+ }
+
+ unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
+ ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
+
+ unrar_make -C build-bin
+}
+
+src_install() {
+ dobin build-bin/unrar
+ dodoc readme.txt
+
+ dolib.so build-lib/libunrar*
+
+ # unrar doesn't officially install headers, but unofficially, software
+ # depends on it anyway. There is no standard for where to install them,
+ # but the most common location (shared by nearly all vendors) is "unrar".
+ # FreeBSD alone uses "libunrar". Gentoo formerly used "libunrar6" and
+ # had a compat symlink for FreeBSD, then passed the compat location in
+ # ./configure scripts e.g. for sys-fs/rar2fs. Software in the wild
+ # seems to expect either "unrar" or "libunrar".
+ # See: https://bugs.gentoo.org/916036
+ #
+ # We now use the "standard" (hah) location, and keep the compat symlink but
+ # change the destination. The version-suffixed location lacks utility, but
+ # we would keep it if we could, just in case -- unfortunately portage is
+ # buggy: https://bugs.gentoo.org/834600
+ #
+ # Hopefully, no one has ever actually used it and therefore this does not
+ # matter. The odds are on our side, since it periodically changed location
+ # arbitrarily.
+ insinto /usr/include/unrar
+ doins *.hpp
+ dosym unrar /usr/include/libunrar
+
+ find "${ED}" -type f -name "*.a" -delete || die
+}
diff --git a/app-arch/unrpa/metadata.xml b/app-arch/unrpa/metadata.xml
index d3970960d42d..6f03c8b2ed2b 100644
--- a/app-arch/unrpa/metadata.xml
+++ b/app-arch/unrpa/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>bircoph@gentoo.org</email>
- <name>Andrew Savchenko</name>
+ <maintainer type="person" proxied="yes">
+ <email>contact@hacktivis.me</email>
+ <name>Haelwenn (lanodan) Monnier</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<longdescription>
Unrpa is a script to extract files from archives created for
diff --git a/app-arch/unrpa/unrpa-2.3.0.ebuild b/app-arch/unrpa/unrpa-2.3.0-r1.ebuild
index cc57f38ebbfe..4e143eed4708 100644
--- a/app-arch/unrpa/unrpa-2.3.0.ebuild
+++ b/app-arch/unrpa/unrpa-2.3.0-r1.ebuild
@@ -1,14 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7,8} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
-SRC_URI="https://github.com/Lattyware/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
DESCRIPTION="Ren'Py's RPA data file extractor"
HOMEPAGE="https://github.com/Lattyware/unrpa"
+SRC_URI="https://github.com/Lattyware/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
LICENSE="GPL-3"
SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/app-arch/unshield/Manifest b/app-arch/unshield/Manifest
index e577bd24fc38..a91788422420 100644
--- a/app-arch/unshield/Manifest
+++ b/app-arch/unshield/Manifest
@@ -1 +1 @@
-DIST unshield-1.4.3.tar.gz 58822 BLAKE2B 89e23462610d7ffd25358cb1d9f234b5c80a580deb60e85610ddacc8e3aa92420cb0e885e80375089e93786565824813f23c54f7c4d60b7773f23d174c98e5d7 SHA512 2f058e0a28d0497e2afe231ded1b1bb16745401398eb1035e628d263351b10a1343c9664f3937b8912755db9dc5236a1b43e9bcba596affb7aa8b036f49382aa
+DIST unshield-1.5.1.tar.gz 67454 BLAKE2B 7def714e8d74312de8b822b0add92a803fadda0394252587219c7379791ec33680bf9430c6811e71354fd2e9ccc91e28697e31a2377ecc16aa43edea1ce30e57 SHA512 acb130c461bed66dc3804394be067a68aea96a7cd20b348e713f64a11bf642b74f68fc172f220a9790b44573abbe01ed4585191158f27c40e863918a7342c1ca
diff --git a/app-arch/unshield/files/unshield-1.4.3-mandir.patch b/app-arch/unshield/files/unshield-1.4.3-mandir.patch
deleted file mode 100644
index 49f634fa8631..000000000000
--- a/app-arch/unshield/files/unshield-1.4.3-mandir.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From cf53f87fae324e1a4c5d9ebd49b88947a9b02267 Mon Sep 17 00:00:00 2001
-From: Dan Church <amphetamachine@gmail.com>
-Date: Fri, 2 Nov 2018 11:00:20 -0500
-Subject: [PATCH] Fix man page install path
-
-Use the standard CMake variable to determine location.
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e0c20d3..0aeecb5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -87,5 +87,5 @@ endif ()
- add_subdirectory(lib)
- add_subdirectory(src)
-
--install(FILES man/unshield.1 DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/man/man1)
-+install(FILES man/unshield.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libunshield.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
diff --git a/app-arch/unshield/metadata.xml b/app-arch/unshield/metadata.xml
index 9163e2a027d2..083960bed469 100644
--- a/app-arch/unshield/metadata.xml
+++ b/app-arch/unshield/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<upstream>
diff --git a/app-arch/unshield/unshield-1.4.3.ebuild b/app-arch/unshield/unshield-1.5.1.ebuild
index 6f191e78c819..a016bb33cdc4 100644
--- a/app-arch/unshield/unshield-1.4.3.ebuild
+++ b/app-arch/unshield/unshield-1.5.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit cmake
@@ -11,20 +11,16 @@ SRC_URI="https://github.com/twogood/unshield/archive/${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ~hppa ~ppc x86"
+KEYWORDS="amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv x86"
-# OpenSSL (or LibreSSL) is detected at build time, and used to determine
+# OpenSSL is detected at build time, and used to determine
# whether or not a hand-rolled md5 implementation is used. The build
# system prefers OpenSSL's implementation if it's available, and OpenSSL
# is common enough, so we prefer it too. Since the dependency is
-# automagic (there's no way to hide it), we require Open/LibreSSL
+# automagic (there's no way to hide it), we require OpenSSL
# unconditionally.
-IUSE="libressl"
DEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
sys-libs/zlib"
RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}/${P}-mandir.patch" )
diff --git a/app-arch/unzip/Manifest b/app-arch/unzip/Manifest
index dce593202f55..491344bfc0ce 100644
--- a/app-arch/unzip/Manifest
+++ b/app-arch/unzip/Manifest
@@ -1,2 +1,2 @@
DIST unzip60.tar.gz 1376845 BLAKE2B 5016d300b4452018a391f4ebc03c6960c068df400a0407c0c60bd7bb5ec5012031f916d8b204a6149ba291c2c35beba40d9b43c76fc093026e79471329ab0e47 SHA512 0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d
-DIST unzip_6.0-25.debian.tar.xz 23096 BLAKE2B 09cd89165c0354431fa0eb946bb8f8355fa09ef81cd3e3ea03e53ca7f465b323364204ffe11d8e58eeb5b46e40be598d4f709b621d163bfde09070b6847db2a6 SHA512 13c16db420fa4a34be3090a9acdd79b01320da40ac5aa89a9dfca03e64b914b28eb72aff3882d02a8197457bcb8eeb9473c998cf6920e511883c9289a949fb21
+DIST unzip_6.0-27.debian.tar.xz 24980 BLAKE2B e53a96f12af0cf5227600c73a35003484fca5de138cd37991eb1eb25b97b80371c3a566d989feeb04deb1a93acd9444253b091cd7e920b23520c87c5f5a94eeb SHA512 e1e605f023c7b314a6c5b2857a3bd630350df2d7e4bf6bb38ab8594f967336384666b4db8afad931251b85261ee4e2c38d78641c74ac7e5fd02523f26e92ddb2
diff --git a/app-arch/unzip/metadata.xml b/app-arch/unzip/metadata.xml
index ed43f8ee64f6..80e20aa4d02a 100644
--- a/app-arch/unzip/metadata.xml
+++ b/app-arch/unzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -10,6 +10,7 @@
</use>
<upstream>
<remote-id type="cpe">cpe:/a:info-zip:unzip</remote-id>
+ <remote-id type="github">madler/unzip</remote-id>
<remote-id type="sourceforge">infozip</remote-id>
</upstream>
</pkgmetadata>
diff --git a/app-arch/unzip/unzip-6.0_p25-r1.ebuild b/app-arch/unzip/unzip-6.0_p27-r1.ebuild
index 14c6c97da95d..c2354e7edc67 100644
--- a/app-arch/unzip/unzip-6.0_p25-r1.ebuild
+++ b/app-arch/unzip/unzip-6.0_p27-r1.ebuild
@@ -1,22 +1,22 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit toolchain-funcs flag-o-matic
+inherit flag-o-matic multilib toolchain-funcs
MY_PV="${PV//.}"
MY_PV="${MY_PV%_p*}"
MY_P="${PN}${MY_PV}"
DESCRIPTION="unzipper for pkzip-compressed files"
-HOMEPAGE="http://www.info-zip.org/"
+HOMEPAGE="https://infozip.sourceforge.net/UnZip.html"
SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz
mirror://debian/pool/main/u/${PN}/${PN}_${PV/_p/-}.debian.tar.xz"
LICENSE="Info-ZIP"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="bzip2 natspec unicode"
DEPEND="bzip2? ( app-arch/bzip2 )
@@ -25,15 +25,21 @@ RDEPEND="${DEPEND}"
S="${WORKDIR}/${MY_P}"
+PATCHES=(
+ "${WORKDIR}"/debian/patches
+ "${FILESDIR}"/${PN}-6.0-no-exec-stack.patch
+ "${FILESDIR}"/${PN}-6.0-format-security.patch
+ "${FILESDIR}"/${PN}-6.0-fix-false-overlap-detection-on-32bit-systems.patch
+)
+
src_prepare() {
- local deb="${WORKDIR}"/debian/patches
- rm "${deb}"/02-this-is-debian-unzip.patch || die
- eapply "${deb}"/*.patch
-
- eapply "${FILESDIR}"/${PN}-6.0-no-exec-stack.patch
- eapply "${FILESDIR}"/${PN}-6.0-format-security.patch
- eapply "${FILESDIR}"/${PN}-6.0-fix-false-overlap-detection-on-32bit-systems.patch
- use natspec && eapply "${FILESDIR}/${PN}-6.0-natspec.patch" #275244
+ # bug #275244
+ use natspec && PATCHES+=( "${FILESDIR}"/${PN}-6.0-natspec.patch )
+
+ rm "${WORKDIR}"/debian/patches/02-this-is-debian-unzip.patch || die
+
+ default
+
sed -i -r \
-e '/^CFLAGS/d' \
-e '/CFLAGS/s:-O[0-9]?:$(CFLAGS) $(CPPFLAGS):' \
@@ -52,31 +58,30 @@ src_prepare() {
# Delete bundled code to make sure we don't use it.
rm -r bzip2 || die
-
- eapply_user
}
src_configure() {
case ${CHOST} in
i?86*-*linux*) TARGET="linux_asm" ;;
*linux*) TARGET="linux_noasm" ;;
- i?86*-*bsd* | \
- i?86*-dragonfly*) TARGET="freebsd" ;; # mislabelled bsd with x86 asm
- *bsd* | *dragonfly*) TARGET="bsd" ;;
*-darwin*) TARGET="macosx" ;;
- *-cygwin*) TARGET="cygwin" ;;
- *) die "Unknown target; please update the ebuild to handle ${CHOST} " ;;
+ *-solaris*) TARGET="generic" ;;
+ *) die "Unknown target; please update the ebuild to handle ${CHOST}" ;;
esac
+ # Needed for Clang 16
+ append-flags -std=gnu89
+
[[ ${CHOST} == *linux* ]] && append-cppflags -DNO_LCHMOD
use bzip2 && append-cppflags -DUSE_BZIP2
use unicode && append-cppflags -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE -DUSE_ICONV_MAPPING
- append-cppflags -DLARGE_FILE_SUPPORT #281473
+
+ # bug #281473
+ append-cppflags -DLARGE_FILE_SUPPORT
}
src_compile() {
- ASFLAGS="${ASFLAGS} $(get_abi_var CFLAGS)" \
- emake -f unix/Makefile ${TARGET}
+ ASFLAGS="${ASFLAGS} $(get_abi_CFLAGS)" emake -f unix/Makefile ${TARGET}
}
src_install() {
diff --git a/app-arch/upx-bin/Manifest b/app-arch/upx-bin/Manifest
index 6ed7ea812201..99b8f0e2dd90 100644
--- a/app-arch/upx-bin/Manifest
+++ b/app-arch/upx-bin/Manifest
@@ -1,7 +1,14 @@
-DIST upx-3.96-amd64_linux.tar.xz 462784 BLAKE2B bac24742528b241c15bb49cfd6f006c485c28c051606deefc9b3c64d045658d029fe8dd1110120b6c21c03c30c0220ff8638d7e254a0376037b0d0ab013e9f3d SHA512 b4e7ad9ca58e07a0a59bcc1959d7901b1960a0975e4030b16c6aebfccd2f5f9163318f8f5b4a08bfd513138fe4c0fa3e3683f9141f221faa7bdfb8eaba4d0782
-DIST upx-3.96-arm64_linux.tar.xz 462376 BLAKE2B 202e888def2d60dab9d119548ac85ac6dcd0bff7e0c442fccd9a81961dc10ad96e7fe19b4a7a250c65d0bf9dd49ced8cdc7fdfb08cc7b75953a02afbff682865 SHA512 f1f6556068df27747dd40cdce3f3dfeb5c9a8723bfa76772715db69473267dd11242bf026c5a45e869b0f343559ede232d9a0067f4e4adce555cef1f26013f65
-DIST upx-3.96-armeb_linux.tar.xz 418060 BLAKE2B bb987a0a1466b3e5f4f2797888bf28c844f42eab3800dae00106cf4078c7196d6737ce9a3b9d1792d1ad1a190da8e90f2d29272127a20e4b2a9f5551511659ff SHA512 1bb570926a44c5471e00e3e2797728fa8122bc4035884f8fe8d7f4f3100e7dbddb84c80ad13c02d1a7454b1df504f96b8c0543913b1963c434ee2191d748e486
-DIST upx-3.96-i386_linux.tar.xz 485836 BLAKE2B 1bbcbde3d510eec9a38876958bb127eebe46c1f18146a62e5697fcfac0aa34bc910f3908e1783541466e46b305cdfd353902682c97301df38cd0550ca0302c34 SHA512 c679ddaf447735378d116cbff48276e13f9703f19a11364cad411915a153e2d7a6377f2ae8ce0f0383557ec889f44bb9860fd0b65bafce9935c6f381d485b13d
-DIST upx-3.96-mipsel_linux.tar.xz 483832 BLAKE2B c7f79ecc0e9f0b3f4ae9beaf0dc06e43e4cd747fde5bbd8d24505a008171f55c14ef411927cd112dd7fb170923679266170975e89cbeab43b17d842c20e29ff0 SHA512 252f64bb2d44d687daca645b1e0cd91665a562e86e1ce8fa95b57709134f74810f29f5792f7b8a1fe6c0517728632613a202a209465f1bd56ccbb383d9eea1ae
-DIST upx-3.96-powerpc64le_linux.tar.xz 505260 BLAKE2B 9e92e5e72436a3309c788a96a03c98bfd53bf51d3a22e85c6e58669b8c5536e107949fa860b25e1abc759b229aef76607819e62db353983f6f87f04d59395599 SHA512 8b577444366288427d6b114793b3f8fb42bf223b82bb78a391e5233c3cb3fe6906722ff7430aeaa764ef3feb77f052da469eab9d0dee90182929beefc5b1f17c
-DIST upx-3.96-powerpc_linux.tar.xz 479488 BLAKE2B 2d07dd57b742dd5a3ddcc86298618a939bd46a4af6f9bed41a3e0f12456bffb0ba7d76c866076489cb03130a9b9d84493f5401db5e76571cda4d7e9d65bef691 SHA512 a8f38f2467bc31d8cff2dc0fed191d1451aed766ab49336c7c99fe1b1a48455b08d9d45b14c78d655bc3c811c5fa2466701e1a990a5c954b0ce84499458024cb
+DIST upx-4.1.0-amd64_linux.tar.xz 584124 BLAKE2B c681883799a18d8ab05c06fc0d6890ae14f14191fabaf2655d91dc35ef51c18e822dfb40fcfb7a6a2952c65967e2941c5c5a5a8d75ea9d6fee93007de2358d72 SHA512 43739e7abcb895b55e84836eaab50540aba2eda45913d75412228428e64983e1fe29d7c21a471a1b6ebcdc331b7da6051775ffabb59f67a38b52d4d61e74e0ae
+DIST upx-4.1.0-arm64_linux.tar.xz 596652 BLAKE2B 7ce7deff35245aa8f63b3340a22ef94691f45eca3b2236016d333d7acf6ed254d68491b574b31fb49af2faeaabbd67259183d06378bf3dcd2da7aa1b4f3390ba SHA512 267c954cf58c3c3e4d89fb754970beb200fe26ea34bd67ab8775d579eadb739e2195579c590a09ea633a514635ac6de838803ae0d79eb37a92e18ce12fe0ac5a
+DIST upx-4.1.0-armeb_linux.tar.xz 595696 BLAKE2B 56fe546dea5b352c8016cfa75d2676dc3b7da5029accc55888ac6abffa768f786adac11a74269e074473cf30e2ea9e5ba5761a886259f242be34efd1f81a31e9 SHA512 41e73b42300ee3ababca13cf8e60373254288c6f6e0d7b9df1d245f12c1657ddc2f89fbaaa88b503d6959f32433d846c6eef8b81f8068be229fa018f614f2cbf
+DIST upx-4.1.0-i386_linux.tar.xz 620220 BLAKE2B db56d61ae8abe1e0a776f994bcd855f96c650789f6a43e0ea33d1d73868b2d63dc5f371b998cf2cef06f3c63ad4ba12600e5cd9faa37ceeb5f723fe05914026a SHA512 5de3870fa5ac2c1e6375035f15d0d8efc7e47a5e1b8ef38872e0631ffbb060cbb1e8494814b3e3b3f6507c4bf44b42c3da554562a5b31b8283f3f39fba5a1ece
+DIST upx-4.1.0-mipsel_linux.tar.xz 678296 BLAKE2B 6c7601405b66c25ea7d5a902d137a737ea9f88c92ab152cd322db03fff2f4166802d41321aedac33ef31f903362ef7f6896998916a417a97a5fd539250fb1914 SHA512 23c0fc515bfd1cad35ad1241ecedfc938b8061e63311abeee3eb0c01f9dc502ce9d4be68e0f19354893b0936c1bd9e6795e40c458255e18df63edf0f42424157
+DIST upx-4.1.0-powerpc64le_linux.tar.xz 674196 BLAKE2B cf6dfeea30f5054d8c9f69d88b8ff8c3d6f5e50e0ceab8fef8b51b403b96e571f2d73411d214743baedd7c12711047e0595349ca466373871a433035ca6cde30 SHA512 0f19ea1e04e7e226d2cd864e556170c7324f15bd3163458be1316ff9366b670eafe8a2d781220308efdb930941cb841a9a33702db7df61fec4b0521835a54bc7
+DIST upx-4.1.0-powerpc_linux.tar.xz 675776 BLAKE2B 1ba5df26208c5781c33b18b7a1036a83bd9409a49fb30e54c64f04f16ec7a99bb83bbbc89dfdd9aff42acc866976803cc81706d077cab8275887999462ed44d0 SHA512 91584f0b3d257bc4b29631bf45313f9d226cd53e8629b0655bbb7d2b4c7a5450cfbf2b52c108bb7c727a17ffdb4afcb4baa9cb029c30dae057bf2d717d8ffea6
+DIST upx-4.2.3-amd64_linux.tar.xz 589416 BLAKE2B 88eb4f85477c589e7682b13faee4f9df8cb2021782e88cdde7f82c49dd77cfede269bef8f476e994749fcbadae459de8192a38aa0e17928a33156c54c032f8ae SHA512 0ec084ba2049cd283e5a14124bc130b69b55d1cafb19bb342516cf0a45ace4f247a0f11aaf0c302224998372222853768fcd8a50fd1c7828cdf9f1b0edfd47f9
+DIST upx-4.2.3-arm64_linux.tar.xz 600184 BLAKE2B 7d80b0eba5cef383af1cf8b31b22cd7e51002292f250f84313609338a2878b5a88c9caea8e8df4936bbd00ffc326b806e6dff897651f2219305e7abb56702a15 SHA512 1c7ac30057b564a9ae5ee4835f0662b203e1915931d82dad9369dd4d80565959f32afff07898b7a59630ec883cb215b6f41356abf35e5b400dde7ab4e9f88541
+DIST upx-4.2.3-armeb_linux.tar.xz 601892 BLAKE2B 5770139392ca379be96a7181420557d964ece2766e0dad0a315d0629b3e49b543cc8fbb3387e17cc92d26fdad65ff628341ef53e256c8ae910a744409d47d492 SHA512 bed641247a73b78cddb22940655691f60d87d7bcf3050d5ad14b3abc569c83f824433697a6790e3dd5fe029d6df2aad6878da13bb6fc8979d8a5e224d04a5504
+DIST upx-4.2.3-i386_linux.tar.xz 640800 BLAKE2B 995b9814ac25acbb10559f1b7594352cf80c104b554f0033391b7972b741cf35eed89cba6208f09298e08b861f4be17f567151793e504a7b8310da663faf7670 SHA512 bba0ca8f8438e01259ed2a3a30127777ea7cce3674b03eb5d7a96c32ed0028d3b06ab199973644d70e09aa405dec303434b4e318d99e1aa8d9db1c12c1deeb81
+DIST upx-4.2.3-mipsel_linux.tar.xz 684724 BLAKE2B e540b8b0ee7365a8b64ace9370f4f8c182995218eb1b4230ae094baddb75178e7eab06bd693f663c5e1f38f96ce66aa036f6792fcc6cedd9c8554a85b23a9027 SHA512 70e5fd35d36a6118afe10594ec17076ea0f4ba954edf7a15dd91a7dad1ca3ee9ed717fd31865fcd5611cb551d4f53b946daa14ce84d7a33f74b4d3ee85f7512b
+DIST upx-4.2.3-powerpc64le_linux.tar.xz 673892 BLAKE2B cb48edf50219d1abe2524661dae7f0d3e5adbcf84db5d913c13a392b0ce6dc9d6c3c5589a2898d1d192d596ade52aa32d612849de21edba46eb807e2d01b76c0 SHA512 016ef2ed437bedd8c3c7d26be268d5a183a32b0290968bbf84318d32d0bc7187171d14d2be717c18b00bdefcfd4d068257780d1fd34dbcd300c9d4f759f05e34
+DIST upx-4.2.3-powerpc_linux.tar.xz 677584 BLAKE2B cb3a835fccf7e233e7dc8bbd4bee226901bbd8c82c5210199ce713cab1c03fa2ab6ada5825f7052d01688db571e1466acee963b4e09787cc65ec07791981f33c SHA512 deb0a6f088a62642142b02f2fc73790dc7c5b60cf6189fe9cde2aa259b9ec777ac5007c9168c4e5d71beb24d268d18b04c4c3e326a693edcb80d487dc3915145
diff --git a/app-arch/upx-bin/metadata.xml b/app-arch/upx-bin/metadata.xml
index b1093ce78b05..066d2703e71d 100644
--- a/app-arch/upx-bin/metadata.xml
+++ b/app-arch/upx-bin/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>azamat.hackimov@gmail.com</email>
<name>Azamat H. Hackimov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/app-arch/upx-bin/upx-bin-3.96.ebuild b/app-arch/upx-bin/upx-bin-4.1.0.ebuild
index 7caa782afd3c..c715b092fa07 100644
--- a/app-arch/upx-bin/upx-bin-3.96.ebuild
+++ b/app-arch/upx-bin/upx-bin-4.1.0.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit pax-utils
@@ -17,14 +17,15 @@ SRC_URI="x86? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-i386
ppc? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-powerpc_linux.tar.xz )
ppc64? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-powerpc64le_linux.tar.xz )"
-LICENSE="GPL-2"
+S="${WORKDIR}"
+
+LICENSE="GPL-2+ UPX-exception"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+KEYWORDS="-* amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86"
RESTRICT="strip"
RDEPEND="!app-arch/upx"
-
-S="${WORKDIR}"
+BDEPEND="app-arch/xz-utils[extra-filters]"
QA_PREBUILT="/opt/bin/upx"
@@ -34,5 +35,5 @@ src_install() {
dobin upx
pax-mark -m "${ED}"/opt/bin/upx
doman upx.1
- dodoc upx.doc BUGS NEWS README* THANKS upx.html
+ dodoc NEWS README THANKS.txt upx-doc.html upx-doc.txt
}
diff --git a/app-arch/upx-bin/upx-bin-4.2.3.ebuild b/app-arch/upx-bin/upx-bin-4.2.3.ebuild
new file mode 100644
index 000000000000..1014c4fbaab6
--- /dev/null
+++ b/app-arch/upx-bin/upx-bin-4.2.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils
+
+MY_P="${PN/-bin}-${PV}"
+
+DESCRIPTION="Ultimate Packer for eXecutables, binary version with proprietary NRV compression"
+HOMEPAGE="https://upx.github.io/"
+SRC_URI="x86? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-i386_linux.tar.xz )
+ amd64? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-amd64_linux.tar.xz )
+ arm64? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-arm64_linux.tar.xz )
+ arm? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-armeb_linux.tar.xz )
+ mips? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-mipsel_linux.tar.xz )
+ ppc? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-powerpc_linux.tar.xz )
+ ppc64? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-powerpc64le_linux.tar.xz )"
+
+S="${WORKDIR}"
+
+LICENSE="GPL-2+ UPX-exception"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+RESTRICT="strip"
+
+RDEPEND="!app-arch/upx"
+BDEPEND="app-arch/xz-utils[extra-filters]"
+
+QA_PREBUILT="/opt/bin/upx"
+
+src_install() {
+ cd ${MY_P}* || die
+ into /opt
+ dobin upx
+ pax-mark -m "${ED}"/opt/bin/upx
+ doman upx.1
+ dodoc NEWS README THANKS.txt upx-doc.html upx-doc.txt
+}
diff --git a/app-arch/upx/Manifest b/app-arch/upx/Manifest
index 1464eec2d85e..58606ce802e6 100644
--- a/app-arch/upx/Manifest
+++ b/app-arch/upx/Manifest
@@ -1 +1,2 @@
-DIST upx-3.96-src.tar.xz 792524 BLAKE2B 21af85dbcfdd1bf0151a653c865db13c9f30b9de0b9b4b94557ddd55736c7053dd829c5d72b9a7e5aa94a71ecc0151145dd66d7d98ded178c50ff7357d0ba442 SHA512 2d4d1be21d274d9bfdee9b9815396f5e5ff0bcdfb781b7be5fafa4d1e224028e412ec5f5ba607c482671aae27ccf9069abb2db0fb58f78f3a102a51897df2b11
+DIST upx-4.1.0-src.tar.xz 1267708 BLAKE2B ef7884028a97b1d7e542fc27756b705582786a22d193b1eef40d0db16580958baddc3baa44429b5ba2c0f7b5d4d0f4f79fdeb777af016b962b07c7639a319090 SHA512 de8306e833198d7f470c050b05c6111a50ea94f2e757c1006433742871ccd93fd7412f942cd776e9eac6c91e379545d72f070f3fe928e75e5d5092b766474f8c
+DIST upx-4.2.3-src.tar.xz 1283824 BLAKE2B 2b53bf68196c35c05eb930760ad20446fbcde9b15e1e9261e2eb7553dc1c8ede48db952cd7c5bc6de5861ac98f9f62bb1d348806731fea7dad1e532fc7e1e636 SHA512 b9ebda5d3372132bb861e0dd035829b16e4c06900f68af182895f17975493707d78cbabc63060e581de1ce149bb5129d883f6e6abcde0413c0bf474db919f5fd
diff --git a/app-arch/upx/metadata.xml b/app-arch/upx/metadata.xml
index b1093ce78b05..066d2703e71d 100644
--- a/app-arch/upx/metadata.xml
+++ b/app-arch/upx/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>azamat.hackimov@gmail.com</email>
<name>Azamat H. Hackimov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/app-arch/upx/upx-4.1.0.ebuild b/app-arch/upx/upx-4.1.0.ebuild
new file mode 100644
index 000000000000..44d1747d853c
--- /dev/null
+++ b/app-arch/upx/upx-4.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Ultimate Packer for eXecutables (free version using UCL compression and not NRV)"
+HOMEPAGE="https://upx.github.io/"
+SRC_URI="https://github.com/upx/upx/releases/download/v${PV}/${P}-src.tar.xz"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="GPL-2+ UPX-exception" # Read the exception before applying any patches
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
+
+RDEPEND="!app-arch/upx-bin"
+BDEPEND="app-arch/xz-utils[extra-filters]"
+
+src_configure() {
+ local mycmakeargs=(
+ -DUPX_CONFIG_DISABLE_WERROR=ON
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ # Don't run tests in parallel, #878977
+ cmake_src_test -j1
+}
diff --git a/app-arch/upx/upx-3.96.ebuild b/app-arch/upx/upx-4.2.3.ebuild
index c9a668ebacec..83d85276513a 100644
--- a/app-arch/upx/upx-3.96.ebuild
+++ b/app-arch/upx/upx-4.2.3.ebuild
@@ -1,34 +1,34 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit toolchain-funcs
+inherit cmake
DESCRIPTION="Ultimate Packer for eXecutables (free version using UCL compression and not NRV)"
HOMEPAGE="https://upx.github.io/"
SRC_URI="https://github.com/upx/upx/releases/download/v${PV}/${P}-src.tar.xz"
+S="${WORKDIR}/${P}-src"
LICENSE="GPL-2+ UPX-exception" # Read the exception before applying any patches
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-RDEPEND=">=dev-libs/ucl-1.03
- sys-libs/zlib
- !app-arch/upx-bin"
-DEPEND="${RDEPEND}
- dev-lang/perl"
-
-S="${WORKDIR}/${P}-src"
-
-src_compile() {
- tc-export CXX
- emake CXXFLAGS_WERROR="" all
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="!app-arch/upx-bin"
+BDEPEND="app-arch/xz-utils[extra-filters]"
+
+src_configure() {
+ local mycmakeargs=(
+ -DUPX_CONFIG_DISABLE_GITREV=ON
+ -DUPX_CONFIG_DISABLE_WERROR=ON
+ -DUPX_CONFIG_CMAKE_DISABLE_TEST=$(usex !test)
+ )
+ cmake_src_configure
}
-src_install() {
- newbin src/upx.out upx
- dodoc BUGS NEWS PROJECTS README* THANKS doc/*.txt doc/upx.html
- doman doc/upx.1
+src_test() {
+ # Don't run tests in parallel, #878977
+ cmake_src_test -j1
}
diff --git a/app-arch/vimball/metadata.xml b/app-arch/vimball/metadata.xml
index 66b3d21b657e..c2cd5d2b2de2 100644
--- a/app-arch/vimball/metadata.xml
+++ b/app-arch/vimball/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/vimball/vimball-0.5.1-r1.ebuild b/app-arch/vimball/vimball-0.5.1-r1.ebuild
new file mode 100644
index 000000000000..9f4edd4d930f
--- /dev/null
+++ b/app-arch/vimball/vimball-0.5.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/radhermit/vimball.git"
+ inherit git-r3
+else
+ KEYWORDS="amd64 x86"
+ inherit pypi
+fi
+
+DESCRIPTION="A command-line vimball archive extractor"
+HOMEPAGE="
+ https://github.com/radhermit/vimball/
+ https://pypi.org/project/vimball/
+"
+
+LICENSE="MIT"
+SLOT="0"
+
+distutils_enable_tests pytest
diff --git a/app-arch/vimball/vimball-0.5.1.ebuild b/app-arch/vimball/vimball-0.5.1.ebuild
deleted file mode 100644
index f5c82d11a752..000000000000
--- a/app-arch/vimball/vimball-0.5.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-inherit distutils-r1
-
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/radhermit/vimball.git"
- inherit git-r3
-else
- KEYWORDS="amd64 x86"
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-fi
-
-DESCRIPTION="a command-line vimball archive extractor"
-HOMEPAGE="https://github.com/radhermit/vimball"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-
-python_test() {
- esetup.py test
-}
diff --git a/app-arch/vimball/vimball-9999.ebuild b/app-arch/vimball/vimball-9999.ebuild
index 9bcf7f649ea8..368e668cb296 100644
--- a/app-arch/vimball/vimball-9999.ebuild
+++ b/app-arch/vimball/vimball-9999.ebuild
@@ -1,9 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+
inherit distutils-r1
if [[ ${PV} == *9999 ]] ; then
@@ -11,19 +13,16 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
else
KEYWORDS="~amd64 ~x86"
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ inherit pypi
fi
-DESCRIPTION="a command-line vimball archive extractor"
-HOMEPAGE="https://github.com/radhermit/vimball"
+DESCRIPTION="A command-line vimball archive extractor"
+HOMEPAGE="
+ https://github.com/radhermit/vimball/
+ https://pypi.org/project/vimball/
+"
LICENSE="MIT"
SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-python_test() {
- esetup.py test
-}
+distutils_enable_tests pytest
diff --git a/app-arch/wimlib/Manifest b/app-arch/wimlib/Manifest
index 01df841c87a7..a7bd60bb4ea2 100644
--- a/app-arch/wimlib/Manifest
+++ b/app-arch/wimlib/Manifest
@@ -1,2 +1,2 @@
-DIST wimlib-1.12.0.tar.gz 1014508 BLAKE2B d12f4e0b458fe756b74c67f2f643256c44021e0f0c3e2a3a70eb87647c3c6cabd93413917bf8a8c6ab6820860c407f4454454719227f5cbf1a9a81a7bedc1a6e SHA512 0343b37550366f07fd6a6689f4445f390187beddde677f4d6d831c07936d03b613ae95f612ec7a75e978a5e678f33ab766d0f3b3d942886df56e4ef77d4b07b9
-DIST wimlib-1.13.0.tar.gz 1035146 BLAKE2B 305d4bd4a0299c99b537c2bc59c674740239d3fe7c240038f4846849f36046ef587b04643d5a482c876668bf8f9a94a7b45a5e4f12c6d235a579a08c3879acff SHA512 a7ec729dda07b3884a851533a3c9e9db3061d9f6273ec318e40ece3687f4671f66989c07c080fa9cdcf5f01318c5eba7256b58f15f711b3ff14f4eb61c2114cb
+DIST wimlib-1.13.4.tar.gz 1040411 BLAKE2B 4563429d42be39b959a15ef66ac4c173531ff0c0b0f1a341812a4f870c9f189478f3ce78bf6240544f71b1746d98c9eae3f7182d646355343e26526559384f07 SHA512 480fe6fa6c6e8f1bf9c3960f5e1671f3266535b18dc72e9d7c4c05c7fb833d9b00db5ae9fb49154da6e71e536cae8b562cbf81ab5a124e2a79326927e2cf7344
+DIST wimlib-1.14.1.tar.gz 1046078 BLAKE2B 56e44928229c9c4fda662fa64fc4021bd361c2c959f0786764b84fa4cc9d7f7b0d5440edb4d4079657cc7bf450ac9c755f554c7da7a8b2b7e96d69ddbeb4f22f SHA512 9f92a8ce2d386918d66a1a3e52d4fbffeeb9f8b9345b25012fd0bd07039a00be84fd83d83a9bb25bcefab09597a81e9392522be835dd6693dd00050f8624af00
diff --git a/app-arch/wimlib/files/syslinux-path.patch b/app-arch/wimlib/files/syslinux-path.patch
deleted file mode 100644
index 6fd5bcd726c7..000000000000
--- a/app-arch/wimlib/files/syslinux-path.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/programs/mkwinpeimg 2017-07-29 13:52:09.000000000 -0700
-+++ b/programs/mkwinpeimg 2018-10-22 19:14:35.170566559 -0700
-@@ -488,7 +488,8 @@
- for biosdir in \
- /usr/lib/syslinux/modules/bios \
- /usr/lib/syslinux/bios \
-- /usr/lib/syslinux
-+ /usr/lib/syslinux \
-+ /usr/share/syslinux
- do
- if [ -e "$biosdir/chain.c32" ]; then
- break
---- a/programs/mkwinpeimg.in 2017-07-15 13:49:06.000000000 -0700
-+++ b/programs/mkwinpeimg.in 2018-10-22 19:16:59.323070604 -0700
-@@ -488,7 +488,8 @@
- for biosdir in \
- /usr/lib/syslinux/modules/bios \
- /usr/lib/syslinux/bios \
-- /usr/lib/syslinux
-+ /usr/lib/syslinux \
-+ /usr/share/syslinux
- do
- if [ -e "$biosdir/chain.c32" ]; then
- break
-
diff --git a/app-arch/wimlib/metadata.xml b/app-arch/wimlib/metadata.xml
index 7d39835030d1..2c160e3ee81d 100644
--- a/app-arch/wimlib/metadata.xml
+++ b/app-arch/wimlib/metadata.xml
@@ -1,22 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <use>
- <flag name="fuse">
- Use fuse libraries
- </flag>
- <flag name="iso">
- Install app-cdr/cdrtools in order to prepare iso images
- </flag>
- <flag name="ntfs">
- Use libntfs-3g library from sys-fs/ntfs3g
- </flag>
- <flag name="openssl">
- Use the SHA-1 message digest from libcrypto instead of compilling another implementation
- </flag>
- <flag name="yasm">
- Use yasm assembler instead of nasm
- </flag>
- </use>
+ <!-- maintainer-needed -->
+ <use>
+ <flag name="fuse">Use fuse libraries</flag>
+ <flag name="iso">Install <pkg>app-cdr/cdrtools</pkg> in order to prepare iso images</flag>
+ <flag name="ntfs">Use libntfs-3g library from <pkg>sys-fs/ntfs3g</pkg></flag>
+ <flag name="yasm">Use yasm assembler instead of nasm</flag>
+ </use>
</pkgmetadata>
diff --git a/app-arch/wimlib/wimlib-1.12.0.ebuild b/app-arch/wimlib/wimlib-1.12.0.ebuild
deleted file mode 100644
index c8a393c40055..000000000000
--- a/app-arch/wimlib/wimlib-1.12.0.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools pax-utils
-if [[ -z ${PV%%*9999} ]]; then
- inherit git-r3
- EGIT_REPO_URI="git://wimlib.net/${PN}"
-else
- inherit vcs-snapshot
- MY_PV="${PV/_/-}"
- MY_PV="${MY_PV^^}"
- SRC_URI="https://wimlib.net/downloads/${PN}-${MY_PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="The open source Windows Imaging (WIM) library"
-HOMEPAGE="https://wimlib.net/"
-
-LICENSE="|| ( GPL-3+ LGPL-3+ ) CC0-1.0"
-SLOT="0"
-IUSE="cpu_flags_x86_ssse3 fuse iso ntfs openssl threads yasm"
-REQUIRED_USE="cpu_flags_x86_ssse3? ( !openssl )"
-
-PATCHES=( "${FILESDIR}/syslinux-path.patch" )
-
-RDEPEND="
- dev-libs/libxml2:2
- ntfs? ( sys-fs/ntfs3g )
- fuse? ( sys-fs/fuse:0 )
- openssl? ( dev-libs/openssl:0 )
- iso? (
- app-arch/cabextract
- app-cdr/cdrtools
- )
-"
-DEPEND="
- ${RDEPEND}
- cpu_flags_x86_ssse3? (
- yasm? ( dev-lang/yasm )
- !yasm? ( dev-lang/nasm )
- )
-"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with ntfs ntfs-3g)
- $(use_with fuse)
- $(use_enable cpu_flags_x86_ssse3 ssse3-sha1)
- $(use_with openssl libcrypto)
- $(use_enable threads multithreaded-compression)
- )
- has test ${FEATURES} && myeconfargs+=( --enable-test-support )
- ac_cv_prog_NASM="$(usex yasm yasm nasm)" \
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- emake
- pax-mark m "${S}"/.libs/wimlib-imagex
-}
diff --git a/app-arch/wimlib/wimlib-1.13.0.ebuild b/app-arch/wimlib/wimlib-1.13.0.ebuild
deleted file mode 100644
index c8a393c40055..000000000000
--- a/app-arch/wimlib/wimlib-1.13.0.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools pax-utils
-if [[ -z ${PV%%*9999} ]]; then
- inherit git-r3
- EGIT_REPO_URI="git://wimlib.net/${PN}"
-else
- inherit vcs-snapshot
- MY_PV="${PV/_/-}"
- MY_PV="${MY_PV^^}"
- SRC_URI="https://wimlib.net/downloads/${PN}-${MY_PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="The open source Windows Imaging (WIM) library"
-HOMEPAGE="https://wimlib.net/"
-
-LICENSE="|| ( GPL-3+ LGPL-3+ ) CC0-1.0"
-SLOT="0"
-IUSE="cpu_flags_x86_ssse3 fuse iso ntfs openssl threads yasm"
-REQUIRED_USE="cpu_flags_x86_ssse3? ( !openssl )"
-
-PATCHES=( "${FILESDIR}/syslinux-path.patch" )
-
-RDEPEND="
- dev-libs/libxml2:2
- ntfs? ( sys-fs/ntfs3g )
- fuse? ( sys-fs/fuse:0 )
- openssl? ( dev-libs/openssl:0 )
- iso? (
- app-arch/cabextract
- app-cdr/cdrtools
- )
-"
-DEPEND="
- ${RDEPEND}
- cpu_flags_x86_ssse3? (
- yasm? ( dev-lang/yasm )
- !yasm? ( dev-lang/nasm )
- )
-"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with ntfs ntfs-3g)
- $(use_with fuse)
- $(use_enable cpu_flags_x86_ssse3 ssse3-sha1)
- $(use_with openssl libcrypto)
- $(use_enable threads multithreaded-compression)
- )
- has test ${FEATURES} && myeconfargs+=( --enable-test-support )
- ac_cv_prog_NASM="$(usex yasm yasm nasm)" \
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- emake
- pax-mark m "${S}"/.libs/wimlib-imagex
-}
diff --git a/app-arch/wimlib/wimlib-1.13.4-r1.ebuild b/app-arch/wimlib/wimlib-1.13.4-r1.ebuild
new file mode 100644
index 000000000000..13d1b0f2922b
--- /dev/null
+++ b/app-arch/wimlib/wimlib-1.13.4-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools pax-utils
+
+DESCRIPTION="The open source Windows Imaging (WIM) library"
+HOMEPAGE="https://wimlib.net"
+SRC_URI="https://wimlib.net/downloads/${P}.tar.gz"
+
+KEYWORDS="amd64 x86"
+LICENSE="|| ( GPL-3+ LGPL-3+ ) CC0-1.0"
+SLOT="0"
+IUSE="cpu_flags_x86_ssse3 fuse iso ntfs ssl test threads yasm"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ virtual/pkgconfig
+ cpu_flags_x86_ssse3? (
+ yasm? ( dev-lang/yasm )
+ !yasm? ( dev-lang/nasm )
+ )
+"
+RDEPEND="
+ dev-libs/libxml2:2
+ fuse? ( sys-fs/fuse:0 )
+ iso? (
+ app-arch/cabextract
+ app-cdr/cdrtools
+ )
+ ntfs? ( sys-fs/ntfs3g:= )
+ ssl? ( dev-libs/openssl:= )
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with ntfs ntfs-3g)
+ $(use_with fuse)
+ $(use_with ssl libcrypto)
+ $(use_enable threads multithreaded-compression)
+ $(use_enable test test-support)
+ --disable-static
+ )
+
+ if use cpu_flags_x86_ssse3; then
+ if ! use ssl; then
+ myeconfargs+=( --enable-ssse3-sha1 )
+ else
+ elog "cpu_flags_x86_ssse3 and ssl can't be enabled together, "
+ elog "enabling ssl and disabling cpu_flags_x86_ssse3 for you."
+ myeconfargs+=( --disable-ssse3-sha1 )
+ fi
+ fi
+
+ ac_cv_prog_NASM="$(usex yasm yasm nasm)" \
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+ pax-mark m "${S}"/.libs/wimlib-imagex
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/app-arch/wimlib/wimlib-1.14.1.ebuild b/app-arch/wimlib/wimlib-1.14.1.ebuild
new file mode 100644
index 000000000000..14ba614885b5
--- /dev/null
+++ b/app-arch/wimlib/wimlib-1.14.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools pax-utils
+
+DESCRIPTION="The open source Windows Imaging (WIM) library"
+HOMEPAGE="https://wimlib.net"
+SRC_URI="https://wimlib.net/downloads/${P}.tar.gz"
+
+LICENSE="|| ( GPL-3+ LGPL-3+ ) MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="fuse iso ntfs test yasm"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ fuse? ( sys-fs/fuse:3 )
+ iso? (
+ app-arch/cabextract
+ app-cdr/cdrtools
+ )
+ ntfs? ( sys-fs/ntfs3g:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with ntfs ntfs-3g)
+ $(use_with fuse)
+ $(use_enable test test-support)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+ pax-mark m "${S}"/.libs/wimlib-imagex
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/app-arch/xar/Manifest b/app-arch/xar/Manifest
index ca6f1ec9cfae..5fb4e06ff4ff 100644
--- a/app-arch/xar/Manifest
+++ b/app-arch/xar/Manifest
@@ -1,2 +1,2 @@
-DIST xar-400.tar.gz 213319 BLAKE2B 55b8695313a1a5ae778b62791f716af00edba7e7b01500eac4b951e04cf7b18e84e0d508ac5471996796e5ab59e4628a4f85a63a5929b372555e28b222c77ab1 SHA512 c54850d5443c776f18d788bf7d026b3b08274ee71321d1615238c9fa2d20cc0b21f3f298364b0d0eecd98ce2a6efc8d5039cabd5a21c2419c430d90db004d159
-DIST xar-417.1.tar.gz 219350 BLAKE2B 2ca073e52b8d7a12c3d33fb65ccaf0984b912f42e4e9dc52bcaec7af41bafcc530cd055da16646113fb24ee046122425a66351f88279ef79a0f0b2b04ae51f9a SHA512 4c3c61f5289d0b2e380cbde772b383da369ca8ad046f5d779e02f59300288c90c5e31d105a2c01ac17dc719b8b46b55d8d36a8b3b20360f315766fce92dec762
+DIST xar-487.100.1.tar.gz 224108 BLAKE2B 2fa5c44b46a9e37e49be03d05d6d06ab706b5205d857e6d6f24954160dbf5fc91fbec848053cb2d0a11505e5f7c37f8331ac126d65eb91b08e302a28db12acc0 SHA512 a45d1327ac5c6dc6f1cdb359e7e487fd91cea82a446157b65da34f0481cd58bbe03b0e005643087c802962e89316a1c816e2c6b625f1259b10a52bbf902f79e6
+DIST xar-498.tar.gz 224373 BLAKE2B 56dfae475f23384b57492d6a5e141a4c93f7b0238de04be8bbcde63fe7ca0a9beb137b5b9052b165717cd2afae4ddfe5005e65ba16d1821c42e036a9ef9d0e04 SHA512 ecd6186e42ff3005296d94ce01d7fbea04814f26afe1df0449ffa522009ec85beafc71e25931b215910c159a2440565e7dd31a6a7c50389a50a1368bd5ff5f75
diff --git a/app-arch/xar/files/xar-1.8.0.0.452-linux.patch b/app-arch/xar/files/xar-1.8.0.0.452-linux.patch
new file mode 100644
index 000000000000..ccfc68369a43
--- /dev/null
+++ b/app-arch/xar/files/xar-1.8.0.0.452-linux.patch
@@ -0,0 +1,104 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -183,7 +183,7 @@
+
+ AC_TRY_COMPILE([#include <sys/types.h>
+ #include <sys/acl.h>], [acl_t a], [AC_DEFINE([HAVE_SYS_ACL_H],[1], [define if you have sys/acl.h and it has a working acl_t type])])
+-AC_CHECK_HEADERS(ext2fs/ext2_fs.h sys/statfs.h sys/xattr.h sys/param.h sys/extattr.h libutil.h)
++AC_CHECK_HEADERS(ext2fs/ext2_fs.h sys/statfs.h sys/vfs.h sys/xattr.h sys/param.h sys/extattr.h libutil.h)
+ AC_CHECK_FUNCS(lgetxattr)
+ AC_CHECK_FUNCS(lsetxattr)
+ AC_CHECK_FUNCS(getxattr)
+@@ -199,7 +199,22 @@
+
+ AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[#include <sys/types.h>
+ #include <sys/param.h>
+-#include <sys/mount.h>])
++#include <sys/mount.h>
++#ifdef HAVE_SYS_VFS_H
++#include <sys/vfs.h>
++#endif])
++AC_CHECK_MEMBERS([struct statfs.f_iosize],,,[#include <sys/types.h>
++#include <sys/param.h>
++#include <sys/mount.h>
++#ifdef HAVE_SYS_VFS_H
++#include <sys/vfs.h>
++#endif])
++AC_CHECK_MEMBERS([struct statfs.f_bsize],,,[#include <sys/types.h>
++#include <sys/param.h>
++#include <sys/mount.h>
++#ifdef HAVE_SYS_VFS_H
++#include <sys/vfs.h>
++#endif])
+ AC_CHECK_MEMBERS([struct statvfs.f_fstypename],,,[#include <sys/statvfs.h>])
+ AC_CHECK_MEMBERS([struct stat.st_flags])
+
+--- a/lib/util.c
++++ b/lib/util.c
+@@ -35,6 +35,8 @@
+ * Christopher Ryan <ryanc@apple.com>
+ */
+
++#include "config.h"
++
+ #include <stdio.h>
+ #include <stdint.h>
+ #include <sys/types.h>
+@@ -40,6 +40,9 @@
+ #include <sys/types.h>
+ #include <sys/mount.h>
+ #include <sys/param.h>
++#ifdef HAVE_SYS_VFS_H
++# include <sys/vfs.h>
++#endif
+ #include <arpa/inet.h>
+ #include <string.h>
+ #include <unistd.h>
+@@ -467,6 +467,14 @@
+ return tmp;
+ }
+
++#ifndef HAVE_STRUCT_STATFS_F_IOSIZE
++# ifdef HAVE_STRUCT_STATFS_F_BSIZE
++# define f_iosize f_bsize
++# else
++# error need a field to get optimal transfer block size
++# endif
++#endif
++
+ size_t xar_optimal_io_size_at_path(const char *path)
+ {
+ // Start at 1MiB
+@@ -491,6 +491,7 @@
+ fs_iosize = optimal_rsize;
+ }
+
++#ifdef MNT_LOCAL
+ // If we're a remote filesystem, never let us go below the optimal size above of 1MiB
+ // NFS is horrible and lies that the optimal size is 512 bytes.
+ // Whereas SMB in my testing returns 7MiBs (far more practicle)
+@@ -503,6 +504,7 @@
+ }
+ }
+ else
++#endif
+ {
+ optimal_rsize = fs_iosize;
+ }
+--- a/include/config.h.in
++++ b/include/config.h.in
+@@ -1,4 +1,5 @@
+ #undef HAVE_SYS_STATFS_H
++#undef HAVE_SYS_VFS_H
+ #undef HAVE_SYS_XATTR_H
+ #undef HAVE_SYS_EXTATTR_H
+ #undef HAVE_SYS_PARAM_H
+@@ -15,6 +15,8 @@
+ #undef HAVE_STRUCT_STAT_ST_FLAGS
+ #undef HAVE_STRUCT_STATVFS_F_FSTYPENAME
+ #undef HAVE_STRUCT_STATFS_F_FSTYPENAME
++#undef HAVE_STRUCT_STATFS_F_IOSIZE
++#undef HAVE_STRUCT_STATFS_F_BSIZE
+ #undef HAVE_SYS_ACL_H
+ #undef HAVE_LIBUTIL_H
+ #undef HAVE_LIBPTHREAD
diff --git a/app-arch/xar/files/xar-1.8.0.0.487-non-darwin.patch b/app-arch/xar/files/xar-1.8.0.0.487-non-darwin.patch
new file mode 100644
index 000000000000..c350f69f4ca0
--- /dev/null
+++ b/app-arch/xar/files/xar-1.8.0.0.487-non-darwin.patch
@@ -0,0 +1,12 @@
+don't do availability stuff on non-Darwin
+
+--- a/include/xar.h.in
++++ b/include/xar.h.in
+@@ -52,6 +52,7 @@
+ #import <os/availability.h>
+ #else
+ #define API_DEPRECATED(...)
++#define API_AVAILABLE(...)
+ #endif
+
+ #pragma pack(4)
diff --git a/app-arch/xar/files/xar-1.8.0.0.487-variable-sized-object.patch b/app-arch/xar/files/xar-1.8.0.0.487-variable-sized-object.patch
new file mode 100644
index 000000000000..8779c1129cd7
--- /dev/null
+++ b/app-arch/xar/files/xar-1.8.0.0.487-variable-sized-object.patch
@@ -0,0 +1,18 @@
+GCC doesn't like this:
+
+filetree.c:744:9: error: variable-sized object may not be initialized
+
+Since there's nothing changing at runtime at all, just make the compiler
+see it's always going to be 1.
+
+--- a/lib/filetree.c
++++ b/lib/filetree.c
+@@ -740,7 +740,7 @@
+ size_t fspath1_size = 0, fspath2_size = 0;
+ size_t ns1_size = 0, ns2_size = 0;
+ const struct __xar_file_t * child1 = NULL, * child2 = NULL;
+- const uint keys_to_ignore_count = 1;
++#define keys_to_ignore_count 1
+ char * keys_to_ignore[keys_to_ignore_count] = { "id" }; // ID is allowed ot mismatch
+
+ // If the two pointers match, call it the same.
diff --git a/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch b/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch
new file mode 100644
index 000000000000..8c37a6c9cfbc
--- /dev/null
+++ b/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch
@@ -0,0 +1,24 @@
+include stdlib.h for free and strtol
+silence format warning
+
+--- a/lib/ext2.c
++++ b/lib/ext2.c
+@@ -41,6 +41,7 @@
+ #include "asprintf.h"
+ #endif
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <unistd.h>
+ #include "xar.h"
+ #include "arcmod.h"
+--- a/lib/ea.c
++++ a/lib/ea.c
+@@ -67,7 +67,7 @@
+ xar_prop_setvalue(XAR_EA(ret)->prop, NULL);
+ XAR_PROP(XAR_EA(ret)->prop)->attrs = xar_attr_new();
+ XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->key = strdup("id");
+- asprintf((char **)&XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->value, "%lld", XAR_FILE(f)->nexteaid++);
++ asprintf((char **)&XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->value, PRId64, XAR_FILE(f)->nexteaid++);
+
+ xar_prop_pset(f, XAR_EA(ret)->prop, "name", name);
+
diff --git a/app-arch/xar/metadata.xml b/app-arch/xar/metadata.xml
index 3ddd51ed75fb..e2338ba5726b 100644
--- a/app-arch/xar/metadata.xml
+++ b/app-arch/xar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>prefix@gentoo.org</email>
diff --git a/app-arch/xar/xar-1.8-r2.ebuild b/app-arch/xar/xar-1.8-r2.ebuild
deleted file mode 100644
index 3a28821b3a2e..000000000000
--- a/app-arch/xar/xar-1.8-r2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic multilib-minimal
-
-APPLE_PV=400
-DESCRIPTION="An easily extensible archive format"
-HOMEPAGE="https://opensource.apple.com/source/xar/"
-SRC_URI="https://opensource.apple.com/tarballs/xar/xar-${APPLE_PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="libressl kernel_Darwin"
-
-DEPEND="
- !kernel_Darwin? (
- !kernel_SunOS? ( virtual/acl )
- !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
- )
- app-arch/bzip2[${MULTILIB_USEDEP}]
- sys-libs/zlib[${MULTILIB_USEDEP}]
- dev-libs/libxml2[${MULTILIB_USEDEP}]
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.6.1-ext2.patch
- "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
- "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
- "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
-)
-
-S=${WORKDIR}/${PN}-${APPLE_PV}/${PN}
-
-multilib_src_configure() {
- use kernel_Darwin || append-libs $(pkg-config --libs openssl)
- ECONF_SOURCE=${S} \
- econf \
- --disable-static
- # botched check, fix it up
- if use kernel_SunOS ; then
- sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
- fi
-}
-
-multilib_src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/app-arch/xar/xar-1.8-r3.ebuild b/app-arch/xar/xar-1.8-r3.ebuild
deleted file mode 100644
index 2b1ae6a93b9c..000000000000
--- a/app-arch/xar/xar-1.8-r3.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic multilib-minimal multilib
-
-APPLE_PV=417.1
-DESCRIPTION="An easily extensible archive format"
-HOMEPAGE="https://opensource.apple.com/source/xar/"
-SRC_URI="https://opensource.apple.com/tarballs/xar/xar-${APPLE_PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="libressl kernel_Darwin"
-
-DEPEND="
- !kernel_Darwin? (
- !kernel_SunOS? ( virtual/acl )
- !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
- )
- app-arch/bzip2[${MULTILIB_USEDEP}]
- sys-libs/zlib[${MULTILIB_USEDEP}]
- dev-libs/libxml2[${MULTILIB_USEDEP}]
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.6.1-ext2.patch
- "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
- "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
- "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
-)
-
-S=${WORKDIR}/${PN}-${APPLE_PV}/${PN}
-
-src_prepare() {
- default
-
- # make lib headers available (without installing first?)
- cd "${S}"/include || die
- mv ../lib/*.h . || die
-
- # strip RPATH pointing to ED
- cd "${S}"/src || die
- sed -i -e 's/@RPATH@//' Makefile.inc.in || die
-
- # avoid GNU make (bug?) behaviour of removing xar.o as intermediate
- # file, this doesn't happen outside portage, but it does from the
- # ebuild env, causing the install phase to re-compile xar.o and link
- # the executable
- echo ".PRECIOUS: @objroot@src/%.o" >> Makefile.inc.in || die
-}
-
-multilib_src_configure() {
- use kernel_Darwin || append-libs $(pkg-config --libs openssl)
- ECONF_SOURCE=${S} \
- econf \
- --disable-static
- # botched check, fix it up
- if use kernel_SunOS ; then
- sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
- fi
-}
-
-multilib_src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/app-arch/xar/xar-1.8.0.0.487.100.1.ebuild b/app-arch/xar/xar-1.8.0.0.487.100.1.ebuild
new file mode 100644
index 000000000000..55087abbc9d1
--- /dev/null
+++ b/app-arch/xar/xar-1.8.0.0.487.100.1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+
+APPLE_PV=$(ver_cut 5-) # 487: macOS 12.3 and up
+DESCRIPTION="An easily extensible archive format"
+HOMEPAGE="https://github.com/apple-oss-distributions/xar"
+SRC_URI="https://github.com/apple-oss-distributions/xar/archive/xar-${APPLE_PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ elibc_musl? ( sys-libs/fts-standalone )
+ kernel_linux? ( virtual/acl )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ app-arch/bzip2[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.6.1-ext2.patch
+ "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
+ "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
+ "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.452-linux.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-non-darwin.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-variable-sized-object.patch
+)
+
+S=${WORKDIR}/${PN}-${PN}-${APPLE_PV}/${PN}
+
+src_prepare() {
+ default
+
+ # make lib headers available (without installing first?)
+ cd "${S}"/include || die
+ mv ../lib/*.h . || die
+
+ # strip RPATH pointing to ED
+ cd "${S}"/src || die
+ sed -i -e 's/@RPATH@//' Makefile.inc.in || die
+
+ # avoid GNU make (bug?) behaviour of removing xar.o as intermediate
+ # file, this doesn't happen outside portage, but it does from the
+ # ebuild env, causing the install phase to re-compile xar.o and link
+ # the executable
+ echo ".PRECIOUS: @objroot@src/%.o" >> Makefile.inc.in || die
+
+ # drop Darwin specific reliance on CommonCrypto Framework, for it
+ # depends on what version of Darwin we're on, and it is much simpler
+ # to just use openessl instead, which we maintain and control
+ cd "${S}" || die
+ sed -i -e 's/__APPLE__/__NO_APPLE__/' \
+ include/archive.h \
+ lib/hash.c \
+ || die
+
+ # fix branding somewhat
+ sed -i -e "/XAR_VERSION/s|%s|%s (Gentoo ${PVR})|" src/xar.c || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ append-libs $($(tc-getPKG_CONFIG) --libs openssl)
+ use elibc_musl && append-libs $($(tc-getPKG_CONFIG) --libs fts-standalone)
+ append-cflags -Wno-unused-result # allow to see real problems
+ ECONF_SOURCE=${S} \
+ econf --disable-static
+ # botched check, fix it up
+ if use kernel_SunOS ; then
+ sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
+ fi
+ # allow xar/xar.h to be found
+ ( cd include && ln -s . xar )
+}
+
+multilib_src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/app-arch/xar/xar-1.8.0.0.498.ebuild b/app-arch/xar/xar-1.8.0.0.498.ebuild
new file mode 100644
index 000000000000..80225ab0a44a
--- /dev/null
+++ b/app-arch/xar/xar-1.8.0.0.498.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+
+APPLE_PV=$(ver_cut 5-) # 498: macOS 13.3 and up
+DESCRIPTION="An easily extensible archive format"
+HOMEPAGE="https://github.com/apple-oss-distributions/xar"
+SRC_URI="https://github.com/apple-oss-distributions/xar/archive/xar-${APPLE_PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ elibc_musl? ( sys-libs/fts-standalone )
+ kernel_linux? ( virtual/acl )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ app-arch/bzip2[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.6.1-ext2.patch
+ "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
+ "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
+ "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.452-linux.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-non-darwin.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-variable-sized-object.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.498-impl-decls.patch
+)
+
+S=${WORKDIR}/${PN}-${PN}-${APPLE_PV}/${PN}
+
+src_prepare() {
+ default
+
+ # make lib headers available (without installing first?)
+ cd "${S}"/include || die
+ mv ../lib/*.h . || die
+
+ # strip RPATH pointing to ED
+ cd "${S}"/src || die
+ sed -i -e 's/@RPATH@//' Makefile.inc.in || die
+
+ # avoid GNU make (bug?) behaviour of removing xar.o as intermediate
+ # file, this doesn't happen outside portage, but it does from the
+ # ebuild env, causing the install phase to re-compile xar.o and link
+ # the executable
+ echo ".PRECIOUS: @objroot@src/%.o" >> Makefile.inc.in || die
+
+ # drop Darwin specific reliance on CommonCrypto Framework, for it
+ # depends on what version of Darwin we're on, and it is much simpler
+ # to just use openessl instead, which we maintain and control
+ cd "${S}" || die
+ sed -i -e 's/__APPLE__/__NO_APPLE__/' \
+ include/archive.h \
+ lib/hash.c \
+ || die
+
+ # fix branding somewhat
+ sed -i -e "/XAR_VERSION/s|%s|%s (Gentoo ${PVR})|" src/xar.c || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ append-libs $($(tc-getPKG_CONFIG) --libs openssl)
+ use elibc_musl && append-libs $($(tc-getPKG_CONFIG) --libs fts-standalone)
+ append-cflags -Wno-unused-result # allow to see real problems
+ ECONF_SOURCE=${S} \
+ econf --disable-static
+ # botched check, fix it up
+ if use kernel_SunOS ; then
+ sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
+ fi
+ # allow xar/xar.h to be found
+ ( cd include && ln -s . xar )
+}
+
+multilib_src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/app-arch/xarchiver/Manifest b/app-arch/xarchiver/Manifest
index 5712d2568a3f..b9ac1aeed370 100644
--- a/app-arch/xarchiver/Manifest
+++ b/app-arch/xarchiver/Manifest
@@ -1 +1 @@
-DIST xarchiver-0.5.4.15.tar.gz 1072943 BLAKE2B 6f80c8dba510bf5c05dfe5c8f12aafbd4f563861878c73b7da78562836ef4b85f9bc8e4ed7cda5d98c5e33a211a2677d163c2912f1bb605e0085627ca4ee5cbb SHA512 e5174241dd45dd6186d91b15a15b207a8b356480d9ce1a7b9ac2da167878cdb14316a3e7abf3f2aac8d41a02777df2131e205c7d5971a376ff7dd0ca70fbc82f
+DIST xarchiver-0.5.4.23.tar.gz 1126908 BLAKE2B 09d2217aa77d553fd9f8436e1336f95160c366318b43ed22b9693f5dd510c59544d95f1cf643046ba443b44de84792a71d6eb115ad5bd04ab33e03c91e00afd4 SHA512 7459b14772205872de275c855c26a992a6a59e773cdaef25f95a44528baf1d1db7b1d1ef8540e0508babd35468f46c96db9610cc12746947ecccd9332bb69a71
diff --git a/app-arch/xarchiver/metadata.xml b/app-arch/xarchiver/metadata.xml
index a86ba8068b6f..16e359aa005c 100644
--- a/app-arch/xarchiver/metadata.xml
+++ b/app-arch/xarchiver/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>xfce@gentoo.org</email>
diff --git a/app-arch/xarchiver/xarchiver-0.5.4.15.ebuild b/app-arch/xarchiver/xarchiver-0.5.4.23.ebuild
index a31e0b6ca1f0..8a53c3d8b670 100644
--- a/app-arch/xarchiver/xarchiver-0.5.4.15.ebuild
+++ b/app-arch/xarchiver/xarchiver-0.5.4.23.ebuild
@@ -1,25 +1,29 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools xdg-utils
+inherit xdg-utils
DESCRIPTION="A GTK+ archive manager that can be used with Thunar"
-HOMEPAGE="https://github.com/ib/xarchiver"
-SRC_URI="https://github.com/ib/xarchiver/archive/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/ib/xarchiver/"
+SRC_URI="
+ https://github.com/ib/xarchiver/archive/${PV}.tar.gz -> ${P}.tar.gz
+"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="doc"
-# older pigz versions have incompatible command-line processing
-# https://bugs.gentoo.org/661464
-RDEPEND=">=dev-libs/glib-2:=
+DEPEND="
+ >=dev-libs/glib-2:=
x11-libs/gtk+:3=
- !!<app-arch/pigz-2.4[symlink]"
-DEPEND="${RDEPEND}
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
dev-util/intltool
sys-devel/gettext
virtual/pkgconfig
@@ -28,14 +32,8 @@ DEPEND="${RDEPEND}
app-text/docbook-xsl-stylesheets
dev-libs/libxml2
dev-libs/libxslt
- )"
-
-src_prepare() {
- sed -e '/COPYING/d' -e '/NEWS/d' -i doc/Makefile.am || die
- default
- mkdir m4 || die
- eautoreconf
-}
+ )
+"
src_configure() {
local myconf=(
diff --git a/app-arch/xdms/files/xdms-1.3.2-dont-compress-man-pages.patch b/app-arch/xdms/files/xdms-1.3.2-dont-compress-man-pages.patch
new file mode 100644
index 000000000000..3396b59a309c
--- /dev/null
+++ b/app-arch/xdms/files/xdms-1.3.2-dont-compress-man-pages.patch
@@ -0,0 +1,13 @@
+From: Sam James <sam@gentoo.org>
+Subject: [PATCH 2/2] Don't compress man pages
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -11,5 +11,4 @@ install: xdms
+ install xdms.txt COPYING ChangeLog.txt ${DESTDIR}{PREFIX}/share/doc/xdms-{VERSION}/
+ chmod og+rx ${DESTDIR}{PREFIX}/bin ${DESTDIR}{PREFIX}/bin/xdms
+ chmod -R og+rX ${DESTDIR}{PREFIX}/share/doc/xdms-{VERSION}
+- gzip < xdms.1 > xdms.1.gz
+- install xdms.1.gz ${DESTDIR}{PREFIX}/share/man/man1/
++ install xdms.1 ${DESTDIR}{PREFIX}/share/man/man1/
+--
+
diff --git a/app-arch/xdms/files/xdms-1.3.2-fix-build-with-gcc-10.patch b/app-arch/xdms/files/xdms-1.3.2-fix-build-with-gcc-10.patch
new file mode 100644
index 000000000000..dad00addead3
--- /dev/null
+++ b/app-arch/xdms/files/xdms-1.3.2-fix-build-with-gcc-10.patch
@@ -0,0 +1,80 @@
+https://sources.debian.org/patches/xdms/1.3.2-7/0002-Fix-build-with-gcc-10.patch/
+
+From: Jeff Law <law@redhat.com>
+Date: Sat, 9 May 2020 15:16:39 +0200
+Subject: Fix build with gcc-10
+--- a/src/u_deep.c
++++ b/src/u_deep.c
+@@ -17,9 +17,9 @@
+ #include "getbits.h"
+
+
+-INLINE USHORT DecodeChar(void);
+-INLINE USHORT DecodePosition(void);
+-INLINE void update(USHORT c);
++static INLINE USHORT DecodeChar(void);
++static INLINE USHORT DecodePosition(void);
++static INLINE void update(USHORT c);
+ static void reconst(void);
+
+
+@@ -98,7 +98,7 @@ USHORT Unpack_DEEP(UCHAR *in, UCHAR *out, USHORT origsize){
+
+
+
+-INLINE USHORT DecodeChar(void){
++static INLINE USHORT DecodeChar(void){
+ USHORT c;
+
+ c = son[R];
+@@ -117,7 +117,7 @@ INLINE USHORT DecodeChar(void){
+
+
+
+-INLINE USHORT DecodePosition(void){
++static INLINE USHORT DecodePosition(void){
+ USHORT i, j, c;
+
+ i = GETBITS(8); DROPBITS(8);
+@@ -171,7 +171,7 @@ static void reconst(void){
+
+ /* increment frequency of given code by one, and update tree */
+
+-INLINE void update(USHORT c){
++static INLINE void update(USHORT c){
+ USHORT i, j, k, l;
+
+ if (freq[R] == MAX_FREQ) {
+diff --git a/src/u_heavy.c b/src/u_heavy.c
+index fff93d3..8557b71 100644
+--- a/src/u_heavy.c
++++ b/src/u_heavy.c
+@@ -30,8 +30,8 @@ USHORT heavy_text_loc;
+
+ static USHORT read_tree_c(void);
+ static USHORT read_tree_p(void);
+-INLINE USHORT decode_c(void);
+-INLINE USHORT decode_p(void);
++static INLINE USHORT decode_c(void);
++static INLINE USHORT decode_p(void);
+
+
+
+@@ -74,7 +74,7 @@ USHORT Unpack_HEAVY(UCHAR *in, UCHAR *out, UCHAR flags, USHORT origsize){
+
+
+
+-INLINE USHORT decode_c(void){
++static INLINE USHORT decode_c(void){
+ USHORT i, j, m;
+
+ j = c_table[GETBITS(12)];
+@@ -96,7 +96,7 @@ INLINE USHORT decode_c(void){
+
+
+
+-INLINE USHORT decode_p(void){
++static INLINE USHORT decode_p(void){
+ USHORT i, j, m;
+
+ j = pt_table[GETBITS(8)];
diff --git a/app-arch/xdms/files/xdms-1.3.2-respect-DESTDIR.patch b/app-arch/xdms/files/xdms-1.3.2-respect-DESTDIR.patch
new file mode 100644
index 000000000000..3db969932084
--- /dev/null
+++ b/app-arch/xdms/files/xdms-1.3.2-respect-DESTDIR.patch
@@ -0,0 +1,22 @@
+From: Sam James <sam@gentoo.org>
+Subject: [PATCH 1/2] Respect DESTDIR
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -6,10 +6,10 @@ clean:
+ $(MAKE) -C src clean
+
+ install: xdms
+- mkdir -p {PREFIX}/bin {PREFIX}/share/doc/xdms-{VERSION} {PREFIX}/share/man/man1
+- install src/xdms {PREFIX}/bin/
+- install xdms.txt COPYING ChangeLog.txt {PREFIX}/share/doc/xdms-{VERSION}/
+- chmod og+rx {PREFIX}/bin {PREFIX}/bin/xdms
+- chmod -R og+rX {PREFIX}/share/doc/xdms-{VERSION}
++ mkdir -p ${DESTDIR}{PREFIX}/bin ${DESTDIR}{PREFIX}/share/doc/xdms-{VERSION} ${DESTDIR}{PREFIX}/share/man/man1
++ install src/xdms ${DESTDIR}{PREFIX}/bin/
++ install xdms.txt COPYING ChangeLog.txt ${DESTDIR}{PREFIX}/share/doc/xdms-{VERSION}/
++ chmod og+rx ${DESTDIR}{PREFIX}/bin ${DESTDIR}{PREFIX}/bin/xdms
++ chmod -R og+rX ${DESTDIR}{PREFIX}/share/doc/xdms-{VERSION}
+ gzip < xdms.1 > xdms.1.gz
+- install xdms.1.gz {PREFIX}/share/man/man1/
++ install xdms.1.gz ${DESTDIR}{PREFIX}/share/man/man1/
+--
diff --git a/app-arch/xdms/metadata.xml b/app-arch/xdms/metadata.xml
index ec5a204b1712..c8e7d281153b 100644
--- a/app-arch/xdms/metadata.xml
+++ b/app-arch/xdms/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
@@ -9,4 +9,7 @@
Can extract the files contained inside the DMS archives, if the compressed disk is an AmigaDOS disk, using readdisk made by Bernd Schmidt.
Can process multiple files in batch with a single command, and also use stdin and stdout for input and output of data.
</longdescription>
+ <upstream>
+ <remote-id type="gitlab">heikkiorsila/xdms</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/xdms/xdms-1.3.2-r1.ebuild b/app-arch/xdms/xdms-1.3.2-r1.ebuild
deleted file mode 100644
index 14f419cd4b8c..000000000000
--- a/app-arch/xdms/xdms-1.3.2-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="xDMS - Amiga DMS disk image decompressor"
-HOMEPAGE="https://zakalwe.fi/~shd/foss/xdms"
-SRC_URI="https://zakalwe.fi/~shd/foss/xdms/${P}.tar.bz2"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ppc x86"
-IUSE=""
-
-pkg_setup() {
- tc-export CC
-}
-
-src_prepare() {
- default
- sed -i Makefile.in \
- -e "s:COPYING::" \
- -e "s:share/doc/xdms-{VERSION}:share/doc/xdms-${PF}:" || die
- sed -i -e "s:-O2::" src/Makefile.in || die
-}
-
-src_configure() {
- ./configure --prefix=/usr --package-prefix="${D}" || die
-}
diff --git a/app-arch/xdms/xdms-1.3.2-r2.ebuild b/app-arch/xdms/xdms-1.3.2-r2.ebuild
new file mode 100644
index 000000000000..07dce668c10a
--- /dev/null
+++ b/app-arch/xdms/xdms-1.3.2-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="xDMS - Amiga DMS disk image decompressor"
+HOMEPAGE="https://zakalwe.fi/~shd/foss/xdms"
+SRC_URI="https://zakalwe.fi/~shd/foss/xdms/${P}.tar.bz2"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ppc x86"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.2-respect-DESTDIR.patch
+ "${FILESDIR}"/${PN}-1.3.2-dont-compress-man-pages.patch
+ "${FILESDIR}"/${PN}-1.3.2-fix-build-with-gcc-10.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i Makefile.in \
+ -e "s:COPYING::" \
+ -e "s:share/doc/xdms-{VERSION}:share/doc/${PF}:" || die
+
+ sed -i -e "s:-O2::" src/Makefile.in || die
+}
+
+src_configure() {
+ tc-export CC
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # Needed to avoid typical "Undefined symbols for architecture x86_64"
+ append-ldflags -undefined dynamic_lookup
+ fi
+
+ ./configure --prefix="${EPREFIX}"/usr || die
+}
diff --git a/app-arch/xz-utils/Manifest b/app-arch/xz-utils/Manifest
index dc2229967e78..ec1a06d7c64c 100644
--- a/app-arch/xz-utils/Manifest
+++ b/app-arch/xz-utils/Manifest
@@ -1 +1,4 @@
-DIST xz-5.2.5.tar.gz 1791345 BLAKE2B aded57324e129572c41646b3cc3b0b59a459452d9338d9245663b63dac2a463fb1f1b2b1d2d4ad3c09cb71fb8439df52cd94f24db99e782fc899b94a288a3043 SHA512 7443674247deda2935220fbc4dfc7665e5bb5a260be8ad858c8bd7d7b9f0f868f04ea45e62eb17c0a5e6a2de7c7500ad2d201e2d668c48ca29bd9eea5a73a3ce
+DIST xz-5.4.2.tar.gz 2799022 BLAKE2B 3c622b0823f0cbb5fbc5eaa0372fc2f0fefe0950d131417f831bce47b6d9747d145429f0649de106819331f9ae6a289c497182c7b6d1e211513308dd083a9b72 SHA512 149f980338bea3d66de1ff5994b2b236ae1773135eda68b62b009df0c9dcdf5467f8cb2c06da95a71b6556d60bd3d21f475feced34d5dfdb80ee95416a2f9737
+DIST xz-5.4.2.tar.gz.sig 566 BLAKE2B 95c9c70fdd25b92095dd9691e4d9d4306a3f982becfe7bd42ca6132a76f29be2c2bc66f4fc2bda547058c18e227292f4185799eb905084fc3ab415ae867b4b1b SHA512 30e965c228ed3a8ecb804db8eb11703a765b7ee934030ea69bb3940b630811eb71bf74fd20371ef7759761904ece4f0144a0b00be4d843cf98299fd016f161aa
+DIST xz-5.4.6.tar.gz 2889306 BLAKE2B f0bbd33ea7cd64d475c3501f6e76080c8c0080e377f23462f5f76459935f4e621538ddaa8452d2feaed278d62a596e38ed2aca18ed9e76512c4ec77fa2f4cc5f SHA512 b08a61d8d478d3b4675cb1ddacdbbd98dc6941a55bcdd81a28679e54e9367d3a595fa123ac97874a17da571c1b712e2a3e901c2737099a9d268616a1ba3de497
+DIST xz-5.4.6.tar.gz.sig 566 BLAKE2B 808f1b5e2a17729f36a05ba88a9c00210cda2afa02923e6f289d13dc2a48f7674cafec6e25660e142d67f01dd941c7390cee2757b054df3a3193dde0791363a1 SHA512 d5e32b944e7492a32c40f675d918796e077f63490a23c6fce5c4d6d1eebc443f129d27a2e888913c5a36c3ffdac75b9c96c1749402283445e0ba9ff72b965741
diff --git a/app-arch/xz-utils/metadata.xml b/app-arch/xz-utils/metadata.xml
index 74270db09ca6..3b217f332fdd 100644
--- a/app-arch/xz-utils/metadata.xml
+++ b/app-arch/xz-utils/metadata.xml
@@ -1,16 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name='extra-filters'>Build additional filters that are not
- used in any of the default xz presets. This includes delta
- and BCJ coders, additional match finders and SHA256 checks.</flag>
-</use>
-<upstream>
- <remote-id type="cpe">cpe:/a:tukaani:xz</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="extra-filters">Build additional filters that are not
+ used in any of the default xz presets. This includes delta
+ and BCJ coders, additional match finders and SHA256 checks.</flag>
+ <flag name="pgo">Optimize the build using Profile Guided Optimization (PGO)</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:tukaani:xz</remote-id>
+ <remote-id type="sourceforge">lzmautils</remote-id>
+ <remote-id type="github">tukaani-project/xz</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/xz-utils/xz-utils-5.2.5.ebuild b/app-arch/xz-utils/xz-utils-5.2.5.ebuild
deleted file mode 100644
index 7ae8dd90a4d0..000000000000
--- a/app-arch/xz-utils/xz-utils-5.2.5.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Remember: we cannot leverage autotools in this ebuild in order
-# to avoid circular deps with autotools
-
-EAPI=7
-
-inherit multilib toolchain-funcs libtool multilib-minimal preserve-libs usr-ldscript
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.tukaani.org/xz.git"
- inherit git-r3 autotools
- SRC_URI=""
- BDEPEND="sys-devel/gettext dev-vcs/cvs >=sys-devel/libtool-2" #272880 286068
-else
- MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- [[ "${PV}" == *_alpha* ]] || [[ "${PV}" == *_beta* ]] || \
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="utils for managing LZMA compressed files"
-HOMEPAGE="https://tukaani.org/xz/"
-
-# See top-level COPYING file as it outlines the various pieces and their licenses.
-LICENSE="public-domain LGPL-2.1+ GPL-2+"
-SLOT="0"
-IUSE="elibc_FreeBSD +extra-filters nls static-libs +threads"
-
-RDEPEND="!<app-arch/lzma-4.63
- !<app-arch/p7zip-4.57
- !<app-i18n/man-pages-de-2.16"
-DEPEND="${RDEPEND}"
-
-# Tests currently do not account for smaller feature set
-RESTRICT="!extra-filters? ( test )"
-
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] ; then
- eautopoint
- eautoreconf
- else
- elibtoolize # to allow building shared libs on Solaris/x64
- fi
-}
-
-multilib_src_configure() {
- local myconf=(
- $(use_enable nls)
- $(use_enable threads)
- $(use_enable static-libs static)
- )
- multilib_is_native_abi ||
- myconf+=( --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts} )
- if ! use extra-filters; then
- myconf+=(
- # LZMA1 + LZMA2 for standard .lzma & .xz files
- --enable-encoders=lzma1,lzma2
- --enable-decoders=lzma1,lzma2
- # those are used by default, depending on preset
- --enable-match-finders=hc3,hc4,bt4
- # CRC64 is used by default, though some (old?) files use CRC32
- --enable-checks=crc32,crc64
- )
- fi
-
- if [[ ${CHOST} == *-solaris* ]] ; then
- # undo Solaris-based defaults pointing to /usr/xpg5/bin
- myconf+=( --disable-path-for-script )
- export gl_cv_posix_shell=${EPREFIX}/bin/sh
- fi
-
- use elibc_FreeBSD && export ac_cv_header_sha256_h=no #545714
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-}
-
-multilib_src_install() {
- default
- gen_usr_ldscript -a lzma
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name '*.la' -delete || die
- rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
-}
-
-pkg_preinst() {
- preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
-}
-
-pkg_postinst() {
- preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
-}
diff --git a/app-arch/xz-utils/xz-utils-5.4.2.ebuild b/app-arch/xz-utils/xz-utils-5.4.2.ebuild
new file mode 100644
index 000000000000..a6187bec0743
--- /dev/null
+++ b/app-arch/xz-utils/xz-utils-5.4.2.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Remember: we cannot leverage autotools in this ebuild in order
+# to avoid circular deps with autotools
+
+EAPI=8
+
+inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ # Per tukaani.org, git.tukaani.org is a mirror of github and
+ # may be behind.
+ EGIT_REPO_URI="
+ https://github.com/tukaani-project/xz
+ https://git.tukaani.org/xz.git
+ "
+ inherit git-r3 autotools
+
+ # bug #272880 and bug #286068
+ BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/lassecollin.asc
+ inherit verify-sig
+
+ MY_P="${PN/-utils}-${PV/_}"
+ SRC_URI="
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Utils for managing LZMA compressed files"
+HOMEPAGE="https://tukaani.org/xz/"
+
+# See top-level COPYING file as it outlines the various pieces and their licenses.
+LICENSE="public-domain LGPL-2.1+ GPL-2+"
+SLOT="0"
+IUSE="doc +extra-filters pgo nls static-libs"
+
+if [[ ${PV} != 9999 ]] ; then
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
+fi
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautopoint
+ eautoreconf
+ else
+ # Allow building shared libs on Solaris/x64
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --enable-threads
+ $(multilib_native_use_enable doc)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ )
+
+ if ! multilib_is_native_abi ; then
+ myconf+=(
+ --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
+ )
+ fi
+
+ if ! use extra-filters ; then
+ myconf+=(
+ # LZMA1 + LZMA2 for standard .lzma & .xz files
+ --enable-encoders=lzma1,lzma2
+ --enable-decoders=lzma1,lzma2
+
+ # those are used by default, depending on preset
+ --enable-match-finders=hc3,hc4,bt4
+
+ # CRC64 is used by default, though some (old?) files use CRC32
+ --enable-checks=crc32,crc64
+ )
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ export gl_cv_posix_shell="${EPREFIX}"/bin/sh
+
+ # Undo Solaris-based defaults pointing to /usr/xpg5/bin
+ myconf+=( --disable-path-for-script )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ # -fprofile-partial-training because upstream note the test suite isn't super comprehensive
+ # See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
+ local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+ local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
+
+ if use pgo ; then
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
+ fi
+
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
+ fi
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name '*.la' -delete || die
+
+ if use doc ; then
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
diff --git a/app-arch/xz-utils/xz-utils-5.4.6-r1.ebuild b/app-arch/xz-utils/xz-utils-5.4.6-r1.ebuild
new file mode 100644
index 000000000000..50f09f3d3417
--- /dev/null
+++ b/app-arch/xz-utils/xz-utils-5.4.6-r1.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Remember: we cannot leverage autotools in this ebuild in order
+# to avoid circular deps with autotools
+
+EAPI=8
+
+inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ # Per tukaani.org, git.tukaani.org is a mirror of github and
+ # may be behind.
+ EGIT_REPO_URI="
+ https://github.com/tukaani-project/xz
+ https://git.tukaani.org/xz.git
+ "
+ inherit git-r3 autotools
+
+ # bug #272880 and bug #286068
+ BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jiatan.asc
+ inherit verify-sig
+
+ MY_P="${PN/-utils}-${PV/_}"
+ SRC_URI="
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Utils for managing LZMA compressed files"
+HOMEPAGE="https://tukaani.org/xz/"
+
+# See top-level COPYING file as it outlines the various pieces and their licenses.
+LICENSE="public-domain LGPL-2.1+ GPL-2+"
+SLOT="0"
+IUSE="doc +extra-filters pgo nls static-libs"
+
+if [[ ${PV} != 9999 ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )"
+fi
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautopoint
+ eautoreconf
+ else
+ # Allow building shared libs on Solaris/x64
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --enable-threads
+ $(multilib_native_use_enable doc)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ )
+
+ if ! multilib_is_native_abi ; then
+ myconf+=(
+ --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
+ )
+ fi
+
+ if ! use extra-filters ; then
+ myconf+=(
+ # LZMA1 + LZMA2 for standard .lzma & .xz files
+ --enable-encoders=lzma1,lzma2
+ --enable-decoders=lzma1,lzma2
+
+ # those are used by default, depending on preset
+ --enable-match-finders=hc3,hc4,bt4
+
+ # CRC64 is used by default, though some (old?) files use CRC32
+ --enable-checks=crc32,crc64
+ )
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ export gl_cv_posix_shell="${EPREFIX}"/bin/sh
+
+ # Undo Solaris-based defaults pointing to /usr/xpg5/bin
+ myconf+=( --disable-path-for-script )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ # -fprofile-partial-training because upstream note the test suite isn't super comprehensive
+ # See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
+ local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+ local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
+
+ if use pgo ; then
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
+ fi
+
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
+ fi
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name '*.la' -delete || die
+
+ if use doc ; then
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
diff --git a/app-arch/xz-utils/xz-utils-9999.ebuild b/app-arch/xz-utils/xz-utils-9999.ebuild
index cae7bc97c8e9..d2e98e50e15a 100644
--- a/app-arch/xz-utils/xz-utils-9999.ebuild
+++ b/app-arch/xz-utils/xz-utils-9999.ebuild
@@ -1,90 +1,173 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
-EAPI=7
+EAPI=8
-inherit multilib toolchain-funcs libtool multilib-minimal preserve-libs usr-ldscript
+inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.tukaani.org/xz.git"
+if [[ ${PV} == 9999 ]] ; then
+ # Per tukaani.org, git.tukaani.org is a mirror of github and
+ # may be behind.
+ EGIT_REPO_URI="
+ https://github.com/tukaani-project/xz
+ https://git.tukaani.org/xz.git
+ "
inherit git-r3 autotools
- SRC_URI=""
- BDEPEND="sys-devel/gettext dev-vcs/cvs >=sys-devel/libtool-2" #272880 286068
+
+ # bug #272880 and bug #286068
+ BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/lassecollin.asc
+ inherit verify-sig
+
MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- [[ "${PV}" == *_alpha* ]] || [[ "${PV}" == *_beta* ]] || \
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ SRC_URI="
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+
S="${WORKDIR}/${MY_P}"
fi
-DESCRIPTION="utils for managing LZMA compressed files"
+DESCRIPTION="Utils for managing LZMA compressed files"
HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
-LICENSE="public-domain LGPL-2.1+ GPL-2+"
+LICENSE="0BSD LGPL-2.1+ GPL-2+ doc? ( CC-BY-SA-4.0 )"
SLOT="0"
-IUSE="elibc_FreeBSD +extra-filters nls static-libs +threads"
+IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs"
-RDEPEND="!<app-arch/lzma-4.63
- !<app-arch/p7zip-4.57
- !<app-i18n/man-pages-de-2.16"
-DEPEND="${RDEPEND}"
-
-# Tests currently do not account for smaller feature set
-RESTRICT="!extra-filters? ( test )"
+if [[ ${PV} != 9999 ]] ; then
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
+fi
src_prepare() {
default
- if [[ ${PV} == "9999" ]] ; then
+
+ if [[ ${PV} == 9999 ]] ; then
eautopoint
eautoreconf
else
- elibtoolize # to allow building shared libs on Solaris/x64
+ # Allow building shared libs on Solaris/x64
+ elibtoolize
fi
}
multilib_src_configure() {
local myconf=(
+ --enable-threads
+ $(multilib_native_use_enable doc)
$(use_enable nls)
- $(use_enable threads)
$(use_enable static-libs static)
+ $(use_enable cpu_flags_arm_crc32 arm64-crc32)
)
- multilib_is_native_abi ||
- myconf+=( --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts} )
- if ! use extra-filters; then
+
+ if ! multilib_is_native_abi ; then
+ myconf+=(
+ --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
+ )
+ fi
+
+ if ! use extra-filters ; then
myconf+=(
# LZMA1 + LZMA2 for standard .lzma & .xz files
--enable-encoders=lzma1,lzma2
--enable-decoders=lzma1,lzma2
+
# those are used by default, depending on preset
--enable-match-finders=hc3,hc4,bt4
+
# CRC64 is used by default, though some (old?) files use CRC32
--enable-checks=crc32,crc64
)
fi
if [[ ${CHOST} == *-solaris* ]] ; then
- # undo Solaris-based defaults pointing to /usr/xpg5/bin
+ export gl_cv_posix_shell="${EPREFIX}"/bin/sh
+
+ # Undo Solaris-based defaults pointing to /usr/xpg5/bin
myconf+=( --disable-path-for-script )
- export gl_cv_posix_shell=${EPREFIX}/bin/sh
fi
- use elibc_FreeBSD && export ac_cv_header_sha256_h=no #545714
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
-multilib_src_install() {
- default
- gen_usr_ldscript -a lzma
+multilib_src_compile() {
+ # -fprofile-partial-training because upstream note the test suite isn't super comprehensive
+ # TODO: revisit that now we have the tar/xz loop below?
+ # See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
+ local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+ local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
+
+ if use pgo ; then
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
+
+ if multilib_is_native_abi ; then
+ (
+ shopt -s globstar
+
+ tar \
+ --sort=name --mtime=@2718281828 \
+ -cf xz-pgo-test-01.tar \
+ {"${S}","${BUILD_DIR}"}/**/*.[cho] \
+ {"${S}","${BUILD_DIR}"}/**/*.so* \
+ {"${S}","${BUILD_DIR}"}/**/**.txt \
+ {"${S}","${BUILD_DIR}"}/tests/files \
+
+ stat --printf="xz-pgo-test-01.tar.tar size: %s\n" xz-pgo-test-01.tar
+ md5sum xz-pgo-test-01.tar
+ )
+
+ local test_variants=(
+ # Borrowed from ALT Linux
+ # https://packages.altlinux.org/en/sisyphus/srpms/xz/specfiles/#line-80
+ '-0 -C none'
+ '-2 -C crc32'
+ '-6 --arm --lzma2 -C crc64'
+ '-6 --x86 --lzma2=lc=4 -C sha256'
+ '-7e --format=lzma'
+
+ # Our own variants
+ ''
+ '-9e'
+ '--x86 --lzma2=preset=9e'
+ )
+ local test_variant
+ for test_variant in "${test_variants[@]}" ; do
+ "${BUILD_DIR}"/src/xz/xz -c ${test_variant} xz-pgo-test-01.tar | "${BUILD_DIR}"/src/xz/xz -c -d - > /dev/null
+ assert "Testing '${test_variant}' variant failed"
+ done
+ fi
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
+ fi
+
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
+ fi
}
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
- rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+
+ if use doc ; then
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+ fi
}
pkg_preinst() {
diff --git a/app-arch/zchunk/Manifest b/app-arch/zchunk/Manifest
new file mode 100644
index 000000000000..3ea0402f20fb
--- /dev/null
+++ b/app-arch/zchunk/Manifest
@@ -0,0 +1,2 @@
+DIST zchunk-1.3.2.tar.gz 1508683 BLAKE2B a8b866d28e3a0f5bf5fda3b44f5f1d0589c374dd700d8c64497d729758e35ed1215367ff8b1114e436a776a419f1aa329f429016981f11c19fd0896db3520811 SHA512 32f3167db747a494373c03941450e8b6b7eb6ad6a07633ccb9dbd3176ffb79073746bbdf3f132605ad51de23b3b20434d1580cf7cd72e0b658263bb32359f5bc
+DIST zchunk-1.4.0.tar.gz 1513670 BLAKE2B 97fa848f7f760874f4a521153983fb8263680ff57f04644ed124aa1c81fcb36d068d489c83bd95e2e4e70efa79892a835c10be8b61a3674550e8218f23852ac4 SHA512 7fbe50182d46e4e8ce8730959cd97ea39b48dd77d034303435ce15caec194409984d435167d3b55769577d6be6c539573eddd9351f178377a756babc508d6281
diff --git a/app-arch/zchunk/metadata.xml b/app-arch/zchunk/metadata.xml
new file mode 100644
index 000000000000..fa8442f5cd87
--- /dev/null
+++ b/app-arch/zchunk/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zchunk/zchunk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/zchunk/zchunk-1.3.2.ebuild b/app-arch/zchunk/zchunk-1.3.2.ebuild
new file mode 100644
index 000000000000..e89d8926554d
--- /dev/null
+++ b/app-arch/zchunk/zchunk-1.3.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="File format designed for highly efficient deltas with good compression"
+HOMEPAGE="https://github.com/zchunk/zchunk"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zchunk/zchunk.git"
+else
+ SRC_URI="https://github.com/zchunk/zchunk/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/zstd:=
+ net-misc/curl
+ dev-libs/openssl:=
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use test tests)
+ )
+
+ meson_src_configure
+}
diff --git a/app-arch/zchunk/zchunk-1.4.0.ebuild b/app-arch/zchunk/zchunk-1.4.0.ebuild
new file mode 100644
index 000000000000..0759ca5b2011
--- /dev/null
+++ b/app-arch/zchunk/zchunk-1.4.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="File format designed for highly efficient deltas with good compression"
+HOMEPAGE="https://github.com/zchunk/zchunk"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zchunk/zchunk.git"
+else
+ SRC_URI="https://github.com/zchunk/zchunk/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/zstd:=
+ net-misc/curl
+ dev-libs/openssl:=
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use test tests)
+ )
+
+ meson_src_configure
+}
diff --git a/app-arch/zchunk/zchunk-9999.ebuild b/app-arch/zchunk/zchunk-9999.ebuild
new file mode 100644
index 000000000000..e89d8926554d
--- /dev/null
+++ b/app-arch/zchunk/zchunk-9999.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="File format designed for highly efficient deltas with good compression"
+HOMEPAGE="https://github.com/zchunk/zchunk"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zchunk/zchunk.git"
+else
+ SRC_URI="https://github.com/zchunk/zchunk/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ app-arch/zstd:=
+ net-misc/curl
+ dev-libs/openssl:=
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use test tests)
+ )
+
+ meson_src_configure
+}
diff --git a/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
new file mode 100644
index 000000000000..f776fb3ac04f
--- /dev/null
+++ b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
@@ -0,0 +1,219 @@
+https://bugs.gentoo.org/869203
+
+See also OE's variant: https://cgit.openembedded.org/openembedded-core/commit/?id=f898db2607ba3837f81292af92bc8cb605b96cb3
+--- a/unix/configure
++++ b/unix/configure
+@@ -32,7 +32,7 @@ CFLAGS_BZ=''
+ echo 'Check C compiler type (optimization options)'
+ # Sun C?
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __SUNPRO_C
+ bad code
+@@ -47,7 +47,7 @@ if test $? -eq 0; then
+ else
+ # Tru64 DEC/Compaq/HP C?
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __DECC
+ bad code
+@@ -62,7 +62,7 @@ _EOF_
+ else
+ # HP-UX HP C?
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifdef __GNUC__
+ bad code
+@@ -88,7 +88,7 @@ _EOF_
+ else
+ # GNU C?
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __GNUC__
+ bad code
+@@ -197,7 +197,7 @@ else
+ echo " Check if OS already has bzip2 library installed"
+ cat > conftest.c << _EOF_
+ #include "bzlib.h"
+-int main()
++int main(void)
+ {
+ bz_stream strm;
+ BZ2_bzCompressEnd(&strm);
+@@ -260,7 +260,7 @@ rm -f _match.s _match.o _crc_i386.s _crc_i386.o
+
+ echo Check for ANSI options
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __STDC__
+ forget it
+@@ -288,7 +288,7 @@ $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+ echo Check the handling of const
+ cat > conftest.c << _EOF_
+ typedef int charset[2];
+-int main()
++int main(void)
+ {
+ const charset x;
+ const char *foo;
+@@ -303,7 +303,7 @@ echo Check for time_t
+ cat > conftest.c << _EOF_
+ #include <sys/types.h>
+ #include <time.h>
+-int main()
++int main(void)
+ {
+ time_t t;
+ return 0;
+@@ -315,8 +315,9 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+
+ echo Check for size_t
+ cat > conftest.c << _EOF_
++#include <stddef.h>
+ #include <sys/types.h>
+-int main()
++int main(void)
+ {
+ size_t s;
+ return 0;
+@@ -329,7 +330,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+ echo Check for off_t
+ cat > conftest.c << _EOF_
+ #include <sys/types.h>
+-int main()
++int main(void)
+ {
+ off_t s;
+ return 0;
+@@ -353,7 +354,7 @@ cat > conftest.c << _EOF_
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+ struct stat s;
+
+@@ -409,7 +410,7 @@ cat > conftest.c << _EOF_
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+ off_t offset;
+ struct stat s;
+@@ -453,7 +454,7 @@ echo Check for wide char support
+ cat > conftest.c << _EOF_
+ #include <stdlib.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+ int wsize;
+ wchar_t *wide_string;
+@@ -489,7 +490,7 @@ fi
+ echo Check for gcc no-builtin flag
+ # -fno-builtin since version 2
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #if __GNUC__ >= 2
+ return 0;
+@@ -508,14 +509,14 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+ for func in rmdir strchr strrchr rename mktemp mktime mkstemp
+ do
+ echo Check for $func
+- echo "int main(){ $func(); return 0; }" > conftest.c
++ echo "char $func(); int main(void){ return $func(); }" > conftest.c
+ $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`"
+ done
+
+
+ echo Check for memset
+-echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c
++echo "int main(void){ char memset(); return memset(); }" > conftest.c
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM"
+
+@@ -523,7 +524,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ echo Check for memmove
+ cat > conftest.c << _EOF_
+ #include <string.h>
+-int main() { int a; int b = 0; memmove( &a, &b, sizeof( a)); return a; }
++int main(void) { int a; int b = 0; memmove( &a, &b, sizeof( a)); return a; }
+ _EOF_
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_MEMMOVE"
+@@ -532,7 +533,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ echo Check for strerror
+ cat > conftest.c << _EOF_
+ #include <string.h>
+-int main() { strerror( 0); return 0; }
++int main(void) { strerror(0); return 0; }
+ _EOF_
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_STRERROR"
+@@ -540,7 +541,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ echo Check for errno declaration
+ cat > conftest.c << _EOF_
+ #include <errno.h>
+-main()
++int main(void)
+ {
+ errno = 0;
+ return 0;
+@@ -552,7 +553,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+
+ echo Check for directory libraries
+ cat > conftest.c << _EOF_
+-int main() { return closedir(opendir(".")); }
++int main(void) { char closedir(); char opendir(); return closedir(opendir()); }
+ _EOF_
+
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+@@ -574,7 +575,7 @@ fi
+ # Dynix/ptx 1.3 needed this
+
+ echo Check for readlink
+-echo "int main(){ return readlink(); }" > conftest.c
++echo "int main(void){ char readlink(); return readlink(); }" > conftest.c
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ if [ $? -ne 0 ]; then
+ $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null
+@@ -617,7 +618,7 @@ CFLAGS="${CFLAGS} ${OPT}"
+
+ echo Check for valloc
+ cat > conftest.c << _EOF_
+-main()
++int main(void)
+ {
+ #ifdef MMAP
+ valloc();
+@@ -652,12 +653,12 @@ elif [ -f /xenix ]; then
+ fi
+ elif uname -X >/dev/null 2>/dev/null; then
+ # SCO shared library check
+- echo "int main() { return 0;}" > conftest.c
++ echo "int main(void) { return 0;}" > conftest.c
+ $CC -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null
+ [ $? -eq 0 ] && LFLAGS2="-lc_s -nointl"
+ else
+ SYSTEM=`uname -s 2>/dev/null` || SYSTEM="unknown"
+- echo "int main() { return 0;}" > conftest.c
++ echo "int main(void) { return 0;}" > conftest.c
+ case $SYSTEM in
+ OSF1|ULTRIX)
+ echo Check for -Olimit option
diff --git a/app-arch/zip/metadata.xml b/app-arch/zip/metadata.xml
index 564fd76677c8..a703875414c6 100644
--- a/app-arch/zip/metadata.xml
+++ b/app-arch/zip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/app-arch/zip/zip-3.0-r4.ebuild b/app-arch/zip/zip-3.0-r4.ebuild
deleted file mode 100644
index 09c1613a642e..000000000000
--- a/app-arch/zip/zip-3.0-r4.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit toolchain-funcs flag-o-matic
-
-MY_P="${PN}${PV//.}"
-DESCRIPTION="Info ZIP (encryption support)"
-HOMEPAGE="http://www.info-zip.org/"
-SRC_URI="mirror://sourceforge/infozip/${MY_P}.zip"
-
-LICENSE="Info-ZIP"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux"
-IUSE="bzip2 crypt natspec unicode"
-
-DEPEND="${RDEPEND}"
-RDEPEND="bzip2? ( app-arch/bzip2 )
- natspec? ( dev-libs/libnatspec )"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/${P}"-no-crypt.patch #238398
- "${FILESDIR}/${P}"-pic.patch
- "${FILESDIR}/${P}"-exec-stack.patch #122849
- "${FILESDIR}/${P}"-build.patch #200995
- "${FILESDIR}/${P}"-zipnote-freeze.patch #322047
- "${FILESDIR}/${P}"-format-security.patch #512414
-)
-
-src_prepare() {
- default
- use natspec && eapply "${FILESDIR}/${PN}"-3.0-natspec.patch #275244
-}
-
-src_configure() {
- append-cppflags \
- -DLARGE_FILE_SUPPORT \
- -DUIDGID_NOT_16BIT \
- -D$(usex bzip2 '' NO)BZIP2_SUPPORT \
- -D$(usex crypt '' NO)CRYPT \
- -D$(usex unicode '' NO)UNICODE_SUPPORT
- # Third arg disables bzip2 logic as we handle it ourselves above.
- sh ./unix/configure "$(tc-getCC)" "-I. -DUNIX ${CFLAGS} ${CPPFLAGS}" "${T}" || die
- if use bzip2 ; then
- sed -i -e "s:LFLAGS2=:&'-lbz2 ':" flags || die
- fi
-}
-
-src_compile() {
- emake \
- CPP="$(tc-getCPP)" \
- -f unix/Makefile generic
-}
-
-src_install() {
- dobin zip zipnote zipsplit
- doman man/zip{,note,split}.1
- if use crypt ; then
- dobin zipcloak
- doman man/zipcloak.1
- fi
- dodoc BUGS CHANGES README* TODO WHATSNEW WHERE proginfo/*.txt
-}
diff --git a/app-arch/zip/zip-3.0-r7.ebuild b/app-arch/zip/zip-3.0-r7.ebuild
new file mode 100644
index 000000000000..2797a63290fd
--- /dev/null
+++ b/app-arch/zip/zip-3.0-r7.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs flag-o-matic
+
+MY_P="${PN}${PV//.}"
+DESCRIPTION="Info ZIP (encryption support)"
+HOMEPAGE="https://infozip.sourceforge.net/Zip.html"
+SRC_URI="mirror://sourceforge/infozip/${MY_P}.zip"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="Info-ZIP"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="bzip2 crypt natspec unicode"
+
+RDEPEND="bzip2? ( app-arch/bzip2 )
+ natspec? ( dev-libs/libnatspec )"
+DEPEND="${RDEPEND}"
+BDEPEND="app-arch/unzip"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-no-crypt.patch # bug #238398
+ "${FILESDIR}"/${P}-pic.patch
+ "${FILESDIR}"/${P}-exec-stack.patch # bug #122849
+ "${FILESDIR}"/${P}-build.patch # bug #200995
+ "${FILESDIR}"/${P}-zipnote-freeze.patch # bug #322047
+ "${FILESDIR}"/${P}-format-security.patch # bug #512414
+ "${FILESDIR}"/${P}-clang-15-configure-tests.patch
+)
+
+src_prepare() {
+ # bug #275244
+ use natspec && PATCHES+=( "${FILESDIR}"/${PN}-3.0-natspec.patch )
+ default
+}
+
+src_configure() {
+ # Needed for Clang 16
+ append-flags -std=gnu89
+
+ append-cppflags \
+ -DLARGE_FILE_SUPPORT \
+ -DUIDGID_NOT_16BIT \
+ -D$(usev !bzip2 'NO')BZIP2_SUPPORT \
+ -D$(usev !crypt 'NO')CRYPT \
+ -D$(usev !unicode 'NO')UNICODE_SUPPORT
+
+ # - We use 'sh' because: 1. lacks +x bit, easier; 2. it tries to load bashdb
+ # - Third arg disables bzip2 logic as we handle it ourselves above.
+ edo sh ./unix/configure "$(tc-getCC)" "-I. -DUNIX ${CFLAGS} ${CPPFLAGS}" "${T}"
+
+ if use bzip2 ; then
+ sed -i -e "s:LFLAGS2=:&'-lbz2 ':" flags || die
+ fi
+}
+
+src_compile() {
+ emake \
+ CPP="$(tc-getCPP)" \
+ -f unix/Makefile generic
+}
+
+src_install() {
+ dobin zip zipnote zipsplit
+ doman man/zip{,note,split}.1
+ if use crypt ; then
+ dobin zipcloak
+ doman man/zipcloak.1
+ fi
+ dodoc BUGS CHANGES README* TODO WHATSNEW WHERE proginfo/*.txt
+}
diff --git a/app-arch/zoo/files/zoo-2.10-gentoo-fbsd-r1.patch b/app-arch/zoo/files/zoo-2.10-gentoo-fbsd-r1.patch
index ba7d31e4a47d..b1e598359f6c 100644
--- a/app-arch/zoo/files/zoo-2.10-gentoo-fbsd-r1.patch
+++ b/app-arch/zoo/files/zoo-2.10-gentoo-fbsd-r1.patch
@@ -1,5 +1,5 @@
---- a/sysv.c 2007-06-16 15:01:53 +0200
-+++ b/sysv.c.new 2007-06-16 14:38:38 +0200
+--- a/sysv.c
++++ b/sysv.c
@@ -63,8 +63,8 @@
return (fname); /* default is no-op */
}
@@ -11,8 +11,8 @@
struct tm *localtime ();
/* Function gettz(), returns the offset from GMT in seconds of the
---- a/zoo.h 2007-06-16 15:01:53 +0200
-+++ /zoo.h.new 2007-06-16 14:57:58 +0200
+--- a/zoo.h
++++ b/zoo.h
@@ -95,6 +95,9 @@
#endif
@@ -22,4 +22,4 @@
+typedef unsigned short ushort;
/* WARNING: Static initialization in zooadd.c or zooext.c depends on the
- order of fields in struct zoo_header */ \ No newline at end of file
+ order of fields in struct zoo_header */
diff --git a/app-arch/zoo/files/zoo-2.10-implicit-int.patch b/app-arch/zoo/files/zoo-2.10-implicit-int.patch
new file mode 100644
index 000000000000..e29f3dff8f1f
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-implicit-int.patch
@@ -0,0 +1,75 @@
+Clang 16 will not allow implicit int function defitions by default.
+This patch gives all functions a proper definitons.
+
+See also: https://wiki.gentoo.org/wiki/Modern_C_porting
+
+Bug: https://bugs.gentoo.org/878611
+Upstream PR: https://github.com/jduerstock/zoo/pull/1
+
+--- a/fiz.c
++++ b/fiz.c
+@@ -24,6 +24,7 @@ file by supplying the offset of the file.
+ void prtctrl ();
+ void prtch ();
+
++int
+ main(argc,argv)
+ register int argc;
+ register char **argv;
+--- a/mstime.i
++++ b/mstime.i
+@@ -12,6 +12,7 @@ static char mstimeid[]="@(#) mstime.i 2.2 88/01/24 12:47:58";
+ Function mstime() converts time in seconds since January 1 of BASEYEAR
+ to MS-DOS format date and time.
+ */
++void
+ mstime(longtime, date, time)
+ long longtime; /* input: seconds since Jan 1, BASEYEAR */
+ int *date, *time; /* output: MS-DOS format date and time */
+--- a/zoo.c
++++ b/zoo.c
+@@ -44,6 +44,7 @@ int next_arg = FIRST_ARG; /* filenames start at this position */
+ int arg_count; /* count of arguments supplied to program */
+ char **arg_vector; /* vector of arguments supplied to program */
+
++int
+ main(argc,argv)
+ register int argc;
+ register char **argv;
+--- a/zoofilt.c
++++ b/zoofilt.c
+@@ -41,8 +41,10 @@ char *option;
+ unsigned int filetag; /* tag stored in input */
+ int stat1, stat2, stat3; /* status codes */
+ int use_lzh = 0; /* use lzh instead */
+- extern lzc(), lzh_encode(); /* possible encoders */
+- extern lzd(), lzh_decode(); /* and decoders */
++ extern int lzc(); /* possible encoders */
++ extern int lzh_encode();
++ extern int lzd(); /* and decoders */
++ extern int lzh_decode();
+
+ while (*++option) {
+ switch (*option) {
+--- a/nixtime.i
++++ b/nixtime.i
+@@ -20,7 +20,7 @@
+ Function gettime() gets the date and time of the file handle supplied.
+ Date and time is in MSDOS format.
+ */
+-int gettime (file, date, time)
++void gettime (file, date, time)
+ ZOOFILE file;
+ unsigned *date, *time;
+ {
+--- a/zoofns.h
++++ b/zoofns.h
+@@ -46,7 +46,7 @@
+ int exists PARMS ((char *));
+ int getfile PARMS ((ZOOFILE, ZOOFILE, long, int));
+ int getutime PARMS ((char *, unsigned *, unsigned *));
+-int gettime PARMS ((ZOOFILE, unsigned *, unsigned *));
++void gettime PARMS ((ZOOFILE, unsigned *, unsigned *));
+ T_SIGNAL handle_break PARMS ((int));
+
+ #ifdef USE_ASCII
diff --git a/app-arch/zoo/files/zoo-2.10-makefile.patch b/app-arch/zoo/files/zoo-2.10-makefile.patch
new file mode 100644
index 000000000000..89269b480457
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-makefile.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/726376
+https://bugs.gentoo.org/721888
+https://bugs.gentoo.org/729126
+--- a/makefile
++++ b/makefile
+@@ -18,15 +18,12 @@
+
+ MAKE = make # needed for some systems e.g. older BSD
+
+-CC = cc
+-CFLAGS =
+ MODEL =
+ EXTRA = -DBIG_MEM -DNDEBUG
+ LINTFLAGS = -DLINT
+-OPTIM = `dpkg-buildflags --get CFLAGS`
++OPTIM = $(CFLAGS)
+ OPTIM += -Wall
+-OPTIM += `dpkg-buildflags --get CPPFLAGS`
+-LDFLAGS = `dpkg-buildflags --get LDFLAGS`
++OPTIM += $(CPPFLAGS)
+
+ DESTDIR = /usr/local/bin
+
+@@ -102,7 +99,7 @@ bsd:
+
+ # Linux
+ linux:
+- $(MAKE) CC="gcc" CFLAGS="-c $(OPTIM) $(LINTFLAGS) -DLINUX -DANSI_HDRS" LDFLAGS="$(LDFLAGS)" $(TARGETS)
++ $(MAKE) CC="$(CC)" CFLAGS="-c $(OPTIM) $(LINTFLAGS) -DLINUX -DANSI_HDRS" LDFLAGS="$(LDFLAGS)" $(TARGETS)
+
+ # Linux64
+ linux64:
diff --git a/app-arch/zoo/metadata.xml b/app-arch/zoo/metadata.xml
index 6f49eba8f496..24fb120f7590 100644
--- a/app-arch/zoo/metadata.xml
+++ b/app-arch/zoo/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">jduerstock/zoo</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/zoo/zoo-2.10-r5.ebuild b/app-arch/zoo/zoo-2.10-r5.ebuild
index 610c3c251622..e1fad2e5278d 100644
--- a/app-arch/zoo/zoo-2.10-r5.ebuild
+++ b/app-arch/zoo/zoo-2.10-r5.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit toolchain-funcs
@@ -9,23 +9,24 @@ DESCRIPTION="Manipulate archives of files in compressed form"
HOMEPAGE="https://packages.debian.org/sid/utils/zoo"
SRC_URI="http://http.debian.net/debian/pool/main/z/${PN}/${PN}_${PV}.orig.tar.gz
http://http.debian.net/debian/pool/main/z/${PN}/${PN}_${PV}-28.debian.tar.xz"
+S="${WORKDIR}"/${P}.orig
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint ~sparc-solaris ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 ~arm ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-S="${WORKDIR}/${P}.orig"
+PATCHES=(
+ "${WORKDIR}"/debian/patches/.
+ "${FILESDIR}"/${P}-gentoo-fbsd-r1.patch
+ "${FILESDIR}"/${P}-makefile.patch
+)
-PATCHES=( "${FILESDIR}/zoo-2.10-gentoo-fbsd-r1.patch" )
-
-src_prepare() {
- eapply "${WORKDIR}"/debian/patches/*.patch
- default
+src_configure() {
+ tc-export CC
}
src_compile() {
- emake CC="$(tc-getCC)" linux
+ emake linux
}
src_install() {
diff --git a/app-arch/zoo/zoo-2.10-r6.ebuild b/app-arch/zoo/zoo-2.10-r6.ebuild
new file mode 100644
index 000000000000..596ed3ada797
--- /dev/null
+++ b/app-arch/zoo/zoo-2.10-r6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Manipulate archives of files in compressed form"
+HOMEPAGE="https://github.com/jduerstock/zoo"
+SRC_URI="http://http.debian.net/debian/pool/main/z/${PN}/${PN}_${PV}.orig.tar.gz
+ http://http.debian.net/debian/pool/main/z/${PN}/${PN}_${PV}-28.debian.tar.xz"
+S="${WORKDIR}"/${P}.orig
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+
+PATCHES=(
+ "${WORKDIR}"/debian/patches/.
+ "${FILESDIR}"/${P}-gentoo-fbsd-r1.patch
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-implicit-int.patch
+)
+
+src_configure() {
+ tc-export CC
+}
+
+src_compile() {
+ emake linux
+}
+
+src_install() {
+ dobin zoo fiz
+ doman zoo.1 fiz.1
+}
diff --git a/app-arch/zopfli/Manifest b/app-arch/zopfli/Manifest
index 4fa484c5845e..4e3b97f60b74 100644
--- a/app-arch/zopfli/Manifest
+++ b/app-arch/zopfli/Manifest
@@ -1,2 +1 @@
-DIST zopfli-1.0.2.tar.gz 136035 BLAKE2B 23b9af324f50f2fa7276cdb8ac042e251f4e295617638c6e3999b8ecaef5d61d1fe21dd7b8d84e19f7f682f3a592674fcd6c19f359efb86ac4ea57acaac3761e SHA512 290a9506a0c1f3d0510230ca21017e1d2bed830f3f96f9d38c9f27210d89123c3baebd05a1da988eccd5395a7b007f6690f08eb9087550a06eaa69d7531f074e
DIST zopfli-1.0.3.tar.gz 195227 BLAKE2B fed322e6d0baf8e9008e91fef4c459e8f67f0e7d62942469893d89b8ca39ace6d1ac68cbbc322e938e66a613ea9a36e3ae9f59550b5f4964107bec490a07038a SHA512 362cbeee0b3f04a4c5da512f82671491f874d4ec7b693dca9724ae42123d7ac184cc4d5de1872b4f1fc938c97f79dfdb482f62d1fca4a17cff6d267f6021e8d2
diff --git a/app-arch/zopfli/files/zopfli-1.0.2-makefile.patch b/app-arch/zopfli/files/zopfli-1.0.2-makefile.patch
deleted file mode 100644
index 07a1c121032a..000000000000
--- a/app-arch/zopfli/files/zopfli-1.0.2-makefile.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 90221a4d79dcbf44239b9b07cb7c3ec7c090a4a3 Mon Sep 17 00:00:00 2001
-From: Sebastian Pipping <sebastian@pipping.org>
-Date: Fri, 18 May 2018 20:43:23 +0200
-Subject: [PATCH] Respect env CC/CXX, split LDFLAGS, use libraries
-
-This is a port of files/zopfli-1.0.1-makefile.patch to 1.0.2.
----
- Makefile | 32 +++++++++++++++++++-------------
- 1 file changed, 19 insertions(+), 13 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 30b931e..bf063df 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,8 +1,10 @@
--CC = gcc
--CXX = g++
-+CC ?= gcc
-+CXX ?= g++
-
--CFLAGS = -W -Wall -Wextra -ansi -pedantic -lm -O2 -Wno-unused-function
--CXXFLAGS = -W -Wall -Wextra -ansi -pedantic -O2
-+CFLAGS += -W -Wall -Wextra -ansi -pedantic
-+CXXFLAGS += -W -Wall -Wextra -ansi -pedantic
-+LDFLAGS += -L. -Wno-unused-function
-+LIBS = -lm
-
- ZOPFLILIB_SRC = src/zopfli/blocksplitter.c src/zopfli/cache.c\
- src/zopfli/deflate.c src/zopfli/gzip_container.c\
-@@ -18,24 +20,28 @@ ZOPFLIPNGBIN_SRC := src/zopflipng/zopflipng_bin.cc
-
- .PHONY: zopfli zopflipng
-
-+all: zopfli zopflipng
-+
- # Zopfli binary
--zopfli:
-- $(CC) $(ZOPFLILIB_SRC) $(ZOPFLIBIN_SRC) $(CFLAGS) -o zopfli
-+zopfli: libzopfli
-+ $(CC) $(ZOPFLIBIN_SRC) $(CFLAGS) $(LDFLAGS) $(LIBS) -lzopfli -o zopfli
-
- # Zopfli shared library
- libzopfli:
- $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -fPIC -c
-- $(CC) $(ZOPFLILIB_OBJ) $(CFLAGS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.2
-+ $(CC) $(ZOPFLILIB_OBJ) $(CFLAGS) $(LDFLAGS) $(LIBS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.2
-+ @ln -s libzopfli.so.1.0.2 libzopfli.so.1
-+ @ln -s libzopfli.so.1.0.2 libzopfli.so
-
- # ZopfliPNG binary
--zopflipng:
-- $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -c
-- $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(ZOPFLIPNGBIN_SRC) $(CFLAGS) -o zopflipng
-+zopflipng: libzopflipng
-+ $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGBIN_SRC) $(CXXFLAGS) $(LDFLAGS) $(LIBS) -lzopflipng -o zopflipng
-
- # ZopfliPNG shared library
--libzopflipng:
-- $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -fPIC -c
-- $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(CFLAGS) -fPIC --shared -Wl,-soname,libzopflipng.so.1 -o libzopflipng.so.1.0.2
-+libzopflipng: libzopfli
-+ $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(CXXFLAGS) $(LDFLAGS) $(LIBS) -fPIC --shared -Wl,-soname,libzopflipng.so.1 -o libzopflipng.so.1.0.2
-+ @ln -s libzopflipng.so.1.0.2 libzopflipng.so.1
-+ @ln -s libzopflipng.so.1.0.2 libzopflipng.so
-
- # Remove all libraries and binaries
- clean:
---
-2.17.0
-
diff --git a/app-arch/zopfli/metadata.xml b/app-arch/zopfli/metadata.xml
index 13e09b879c23..10cab9f43f90 100644
--- a/app-arch/zopfli/metadata.xml
+++ b/app-arch/zopfli/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/app-arch/zopfli/zopfli-1.0.2.ebuild b/app-arch/zopfli/zopfli-1.0.2.ebuild
deleted file mode 100644
index b1ceb137f61c..000000000000
--- a/app-arch/zopfli/zopfli-1.0.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Very good, but slow, deflate or zlib compression"
-HOMEPAGE="https://github.com/google/zopfli/"
-SRC_URI="https://github.com/google/zopfli/archive/${P}.tar.gz"
-
-S="${WORKDIR}/${PN}-${P}"
-
-LICENSE="Apache-2.0"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-
-DOCS=( CONTRIBUTORS README README.zopflipng )
-
-PATCHES=( "${FILESDIR}"/${P}-makefile.patch )
-
-# zopflipng statically links an exact version of LodePNG (https://github.com/lvandeve/lodepng)
-
-src_prepare() {
- default
- tc-export CC CXX
-}
-
-# The Makefile has no install phase
-src_install() {
- dolib.so libzopfli.so*
- doheader src/zopfli/zopfli.h
-
- dobin ${PN}
-
- # This version was erroneously not bumped to match ${PV}
- dolib.so libzopflipng.so*
- doheader src/zopflipng/zopflipng_lib.h
-
- dobin zopflipng
-}
diff --git a/app-arch/zopfli/zopfli-1.0.3.ebuild b/app-arch/zopfli/zopfli-1.0.3.ebuild
index 5ee720b81960..d1c897089087 100644
--- a/app-arch/zopfli/zopfli-1.0.3.ebuild
+++ b/app-arch/zopfli/zopfli-1.0.3.ebuild
@@ -1,18 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit cmake
DESCRIPTION="Very good, but slow, deflate or zlib compression"
HOMEPAGE="https://github.com/google/zopfli/"
SRC_URI="https://github.com/google/zopfli/archive/${P}.tar.gz"
-
S="${WORKDIR}/${PN}-${P}"
LICENSE="Apache-2.0"
SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
DOCS=( CONTRIBUTORS README README.zopflipng )
diff --git a/app-arch/zpaq-extras/metadata.xml b/app-arch/zpaq-extras/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/zpaq-extras/metadata.xml
+++ b/app-arch/zpaq-extras/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/zpaq-extras/zpaq-extras-3.ebuild b/app-arch/zpaq-extras/zpaq-extras-3.ebuild
index cb8fc5815ebf..f4bca00bfc94 100644
--- a/app-arch/zpaq-extras/zpaq-extras-3.ebuild
+++ b/app-arch/zpaq-extras/zpaq-extras-3.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit toolchain-funcs
DESCRIPTION="A set of additional compression profiles for app-arch/zpaq"
@@ -18,17 +19,15 @@ SRC_URI="http://mattmahoney.net/dc/bwt_j3.zip
http://mattmahoney.net/dc/lz1.zip
http://mattmahoney.net/dc/lazy100.zip
http://mattmahoney.net/dc/lazy210.zip"
+S="${WORKDIR}"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
-DEPEND="app-arch/unzip"
+BDEPEND="app-arch/unzip"
RDEPEND=">=app-arch/zpaq-6.19"
-S=${WORKDIR}
-
src_unpack() {
local x
for x in ${A}; do
diff --git a/app-arch/zpaq/metadata.xml b/app-arch/zpaq/metadata.xml
index 0319eec4c8be..076793e3f54b 100644
--- a/app-arch/zpaq/metadata.xml
+++ b/app-arch/zpaq/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
diff --git a/app-arch/zpaq/zpaq-7.15.ebuild b/app-arch/zpaq/zpaq-7.15-r1.ebuild
index e4c812dd9a58..ac37de18a340 100644
--- a/app-arch/zpaq/zpaq-7.15.ebuild
+++ b/app-arch/zpaq/zpaq-7.15-r1.ebuild
@@ -1,27 +1,27 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit flag-o-matic pax-utils toolchain-funcs
-MY_P=${PN}${PV/./}
+MY_P="${PN}${PV/./}"
+
DESCRIPTION="Journaling incremental deduplicating archiving compressor"
HOMEPAGE="http://mattmahoney.net/dc/zpaq.html"
SRC_URI="http://mattmahoney.net/dc/${MY_P}.zip"
+S="${WORKDIR}"
LICENSE="Unlicense"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
IUSE="debug +jit"
# perl for pod2man
-DEPEND="
+BDEPEND="
app-arch/unzip
dev-lang/perl"
-S=${WORKDIR}
-
src_compile() {
use debug || append-cppflags -DNDEBUG
use jit || append-cppflags -DNOJIT
@@ -34,8 +34,8 @@ src_test() {
}
src_install() {
- emake install PREFIX="${ED%/}"/usr
- use jit && pax-mark m "${ED%/}"/usr/bin/zpaq
+ emake install PREFIX="${ED}"/usr
+ use jit && pax-mark m "${ED}"/usr/bin/zpaq
einstalldocs
}
diff --git a/app-arch/zstd/Manifest b/app-arch/zstd/Manifest
index 2619752ef2d7..ef1912e82040 100644
--- a/app-arch/zstd/Manifest
+++ b/app-arch/zstd/Manifest
@@ -1,2 +1,2 @@
-DIST zstd-1.4.4.tar.gz 1962617 BLAKE2B e21841a53b6c60703e5500cfc2a02923c4c3e57975aa57e1060310171e0d83d7c8eda1bd0510d5736db5c310d76847d2105ac5f614867fc3a9dc3086a035dfd7 SHA512 8209837e8eb14e474dfe21d5511085f46cef93b03ab77613fd41e7b8be652418231c38852669c8e0b55b78ad41ea2cb8008d0da122a83f8f27e32b5c86f045cf
-DIST zstd-1.4.5.tar.gz 1987927 BLAKE2B 1497d4e87040e5c71466468ebf1a57f4073666f2b005229925bc1d95a4b4fcb2a51d88bb79be20f21860e5750da42f8aac21d2997421d07ba37bd6bb12a28b55 SHA512 b03c497c3e0590c3d384cb856e3024f144b2bfac0d805d80e68deafa612c68237f12a2d657416d476a28059e80936c79f099fc42331464b417593895ea214387
+DIST zstd-1.5.5.tar.gz 2368543 BLAKE2B 7680e27a0adacfb809d9fc81e06d3f99bf74df30374d3b5cb2d58f667dd1b7d5c41697e608592709e17c0e32277f20a6d615edee409b5d7cdcb15da2799a2350 SHA512 99109ec0e07fa65c2101c9cb36be56b672bbd0ee69d265f924718e61f9192ae8385c8d9e4d0c318be9edfa6d849fd3d60e5f164fa120961449429ea3c5dab6b6
+DIST zstd-1.5.6.tar.gz 2406875 BLAKE2B fe17cf0950f8ee2cc07bfa2b41e97f36a1832e396386cb94a55bede975dc974920578cf147b39eecbc5b53ff06fe0dc1fe781a4cab9bc9f767ea28c0e786422e SHA512 54a578f2484da0520a6e9a24f501b9540a3fe3806785d6bc9db79fc095b7c142a7c121387c7eecd460ca71446603584ef1ba4d29a33ca90873338c9ffbd04f14
diff --git a/app-arch/zstd/files/zstd-1.4.4-make43.patch b/app-arch/zstd/files/zstd-1.4.4-make43.patch
deleted file mode 100644
index 679e0b791e33..000000000000
--- a/app-arch/zstd/files/zstd-1.4.4-make43.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 06a57cf57e3c4e887cadcf688e3081154f3f6db4 Mon Sep 17 00:00:00 2001
-From: Bimba Shrestha <bimbashrestha@fb.com>
-Date: Thu, 6 Feb 2020 14:10:51 -0800
-Subject: [PATCH] [build-issue] More portable header prefix usage (#) (#1987)
-
-* make 4.3 build issue fix
-
-* Changing header name and adding comment
----
- programs/Makefile | 11 +++++++----
- 1 file changed, 7 insertions(+), 4 deletions(-)
-
-diff --git a/programs/Makefile b/programs/Makefile
-index b75314a8..a9ee3cb5 100644
---- a/programs/Makefile
-+++ b/programs/Makefile
-@@ -94,9 +94,12 @@ endif
-
- VOID = /dev/null
-
-+# Make 4.3 doesn't support '\#' anymore (https://lwn.net/Articles/810071/)
-+NUM_SYMBOL := \#
-+
- # thread detection
- NO_THREAD_MSG := ==> no threads, building without multithreading support
--HAVE_PTHREAD := $(shell printf '\#include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c)
-+HAVE_PTHREAD := $(shell printf '$(NUM_SYMBOL)include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c)
- HAVE_THREAD := $(shell [ "$(HAVE_PTHREAD)" -eq "1" -o -n "$(filter Windows%,$(OS))" ] && echo 1 || echo 0)
- ifeq ($(HAVE_THREAD), 1)
- THREAD_MSG := ==> building with threading support
-@@ -108,7 +111,7 @@ endif
-
- # zlib detection
- NO_ZLIB_MSG := ==> no zlib, building zstd without .gz support
--HAVE_ZLIB := $(shell printf '\#include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c)
-+HAVE_ZLIB := $(shell printf '$(NUM_SYMBOL)include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c)
- ifeq ($(HAVE_ZLIB), 1)
- ZLIB_MSG := ==> building zstd with .gz compression support
- ZLIBCPP = -DZSTD_GZCOMPRESS -DZSTD_GZDECOMPRESS
-@@ -119,7 +122,7 @@ endif
-
- # lzma detection
- NO_LZMA_MSG := ==> no liblzma, building zstd without .xz/.lzma support
--HAVE_LZMA := $(shell printf '\#include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c)
-+HAVE_LZMA := $(shell printf '$(NUM_SYMBOL)include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c)
- ifeq ($(HAVE_LZMA), 1)
- LZMA_MSG := ==> building zstd with .xz/.lzma compression support
- LZMACPP = -DZSTD_LZMACOMPRESS -DZSTD_LZMADECOMPRESS
-@@ -130,7 +133,7 @@ endif
-
- # lz4 detection
- NO_LZ4_MSG := ==> no liblz4, building zstd without .lz4 support
--HAVE_LZ4 := $(shell printf '\#include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c)
-+HAVE_LZ4 := $(shell printf '$(NUM_SYMBOL)include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c)
- ifeq ($(HAVE_LZ4), 1)
- LZ4_MSG := ==> building zstd with .lz4 compression support
- LZ4CPP = -DZSTD_LZ4COMPRESS -DZSTD_LZ4DECOMPRESS
---
-2.24.1
-
diff --git a/app-arch/zstd/files/zstd-1.4.4-pkgconfig_libdir.patch b/app-arch/zstd/files/zstd-1.4.4-pkgconfig_libdir.patch
deleted file mode 100644
index e8d745a56aa2..000000000000
--- a/app-arch/zstd/files/zstd-1.4.4-pkgconfig_libdir.patch
+++ /dev/null
@@ -1,215 +0,0 @@
-From e668c9b52896e1cf92c99da3b01e3bdbbae77100 Mon Sep 17 00:00:00 2001
-From: "W. Felix Handte" <w@felixhandte.com>
-Date: Tue, 18 Feb 2020 10:50:38 -0500
-Subject: [PATCH 1/3] Fix pkg-config File Generation Again
-
-Revises #1851. Fixes #1900. Replaces #1930.
-
-Thanks to @orbea, @neheb, @Polynomial-C, and particularly @eli-schwartz for
-pointing out the problem and suggesting solutions.
-
-Tested with
-
- ```
- make -C lib clean libzstd.pc
- cat lib/libzstd.pc
-
- # should fail
- make -C lib clean libzstd.pc LIBDIR=/foo
- make -C lib clean libzstd.pc INCLUDEDIR=/foo
- make -C lib clean libzstd.pc LIBDIR=/usr/localfoo
- make -C lib clean libzstd.pc INCLUDEDIR=/usr/localfoo
- make -C lib clean libzstd.pc LIBDIR=/usr/local/lib prefix=/foo
- make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/include prefix=/foo
-
- # should succeed
- make -C lib clean libzstd.pc LIBDIR=/usr/local/foo
- make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/foo
- make -C lib clean libzstd.pc LIBDIR=/usr/local/
- make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/
- make -C lib clean libzstd.pc LIBDIR=/usr/local
- make -C lib clean libzstd.pc INCLUDEDIR=/usr/local
- make -C lib clean libzstd.pc LIBDIR=/tmp/foo prefix=/tmp
- make -C lib clean libzstd.pc INCLUDEDIR=/tmp/foo prefix=/tmp
- make -C lib clean libzstd.pc LIBDIR=/tmp/foo prefix=/tmp/foo
- make -C lib clean libzstd.pc INCLUDEDIR=/tmp/foo prefix=/tmp/foo
-
- # should also succeed
- make -C lib clean libzstd.pc prefix=/foo LIBDIR=/foo/bar INCLUDEDIR=/foo/
- cat lib/libzstd.pc
-
- mkdir out
- cd out
- cmake ../build/cmake
- make
- cat lib/libzstd.pc
- ```
----
- build/cmake/lib/CMakeLists.txt | 5 +++--
- lib/Makefile | 14 ++++++++++++--
- lib/libzstd.pc.in | 4 ++--
- 3 files changed, 17 insertions(+), 6 deletions(-)
-
-diff --git a/build/cmake/lib/CMakeLists.txt b/build/cmake/lib/CMakeLists.txt
-index e92647bf1..29ff57aa0 100644
---- a/build/cmake/lib/CMakeLists.txt
-+++ b/build/cmake/lib/CMakeLists.txt
-@@ -134,11 +134,12 @@ endif ()
- if (UNIX)
- # pkg-config
- set(PREFIX "${CMAKE_INSTALL_PREFIX}")
-- set(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
-+ set(LIBDIR "${CMAKE_INSTALL_LIBDIR}")
-+ set(INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}")
- set(VERSION "${zstd_VERSION_MAJOR}.${zstd_VERSION_MINOR}.${zstd_VERSION_PATCH}")
- add_custom_target(libzstd.pc ALL
- ${CMAKE_COMMAND} -DIN="${LIBRARY_DIR}/libzstd.pc.in" -DOUT="libzstd.pc"
-- -DPREFIX="${PREFIX}" -DVERSION="${VERSION}"
-+ -DPREFIX="${PREFIX}" -DLIBDIR="${LIBDIR}" -DINCLUDEDIR="${INCLUDEDIR}" -DVERSION="${VERSION}"
- -P "${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig.cmake"
- COMMENT "Creating pkg-config file")
-
-diff --git a/lib/Makefile b/lib/Makefile
-index fd1710cf1..dbd64994c 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -224,6 +224,16 @@ LIBDIR ?= $(libdir)
- includedir ?= $(PREFIX)/include
- INCLUDEDIR ?= $(includedir)
-
-+PCLIBDIR ?= $(shell echo "$(LIBDIR)" | sed -n -e "s@^$(exec_prefix)\\(/\\|$$\\)@@p")
-+PCINCDIR ?= $(shell echo "$(INCLUDEDIR)" | sed -n -e "s@^$(prefix)\\(/\\|$$\\)@@p")
-+
-+ifeq (,$(shell echo "$(LIBDIR)" | sed -n -e "\\@^$(exec_prefix)\\(/\\|$$\\)@ p"))
-+$(error configured libdir ($(LIBDIR)) is outside of prefix ($(prefix)), can't generate pkg-config file)
-+endif
-+ifeq (,$(shell echo "$(INCLUDEDIR)" | sed -n -e "\\@^$(prefix)\\(/\\|$$\\)@ p"))
-+$(error configured includedir ($(INCLUDEDIR)) is outside of exec_prefix ($(exec_prefix)), can't generate pkg-config file)
-+endif
-+
- ifneq (,$(filter $(shell uname),FreeBSD NetBSD DragonFly))
- PKGCONFIGDIR ?= $(PREFIX)/libdata/pkgconfig
- else
-@@ -239,11 +249,11 @@ endif
- INSTALL_PROGRAM ?= $(INSTALL)
- INSTALL_DATA ?= $(INSTALL) -m 644
-
--
--libzstd.pc:
- libzstd.pc: libzstd.pc.in
- @echo creating pkgconfig
- @sed -e 's|@PREFIX@|$(PREFIX)|' \
-+ -e 's|@LIBDIR@|$(PCLIBDIR)|' \
-+ -e 's|@INCLUDEDIR@|$(PCINCDIR)|' \
- -e 's|@VERSION@|$(VERSION)|' \
- $< >$@
-
-diff --git a/lib/libzstd.pc.in b/lib/libzstd.pc.in
-index e7880be47..8ec0235ad 100644
---- a/lib/libzstd.pc.in
-+++ b/lib/libzstd.pc.in
-@@ -4,8 +4,8 @@
-
- prefix=@PREFIX@
- exec_prefix=${prefix}
--includedir=${prefix}/include
--libdir=${exec_prefix}/lib
-+includedir=${prefix}/@INCLUDEDIR@
-+libdir=${exec_prefix}/@LIBDIR@
-
- Name: zstd
- Description: fast lossless compression algorithm library
-
-From 73737231b95976f24b7b9bff96240976b11dcce0 Mon Sep 17 00:00:00 2001
-From: "W. Felix Handte" <w@felixhandte.com>
-Date: Tue, 18 Feb 2020 13:17:17 -0500
-Subject: [PATCH 2/3] Allow Manual Overriding of pkg-config Lib and Include
- Dirs
-
-When the `PCLIBDIR` or `PCINCDIR` is non-empty (either because we succeeded
-in removing the prefix, or because it was manually set), we don't need to
-perform the check. This lets us trust users who go to the trouble of setting
-a manual override, rather than still blindly failing the make.
-
-They'll still be prefixed with `${prefix}/` / `${exec_prefix}/` in the
-pkg-config file though.
----
- lib/Makefile | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/lib/Makefile b/lib/Makefile
-index dbd64994c..b067c11a2 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -227,12 +227,21 @@ INCLUDEDIR ?= $(includedir)
- PCLIBDIR ?= $(shell echo "$(LIBDIR)" | sed -n -e "s@^$(exec_prefix)\\(/\\|$$\\)@@p")
- PCINCDIR ?= $(shell echo "$(INCLUDEDIR)" | sed -n -e "s@^$(prefix)\\(/\\|$$\\)@@p")
-
-+ifeq (,$(PCLIBDIR))
-+# Additional prefix check is required, since the empty string is technically a
-+# valid PCLIBDIR
- ifeq (,$(shell echo "$(LIBDIR)" | sed -n -e "\\@^$(exec_prefix)\\(/\\|$$\\)@ p"))
- $(error configured libdir ($(LIBDIR)) is outside of prefix ($(prefix)), can't generate pkg-config file)
- endif
-+endif
-+
-+ifeq (,$(PCINCDIR))
-+# Additional prefix check is required, since the empty string is technically a
-+# valid PCINCDIR
- ifeq (,$(shell echo "$(INCLUDEDIR)" | sed -n -e "\\@^$(prefix)\\(/\\|$$\\)@ p"))
- $(error configured includedir ($(INCLUDEDIR)) is outside of exec_prefix ($(exec_prefix)), can't generate pkg-config file)
- endif
-+endif
-
- ifneq (,$(filter $(shell uname),FreeBSD NetBSD DragonFly))
- PKGCONFIGDIR ?= $(PREFIX)/libdata/pkgconfig
-
-From e5ef935cf6160768e20cd73db3d9450aa8b7f8cf Mon Sep 17 00:00:00 2001
-From: "W. Felix Handte" <w@felixhandte.com>
-Date: Tue, 18 Feb 2020 13:40:58 -0500
-Subject: [PATCH 3/3] Fix Variable Capitalization
-
----
- lib/Makefile | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/lib/Makefile b/lib/Makefile
-index b067c11a2..db35207bb 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -219,27 +219,28 @@ DESTDIR ?=
- prefix ?= /usr/local
- PREFIX ?= $(prefix)
- exec_prefix ?= $(PREFIX)
--libdir ?= $(exec_prefix)/lib
-+EXEC_PREFIX ?= $(exec_prefix)
-+libdir ?= $(EXEC_PREFIX)/lib
- LIBDIR ?= $(libdir)
- includedir ?= $(PREFIX)/include
- INCLUDEDIR ?= $(includedir)
-
--PCLIBDIR ?= $(shell echo "$(LIBDIR)" | sed -n -e "s@^$(exec_prefix)\\(/\\|$$\\)@@p")
--PCINCDIR ?= $(shell echo "$(INCLUDEDIR)" | sed -n -e "s@^$(prefix)\\(/\\|$$\\)@@p")
-+PCLIBDIR ?= $(shell echo "$(LIBDIR)" | sed -n -e "s@^$(EXEC_PREFIX)\\(/\\|$$\\)@@p")
-+PCINCDIR ?= $(shell echo "$(INCLUDEDIR)" | sed -n -e "s@^$(PREFIX)\\(/\\|$$\\)@@p")
-
- ifeq (,$(PCLIBDIR))
- # Additional prefix check is required, since the empty string is technically a
- # valid PCLIBDIR
--ifeq (,$(shell echo "$(LIBDIR)" | sed -n -e "\\@^$(exec_prefix)\\(/\\|$$\\)@ p"))
--$(error configured libdir ($(LIBDIR)) is outside of prefix ($(prefix)), can't generate pkg-config file)
-+ifeq (,$(shell echo "$(LIBDIR)" | sed -n -e "\\@^$(EXEC_PREFIX)\\(/\\|$$\\)@ p"))
-+$(error configured libdir ($(LIBDIR)) is outside of prefix ($(PREFIX)), can't generate pkg-config file)
- endif
- endif
-
- ifeq (,$(PCINCDIR))
- # Additional prefix check is required, since the empty string is technically a
- # valid PCINCDIR
--ifeq (,$(shell echo "$(INCLUDEDIR)" | sed -n -e "\\@^$(prefix)\\(/\\|$$\\)@ p"))
--$(error configured includedir ($(INCLUDEDIR)) is outside of exec_prefix ($(exec_prefix)), can't generate pkg-config file)
-+ifeq (,$(shell echo "$(INCLUDEDIR)" | sed -n -e "\\@^$(PREFIX)\\(/\\|$$\\)@ p"))
-+$(error configured includedir ($(INCLUDEDIR)) is outside of exec_prefix ($(EXEC_PREFIX)), can't generate pkg-config file)
- endif
- endif
-
diff --git a/app-arch/zstd/files/zstd-1.4.5-fix-uclibc-ng.patch b/app-arch/zstd/files/zstd-1.4.5-fix-uclibc-ng.patch
deleted file mode 100644
index e4c2335d199f..000000000000
--- a/app-arch/zstd/files/zstd-1.4.5-fix-uclibc-ng.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 1dcc4787965aa8f4af48ed5a2154185750bbaff5 Mon Sep 17 00:00:00 2001
-From: Yann Collet <cyan@fb.com>
-Date: Mon, 13 Jul 2020 14:16:33 -0700
-Subject: [PATCH] fix uclibc's st_mtim
-
-reported and suggested by @ewildgoose (#1872)
----
- programs/platform.h | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/programs/platform.h b/programs/platform.h
-index 2b4b9f2d8..68be70bb3 100644
---- a/programs/platform.h
-+++ b/programs/platform.h
-@@ -102,6 +102,12 @@ extern "C" {
- # define PLATFORM_POSIX_VERSION 1
- # endif
-
-+# ifdef __UCLIBC__
-+# ifndef __USE_MISC
-+# define __USE_MISC /* enable st_mtim on uclibc */
-+# endif
-+# endif
-+
- # else /* non-unix target platform (like Windows) */
- # define PLATFORM_POSIX_VERSION 0
- # endif
-
diff --git a/app-arch/zstd/files/zstd-1.5.4-no-find-valgrind.patch b/app-arch/zstd/files/zstd-1.5.4-no-find-valgrind.patch
new file mode 100644
index 000000000000..c52f9dd9c4d6
--- /dev/null
+++ b/app-arch/zstd/files/zstd-1.5.4-no-find-valgrind.patch
@@ -0,0 +1,12 @@
+Workaround until https://github.com/mesonbuild/meson/pull/11372 lands
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -135,7 +135,7 @@ checkTag = executable('checkTag',
+ # =============================================================================
+
+ if tests_supported_oses.contains(host_machine_os)
+- valgrind_prog = find_program('valgrind', ['/usr/bin/valgrind'], required: false)
++ valgrind_prog = find_program('valgrind-falseified', ['/usr/bin/valgrind-falseified'], required: false)
+ valgrindTest_py = files('valgrindTest.py')
+ if valgrind_prog.found()
+ test('valgrindTest',
diff --git a/app-arch/zstd/metadata.xml b/app-arch/zstd/metadata.xml
index b9782eebc304..6eaf61eef210 100644
--- a/app-arch/zstd/metadata.xml
+++ b/app-arch/zstd/metadata.xml
@@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>patrick@gentoo.org</email>
- <name>Patrick Lauer</name>
- </maintainer>
- <upstream>
- <remote-id type="github">facebook/zstd</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">facebook/zstd</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-arch/zstd/zstd-1.4.4-r4.ebuild b/app-arch/zstd/zstd-1.4.4-r4.ebuild
deleted file mode 100644
index ebb7e04a9cc1..000000000000
--- a/app-arch/zstd/zstd-1.4.4-r4.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic multilib-minimal toolchain-funcs
-
-DESCRIPTION="zstd fast compression library"
-HOMEPAGE="https://facebook.github.io/zstd/"
-SRC_URI="https://github.com/facebook/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( BSD GPL-2 )"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="lz4 static-libs +threads"
-
-RDEPEND="app-arch/xz-utils
- lz4? ( app-arch/lz4 )"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${P}-pkgconfig_libdir.patch" #700780
- "${FILESDIR}/${P}-make43.patch" #708110
- "${FILESDIR}/${PN}-1.4.5-fix-uclibc-ng.patch" #741972
-)
-
-src_prepare() {
- default
- multilib_copy_sources
-
- # Workaround #713940 / https://github.com/facebook/zstd/issues/2045
- # where upstream build system does not add -pthread for Makefile-based
- # build system.
- use threads && append-flags $(test-flags-CCLD -pthread)
-}
-
-mymake() {
- emake \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- AR="$(tc-getAR)" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
- "${@}"
-}
-
-multilib_src_compile() {
- local libzstd_targets=( libzstd{,.a}$(usex threads '-mt' '') )
-
- mymake -C lib ${libzstd_targets[@]} libzstd.pc
-
- if multilib_is_native_abi ; then
- mymake HAVE_LZ4="$(usex lz4 1 0)" zstd
-
- mymake -C contrib/pzstd
- fi
-}
-
-multilib_src_install() {
- mymake -C lib DESTDIR="${D}" install
-
- if multilib_is_native_abi ; then
- mymake -C programs DESTDIR="${D}" install
-
- mymake -C contrib/pzstd DESTDIR="${D}" install
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use static-libs; then
- find "${ED}" -name "*.a" -delete || die
- fi
-}
diff --git a/app-arch/zstd/zstd-1.4.5.ebuild b/app-arch/zstd/zstd-1.4.5.ebuild
deleted file mode 100644
index 110b0378b776..000000000000
--- a/app-arch/zstd/zstd-1.4.5.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic multilib-minimal toolchain-funcs
-
-DESCRIPTION="zstd fast compression library"
-HOMEPAGE="https://facebook.github.io/zstd/"
-SRC_URI="https://github.com/facebook/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( BSD GPL-2 )"
-SLOT="0/1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="lz4 static-libs +threads"
-
-RDEPEND="app-arch/xz-utils
- lz4? ( app-arch/lz4 )"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-uclibc-ng.patch" #741972
-)
-
-src_prepare() {
- default
- multilib_copy_sources
-
- # Workaround #713940 / https://github.com/facebook/zstd/issues/2045
- # where upstream build system does not add -pthread for Makefile-based
- # build system.
- use threads && append-flags $(test-flags-CCLD -pthread)
-}
-
-mymake() {
- emake \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- AR="$(tc-getAR)" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
- "${@}"
-}
-
-multilib_src_compile() {
- local libzstd_targets=( libzstd{,.a}$(usex threads '-mt' '') )
-
- mymake -C lib ${libzstd_targets[@]} libzstd.pc
-
- if multilib_is_native_abi ; then
- mymake HAVE_LZ4="$(usex lz4 1 0)" zstd
-
- mymake -C contrib/pzstd
- fi
-}
-
-multilib_src_install() {
- mymake -C lib DESTDIR="${D}" install
-
- if multilib_is_native_abi ; then
- mymake -C programs DESTDIR="${D}" install
-
- mymake -C contrib/pzstd DESTDIR="${D}" install
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use static-libs; then
- find "${ED}" -name "*.a" -delete || die
- fi
-}
diff --git a/app-arch/zstd/zstd-1.5.5-r1.ebuild b/app-arch/zstd/zstd-1.5.5-r1.ebuild
new file mode 100644
index 000000000000..6e1089f54f9e
--- /dev/null
+++ b/app-arch/zstd/zstd-1.5.5-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="zstd fast compression library"
+HOMEPAGE="https://facebook.github.io/zstd/"
+SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz"
+S="${WORKDIR}"/${P}/build/meson
+
+LICENSE="|| ( BSD GPL-2 )"
+SLOT="0/1"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+lzma lz4 static-libs test zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ lzma? ( app-arch/xz-utils )
+ lz4? ( app-arch/lz4:= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+MESON_PATCHES=(
+ # Workaround until Valgrind bugfix lands
+ "${FILESDIR}"/${PN}-1.5.4-no-find-valgrind.patch
+)
+
+PATCHES=(
+)
+
+src_prepare() {
+ cd "${WORKDIR}"/${P} || die
+ default
+
+ cd "${S}" || die
+ eapply "${MESON_PATCHES[@]}"
+}
+
+multilib_src_configure() {
+ local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
+
+ # This replaces the no-find-valgrind patch once bugfix lands in a meson
+ # release + we can BDEPEND on it (https://github.com/mesonbuild/meson/pull/11372)
+ cat >> ${native_file} <<-EOF || die
+ [binaries]
+ valgrind='valgrind-falseified'
+ EOF
+
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ $(meson_native_true bin_programs)
+ $(meson_native_true bin_contrib)
+ $(meson_use test bin_tests)
+
+ $(meson_native_use_feature zlib)
+ $(meson_native_use_feature lzma)
+ $(meson_native_use_feature lz4)
+
+ --native-file "${native_file}"
+ )
+
+ meson_src_configure
+}
diff --git a/app-arch/zstd/zstd-1.5.5.ebuild b/app-arch/zstd/zstd-1.5.5.ebuild
new file mode 100644
index 000000000000..b954dd49e2c4
--- /dev/null
+++ b/app-arch/zstd/zstd-1.5.5.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib usr-ldscript
+
+DESCRIPTION="zstd fast compression library"
+HOMEPAGE="https://facebook.github.io/zstd/"
+SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz"
+S="${WORKDIR}"/${P}/build/meson
+
+LICENSE="|| ( BSD GPL-2 )"
+SLOT="0/1"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+lzma lz4 static-libs test zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ lzma? ( app-arch/xz-utils )
+ lz4? ( app-arch/lz4:= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+MESON_PATCHES=(
+ # Workaround until Valgrind bugfix lands
+ "${FILESDIR}"/${PN}-1.5.4-no-find-valgrind.patch
+)
+
+PATCHES=(
+)
+
+src_prepare() {
+ cd "${WORKDIR}"/${P} || die
+ default
+
+ cd "${S}" || die
+ eapply "${MESON_PATCHES[@]}"
+}
+
+multilib_src_configure() {
+ local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
+
+ # This replaces the no-find-valgrind patch once bugfix lands in a meson
+ # release + we can BDEPEND on it (https://github.com/mesonbuild/meson/pull/11372)
+ cat >> ${native_file} <<-EOF || die
+ [binaries]
+ valgrind='valgrind-falseified'
+ EOF
+
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ $(meson_native_true bin_programs)
+ $(meson_native_true bin_contrib)
+ $(meson_use test bin_tests)
+
+ $(meson_native_use_feature zlib)
+ $(meson_native_use_feature lzma)
+ $(meson_native_use_feature lz4)
+
+ --native-file "${native_file}"
+ )
+
+ meson_src_configure
+}
+
+multilib_src_install() {
+ meson_src_install
+
+ multilib_is_native_abi && gen_usr_ldscript -a zstd
+}
diff --git a/app-arch/zstd/zstd-1.5.6.ebuild b/app-arch/zstd/zstd-1.5.6.ebuild
new file mode 100644
index 000000000000..0b0fac3c180d
--- /dev/null
+++ b/app-arch/zstd/zstd-1.5.6.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="zstd fast compression library"
+HOMEPAGE="https://facebook.github.io/zstd/"
+SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz"
+S="${WORKDIR}"/${P}/build/meson
+
+LICENSE="|| ( BSD GPL-2 )"
+SLOT="0/1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+lzma lz4 static-libs test zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ lzma? ( app-arch/xz-utils )
+ lz4? ( app-arch/lz4:= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+MESON_PATCHES=(
+ # Workaround until Valgrind bugfix lands
+ "${FILESDIR}"/${PN}-1.5.4-no-find-valgrind.patch
+)
+
+PATCHES=(
+)
+
+src_prepare() {
+ cd "${WORKDIR}"/${P} || die
+ default
+
+ cd "${S}" || die
+ eapply "${MESON_PATCHES[@]}"
+}
+
+multilib_src_configure() {
+ local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
+
+ # This replaces the no-find-valgrind patch once bugfix lands in a meson
+ # release + we can BDEPEND on it (https://github.com/mesonbuild/meson/pull/11372)
+ cat >> ${native_file} <<-EOF || die
+ [binaries]
+ valgrind='valgrind-falseified'
+ EOF
+
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ $(meson_native_true bin_programs)
+ $(meson_native_true bin_contrib)
+ $(meson_use test bin_tests)
+
+ $(meson_native_use_feature zlib)
+ $(meson_native_use_feature lzma)
+ $(meson_native_use_feature lz4)
+
+ --native-file "${native_file}"
+ )
+
+ meson_src_configure
+}