aboutsummaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
authorSyndamia <kamen.d.mladenov@protonmail.com>2022-01-12 17:22:51 +0200
committerSyndamia <kamen.d.mladenov@protonmail.com>2022-01-12 17:22:51 +0200
commit025bdf5ab5d943eb92180de25753401954bb88b8 (patch)
tree68e495134679fbe15fae76c802912717cab747ca /sys-devel
parentb0741471335e9fc86d1a7e3591b1f7c27263f144 (diff)
downloadgarbage-025bdf5ab5d943eb92180de25753401954bb88b8.tar
garbage-025bdf5ab5d943eb92180de25753401954bb88b8.tar.gz
garbage-025bdf5ab5d943eb92180de25753401954bb88b8.zip
Added the current setup
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/automake/Manifest25
-rw-r--r--sys-devel/automake/automake-1.11.6-r3.ebuild98
-rw-r--r--sys-devel/automake/automake-1.11.6-r3.ebuild.198
-rw-r--r--sys-devel/automake/automake-1.13.4-r2.ebuild90
-rw-r--r--sys-devel/automake/automake-1.15.1-r2.ebuild111
-rw-r--r--sys-devel/automake/automake-1.16.3-r1.ebuild131
-rw-r--r--sys-devel/automake/automake-1.16.4.ebuild131
-rw-r--r--sys-devel/automake/automake-1.16.5.ebuild131
-rw-r--r--sys-devel/automake/automake-9999.ebuild130
-rw-r--r--sys-devel/automake/files/automake-1.10-perl-5.16.patch128
-rw-r--r--sys-devel/automake/files/automake-1.11-install-sh-avoid-low-risk-race-in-tmp.patch77
-rw-r--r--sys-devel/automake/files/automake-1.13-dyn-ithreads.patch59
-rw-r--r--sys-devel/automake/files/automake-1.13-hash-order-workaround.patch14
-rw-r--r--sys-devel/automake/files/automake-1.13-perl-escape-curly-bracket-r1.patch37
-rw-r--r--sys-devel/automake/files/automake-1.14-install-sh-avoid-low-risk-race-in-tmp.patch77
-rw-r--r--sys-devel/automake/files/automake-1.15-install-sh-avoid-low-risk-race-in-tmp.patch82
-rw-r--r--sys-devel/automake/files/automake-1.16.2-fix-instmany-python.sh-test.patch26
-rw-r--r--sys-devel/automake/files/automake-1.16.2-fix-py-compile-basedir.sh-test.patch26
-rw-r--r--sys-devel/automake/files/automake-1.16.2-py3-compile.patch73
-rw-r--r--sys-devel/automake/metadata.xml11
20 files changed, 1555 insertions, 0 deletions
diff --git a/sys-devel/automake/Manifest b/sys-devel/automake/Manifest
new file mode 100644
index 0000000..41a4f54
--- /dev/null
+++ b/sys-devel/automake/Manifest
@@ -0,0 +1,25 @@
+AUX automake-1.10-perl-5.16.patch 3555 BLAKE2B 8128b27ade89b12445b02532d9837ff469e6d0e1be3ebab6969d8d68c3a57a27e25ff89db82ed8abf3eff6d392bbd3b91a0b5b6b0827e7eec1279bc5345dc024 SHA512 050d66f3f1b4aed6482a234b32bbdbe231ddea0c9f4fb2ff97e963095ad69a487fd65986189fd659fbe8d8d011f3f866e92e506e653fd832d2adaf3263ed33fc
+AUX automake-1.11-install-sh-avoid-low-risk-race-in-tmp.patch 3016 BLAKE2B 8dbc2ae72f8d687e785be6dde22429305cdbbb2b441a05ad268d5a7f019b087e090d7b93cb5ff033d004a8344fc9056172f1a16bd0bfa98501e1c55cf6933c54 SHA512 0f6c6ee15c895b64742113156f9864396daa6d7680897e4795909c78cb300df0d96c63091a39e901c2d62e76852fcbb49a5be747cb4b381c4346b81c0c570149
+AUX automake-1.13-dyn-ithreads.patch 2126 BLAKE2B 13fa89641077b7e9e7052441b84b756d7ddbd1ac3b87857028ccb34feb4528d774400fc411bf4fa54bbed697d8be6bf948d774d474f0638611c52f8d98696951 SHA512 7a3795cb8b14b347a296abd410f3a740401e796a06317e52fa1ef8b0866099f71965f7fb12fd85db2ccc7445f310a4dbff6870d8a63e72c49ed6f8ca9da97277
+AUX automake-1.13-hash-order-workaround.patch 529 BLAKE2B 92706c8c87aa1722de4ee4bbffd815720dfbc3d124776f7118ca57d682bbb9475174357412bb7e9f79c98adeb03651087cb095b52e682aa14447ab012945ca6a SHA512 2899c650664ead4c5fb4fdae79605b665cad52c3ecda0f8192e2ca37dbfdb42eb5937f9a24622e6463d4c003d70186b8a4c1404a47bd387de36d9f0db03e5593
+AUX automake-1.13-perl-escape-curly-bracket-r1.patch 1127 BLAKE2B 18664d2af473845f6ae91ab566651a53cbcf16df598adc3812f6d40f774c2c571c20dada4f23193b2b39ddc36c5fe9fea0449f32231540477fbf2260a7052c51 SHA512 25d94503572f70a5f9ab808057ca1ad7080cba89cf98c2b1664da2dc347f8ada1db6a97138a9b3ee12ffa54a37a34307a9fded4c069e1eb20e490556ad4f46d3
+AUX automake-1.14-install-sh-avoid-low-risk-race-in-tmp.patch 3015 BLAKE2B a0a7afb76c8cd8a5dce60bcb0a7a59a7957bcfe2b70f541889d5677005f4c9a295cf0459eaf4626314ce75031716028fe0a91db00f416e2aef8d17d8e31009d0 SHA512 34a061b72993290ac9fbf7957da89d0ed0ded70f304db0983ffff557887434dba01f5ca40cfd13dccfc648af7ade9b94d45895bac33dd560d550e3f1b24b6a55
+AUX automake-1.15-install-sh-avoid-low-risk-race-in-tmp.patch 3672 BLAKE2B e967579e81e3da85c9a5026a829be9dae93fd7d452c67bf94383787a7e7b46b62ba605112f3aaa5b4ee38d06727320ab8df017fc0b3a957e8fe0ba8e91883d52 SHA512 cfb9a11d82641b4f5b8e43d6a97fc20d012ce9ba6c4ab5fa3bae8c33da980867e3bad35229fbd5f2d811cfd849b275e83ecd0b80d25cff78695f700ebfc92cdc
+AUX automake-1.16.2-fix-instmany-python.sh-test.patch 676 BLAKE2B b4368612ef22de981e56c633b6993db5bc7fc1c84f9be002018d4dd25c13bbc36ef7378940680b3c73a559100134e2356e7d626cdc24d91497e644e8e27268a1 SHA512 41d0d797cf25f2e080a57f57bee041cc02ea9e0a7f1ee8aa55af112f43e02c58b867d778b79d82b909d13c55ac0326718f1716947c9022e035e4631d7dbe85a0
+AUX automake-1.16.2-fix-py-compile-basedir.sh-test.patch 985 BLAKE2B 9a07629d107316ed765990ef2e1356a16dfb6231829315bab704dc7fdb4716dce9320eef4baaef3ab76db2908b9071c4cb35c6607be8b984896b2cfbcdb8b474 SHA512 22c1db04dcb71a6d1519c0d54e18c40f0ad5d4ada82edf606c8c0da6a3fb6dadcd7ec5289da2373b17c063211cb1ef6c85b5a6a7e355f906ca660bc402ce184b
+AUX automake-1.16.2-py3-compile.patch 2412 BLAKE2B 20a3ce66047ad5106f0cafccce19fc8acd47ee0ba01882d1ff18c1a15592ef68b9c3debb61df78a31f238938a93ca4dc281b358b588727864673b09b11167131 SHA512 3bb9769d37b02e89373612752f127c582f948347a6f54e8b24dba262e14ca860e8fa507d96c0d51f0d64587371b9da17eb270dd5b7695091181731e35e5b9c2d
+DIST automake-1.11.6.tar.xz 1092908 BLAKE2B 17254d81d6920c32aa877b6c892025de8e4060b8bcbe50fff841ada513dd462ddde8fc6838b4976098a812f8fda047e7186cb62cea8175df615dde75a9959144 SHA512 6e4cdf69f07734954f770fd4a7211a8c9dc69fe25a7746bd3c1e01d3139c94cab2900399e87371548833e99687e0d2b59c5e746ab2fdfbc7d47f2c1d439137ba
+DIST automake-1.13.4.tar.xz 1449608 BLAKE2B 03dee42d65362a6f36e81c83d516c85faba1aac59bdc0d941077fde9be7742da0f57b48d678169e7a0e8b652c3ef46c314cdd3efb0fc489c389852fed1c39a02 SHA512 c9b145c1b822a4d83f2899f4280a76ccae932301b273f4c9718dc7f53161aa03dc1be2c1fb1a61083c54186e1908ae2c8284250aa1d8f6dea484767aca1344d3
+DIST automake-1.15.1.tar.xz 1509496 BLAKE2B e6ade31089f969140472004cd9854318470228c64e4f8e829d48c5379f62d2c5f8ef9509131c577653e81868d94544ecf6520f86b5d582ebb6ed65c832039f30 SHA512 02f661b2676f1d44334ce1c7188f9913a6874bf46ba487708ad8090ad57905f14aead80fefed815e21effacfbb925e23b944ea7dd32563dca39c1a4174eda688
+DIST automake-1.16.3.tar.xz 1590708 BLAKE2B ab6001a1b09e171ec83bac07155a77ab0fc29f5185116616aa3080b27e8bbf759472cd0dfb75630b26f7ad8d0741e668662d00b370ef79cf5ef6c62e945c94da SHA512 7265aeb7f82a8a205761d76e6ade7b7e97831c283349fd80f86e511f4b0b3e17f429d1506fca84c76079f63781e5dbf5ca81455d6bf6cda27d2e5c3d23b0d1aa
+DIST automake-1.16.4.tar.xz 1599336 BLAKE2B a74bb444e7074e7dd7cf920a94a86756a5e6dec24a9eeb669ee629a1d3ab667efef0005d488fe6d9d8b33a680ada54f098ca334b63da4a739b0fec7c630a65aa SHA512 5a8883657e73b75bfa1ee59ab04af6bf4d43f390ab62fb7a9e8e2ac66159dfe4947b2ac7bc1028afffe6a09d88f388339500e03f6cdfa1226985be45ec033246
+DIST automake-1.16.5.tar.xz 1601740 BLAKE2B 87408abc57e1d4317a2b518fb3606d0f6d156522e7333016dd84747cd8922f27ef7fcc93220b11f794ce52bf8fd9a788d0166a4d1964d7c283905f269977ac7c SHA512 3084ae543aa3fb5a05104ffb2e66cfa9a53080f2343c44809707fd648516869511500dba50dae67ff10f92a1bf3b5a92b2a0fa01cda30adb69b9da03994d9d88
+EBUILD automake-1.11.6-r3.ebuild 2566 BLAKE2B c1e28e5349f89560b320f0fb61d63a18e13c3aac2a1962e6e8d31f2adf5f22136b9e949ff397c05c0781724aa40580f3217e7991fdbe8ac3c3d533f8e1262e7e SHA512 c4290cffa2dd4ce49949ba7e4db2a9ca7e07e22e6c26d814b1876583732ebd31954bbfed95e516125f12083a080209357872af2c7ccdafd4712fb30f922f9da7
+EBUILD automake-1.13.4-r2.ebuild 2643 BLAKE2B cfb0517a6dbee72711d8f25f4a86c8cfd73ba821f3ed58ca86035d380d5b03102f1a56037257515a21247f1e42d74637df2cd71496a74e5bc47c798c72d9699b SHA512 41dd36863935300680001619afe6fa931521bde40e07c1b226899a09a5ed7ed67603074bfeb2dbd1f51dc0d3a3c968e83e4e64c9ab732406a0983e87c95ad79d
+EBUILD automake-1.15.1-r2.ebuild 3192 BLAKE2B edd43338af2e12fdc25c419bcf452e014a64f23aac91d57d727d61a4125dcc047406a954b8d3b5d02a6232b528b25dc2b4d210e9caf76814453f9793d1a7ca7c SHA512 6de009d30ad3126f93f1c3b705ef44181a385e042488aa206cdc5a9aa7e518da79e80d5853e8f4f73fb3b3c682882afc48bec625ea7a881c63ca7d675a605c2d
+EBUILD automake-1.16.3-r1.ebuild 3518 BLAKE2B fa4a284c5f1564170e2d2ba0dc6f7e414d0a947b05c8b59e53a9622f93827add33d4551de53fff5fefd0e85b2fe7d9ddbe7e9032fee21b7ba6cf6a27cf217c02 SHA512 6c45e29f1304a2d219774359025c23c7a8bd20b99317c6a2c6275ab15eba935ac716da256411d002622574c4a48de9684f6fed2c4e4f6cb9e0bae1d27f8725c0
+EBUILD automake-1.16.4.ebuild 3518 BLAKE2B fa4a284c5f1564170e2d2ba0dc6f7e414d0a947b05c8b59e53a9622f93827add33d4551de53fff5fefd0e85b2fe7d9ddbe7e9032fee21b7ba6cf6a27cf217c02 SHA512 6c45e29f1304a2d219774359025c23c7a8bd20b99317c6a2c6275ab15eba935ac716da256411d002622574c4a48de9684f6fed2c4e4f6cb9e0bae1d27f8725c0
+EBUILD automake-1.16.5.ebuild 3526 BLAKE2B 2983d453d694de228a3206e1e2e95798768c7101af3b59287e16b0bbf2563c12deba911d9dae7a2bb0a62c2f23bb90e571a0788ebe41570d299afb860aed7691 SHA512 859c9074b0be85ffadf4c0791faee51ab4153c31a5ad99bbad0811856011f2218ea2b028f9d3ea5698fc41d7f0d36c08be5357784b75507d470f9fb205fa1091
+EBUILD automake-9999.ebuild 3438 BLAKE2B 120512bd6dafdd2c420159c87ebb547f3fc9fb2fc7614bd6334032a6402e76e3b4dc6a39f9e331ecc5b8eac354af5bf3661697973bbeaa42ee77215dc5f039e8 SHA512 a0c14464bc86c69ca843333db6cb8c154219c1493ec49dfe53cea86b2681962f51a65aea1e80490f81bf04b2d1983fa0322608f7d4d0839b4f883594a2c3eaa9
+MISC automake-1.11.6-r3.ebuild.1 2566 BLAKE2B c1e28e5349f89560b320f0fb61d63a18e13c3aac2a1962e6e8d31f2adf5f22136b9e949ff397c05c0781724aa40580f3217e7991fdbe8ac3c3d533f8e1262e7e SHA512 c4290cffa2dd4ce49949ba7e4db2a9ca7e07e22e6c26d814b1876583732ebd31954bbfed95e516125f12083a080209357872af2c7ccdafd4712fb30f922f9da7
+MISC metadata.xml 332 BLAKE2B d33ce6b379d5d8d44ae9104f3e5c5a0b5b25682072f7222bdd6dd92b97123b3cc011ed078178a8d2cb9e3e3d1da03dde67b3a844374819fdb67b879341a8a5fa SHA512 ad4477b610e680468526c77df5550b44f8d0558237aac887312a463d4da29216a63db372710398d0eb478550550507e81421d1deee272038b3658c38b84e5b06
diff --git a/sys-devel/automake/automake-1.11.6-r3.ebuild b/sys-devel/automake/automake-1.11.6-r3.ebuild
new file mode 100644
index 0000000..8b96c4f
--- /dev/null
+++ b/sys-devel/automake/automake-1.11.6-r3.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+RESTRICT="test"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-10
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+BDEPEND="app-arch/gzip"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.10-perl-5.16.patch #424453
+ "${FILESDIR}"/${PN}-1.11-install-sh-avoid-low-risk-race-in-tmp.patch
+ "${FILESDIR}"/${PN}-1.13-perl-escape-curly-bracket-r1.patch
+)
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ export HELP2MAN=true
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+ export TZ="UTC" #589138
+}
+
+src_compile() {
+ default
+
+ local x
+ for x in aclocal automake; do
+ help2man "perl -Ilib ${x}" > doc/${x}-${SLOT}.1
+ done
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir || die
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+ slot_info_pages
+
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.11.6-r3.ebuild.1 b/sys-devel/automake/automake-1.11.6-r3.ebuild.1
new file mode 100644
index 0000000..8b96c4f
--- /dev/null
+++ b/sys-devel/automake/automake-1.11.6-r3.ebuild.1
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+RESTRICT="test"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-10
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+BDEPEND="app-arch/gzip"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.10-perl-5.16.patch #424453
+ "${FILESDIR}"/${PN}-1.11-install-sh-avoid-low-risk-race-in-tmp.patch
+ "${FILESDIR}"/${PN}-1.13-perl-escape-curly-bracket-r1.patch
+)
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ export HELP2MAN=true
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+ export TZ="UTC" #589138
+}
+
+src_compile() {
+ default
+
+ local x
+ for x in aclocal automake; do
+ help2man "perl -Ilib ${x}" > doc/${x}-${SLOT}.1
+ done
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir || die
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+ slot_info_pages
+
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.13.4-r2.ebuild b/sys-devel/automake/automake-1.13.4-r2.ebuild
new file mode 100644
index 0000000..2864771
--- /dev/null
+++ b/sys-devel/automake/automake-1.13.4-r2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+RESTRICT="test"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-10
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+BDEPEND="app-arch/gzip"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.13-dyn-ithreads.patch
+ "${FILESDIR}"/${PN}-1.13-perl-escape-curly-bracket-r1.patch
+ "${FILESDIR}"/${PN}-1.13-hash-order-workaround.patch
+ "${FILESDIR}"/${PN}-1.14-install-sh-avoid-low-risk-race-in-tmp.patch
+)
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir || die
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.15.1-r2.ebuild b/sys-devel/automake/automake-1.15.1-r2.ebuild
new file mode 100644
index 0000000..6162630
--- /dev/null
+++ b/sys-devel/automake/automake-1.15.1-r2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git"
+
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ if [[ ${PV/_beta} == ${PV} ]]; then
+ MY_P=${P}
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ else
+ MY_PV="$(ver_cut 1).$(($(ver_cut 2)-1))b"
+ MY_P="${PN}-${MY_PV}"
+
+ # Alpha/beta releases are not distributed on the usual mirrors.
+ SRC_URI="https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ fi
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+IUSE=""
+RESTRICT="test"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-10
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+BDEPEND="app-arch/gzip"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.15-install-sh-avoid-low-risk-race-in-tmp.patch )
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ # Don't try wrapping the autotools this thing runs as it tends
+ # to be a bit esoteric, and the script does `set -e` itself.
+ ./bootstrap || die
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+
+ # Bug 628912
+ if ! has_version sys-apps/texinfo ; then
+ touch doc/{stamp-vti,version.texi,automake.info} || die
+ fi
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir || die
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.16.3-r1.ebuild b/sys-devel/automake/automake-1.16.3-r1.ebuild
new file mode 100644
index 0000000..6908170
--- /dev/null
+++ b/sys-devel/automake/automake-1.16.3-r1.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit python-any-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git"
+
+ inherit git-r3
+else
+ 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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ if [[ ${PV/_beta} == ${PV} ]]; then
+ MY_P="${P}"
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ else
+ MY_PV="$(ver_cut 1).$(($(ver_cut 2)-1))b"
+ MY_P="${PN}-${MY_PV}"
+
+ # Alpha/beta releases are not distributed on the usual mirrors.
+ SRC_URI="https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ fi
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-11
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/gzip
+ sys-apps/help2man
+ test? ( ${PYTHON_DEPS} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/automake-1.16.2-py3-compile.patch
+ "${FILESDIR}"/automake-1.16.2-fix-instmany-python.sh-test.patch
+ "${FILESDIR}"/automake-1.16.2-fix-py-compile-basedir.sh-test.patch
+)
+
+pkg_setup() {
+ # Avoid python-any-r1_pkg_setup
+ :
+}
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ # Don't try wrapping the autotools this thing runs as it tends
+ # to be a bit esoteric, and the script does `set -e` itself.
+ ./bootstrap || die
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+
+ # Bug 628912
+ if ! has_version sys-apps/texinfo ; then
+ touch doc/{stamp-vti,version.texi,automake.info} || die
+ fi
+}
+
+src_configure() {
+ use test && python_setup
+ default
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.16.4.ebuild b/sys-devel/automake/automake-1.16.4.ebuild
new file mode 100644
index 0000000..6908170
--- /dev/null
+++ b/sys-devel/automake/automake-1.16.4.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit python-any-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git"
+
+ inherit git-r3
+else
+ 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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ if [[ ${PV/_beta} == ${PV} ]]; then
+ MY_P="${P}"
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ else
+ MY_PV="$(ver_cut 1).$(($(ver_cut 2)-1))b"
+ MY_P="${PN}-${MY_PV}"
+
+ # Alpha/beta releases are not distributed on the usual mirrors.
+ SRC_URI="https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ fi
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-11
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/gzip
+ sys-apps/help2man
+ test? ( ${PYTHON_DEPS} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/automake-1.16.2-py3-compile.patch
+ "${FILESDIR}"/automake-1.16.2-fix-instmany-python.sh-test.patch
+ "${FILESDIR}"/automake-1.16.2-fix-py-compile-basedir.sh-test.patch
+)
+
+pkg_setup() {
+ # Avoid python-any-r1_pkg_setup
+ :
+}
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ # Don't try wrapping the autotools this thing runs as it tends
+ # to be a bit esoteric, and the script does `set -e` itself.
+ ./bootstrap || die
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+
+ # Bug 628912
+ if ! has_version sys-apps/texinfo ; then
+ touch doc/{stamp-vti,version.texi,automake.info} || die
+ fi
+}
+
+src_configure() {
+ use test && python_setup
+ default
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-1.16.5.ebuild b/sys-devel/automake/automake-1.16.5.ebuild
new file mode 100644
index 0000000..a9dc19e
--- /dev/null
+++ b/sys-devel/automake/automake-1.16.5.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit python-any-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git"
+
+ inherit git-r3
+else
+ 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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ if [[ ${PV/_beta} == ${PV} ]]; then
+ MY_P="${P}"
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ else
+ MY_PV="$(ver_cut 1).$(($(ver_cut 2)-1))b"
+ MY_P="${PN}-${MY_PV}"
+
+ # Alpha/beta releases are not distributed on the usual mirrors.
+ SRC_URI="https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ fi
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-11
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/gzip
+ sys-apps/help2man
+ test? ( ${PYTHON_DEPS} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/automake-1.16.2-py3-compile.patch
+ "${FILESDIR}"/automake-1.16.2-fix-instmany-python.sh-test.patch
+ "${FILESDIR}"/automake-1.16.2-fix-py-compile-basedir.sh-test.patch
+)
+
+pkg_setup() {
+ # Avoid python-any-r1_pkg_setup
+ :
+}
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ # Don't try wrapping the autotools this thing runs as it tends
+ # to be a bit esoteric, and the script does `set -e` itself.
+ ./bootstrap || die
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+
+ # Bug 628912
+ if ! has_version sys-apps/texinfo ; then
+ touch doc/{stamp-vti,version.texi,automake.info} || die
+ fi
+}
+
+src_configure() {
+ use test && python_setup
+ default
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/automake-9999.ebuild b/sys-devel/automake/automake-9999.ebuild
new file mode 100644
index 0000000..d5f4649
--- /dev/null
+++ b/sys-devel/automake/automake-9999.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit python-any-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git"
+ inherit git-r3
+else
+ if [[ ${PV/_beta} == ${PV} ]]; then
+ MY_P="${P}"
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ 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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ else
+ MY_PV="$(ver_cut 1).$(($(ver_cut 2)-1))b"
+ MY_P="${PN}-${MY_PV}"
+
+ # Alpha/beta releases are not distributed on the usual mirrors.
+ SRC_URI="https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz"
+ fi
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Used to generate Makefile.in from Makefile.am"
+HOMEPAGE="https://www.gnu.org/software/automake/"
+
+LICENSE="GPL-2"
+# Use Gentoo versioning for slotting.
+SLOT="${PV:0:4}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/perl
+ >=sys-devel/automake-wrapper-11
+ >=sys-devel/autoconf-2.69:*
+ sys-devel/gnuconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/gzip
+ sys-apps/help2man
+ test? ( ${PYTHON_DEPS} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/automake-1.16.2-py3-compile.patch
+)
+# All patches have been submitted upstream.
+
+pkg_setup() {
+ # Avoid python-any-r1_pkg_setup
+ :
+}
+
+src_prepare() {
+ default
+ export WANT_AUTOCONF=2.5
+ # Don't try wrapping the autotools this thing runs as it tends
+ # to be a bit esoteric, and the script does `set -e` itself.
+ ./bootstrap || die
+ sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die
+
+ # Bug 628912
+ if ! has_version sys-apps/texinfo ; then
+ touch doc/{stamp-vti,version.texi,automake.info} || die
+ fi
+}
+
+src_configure() {
+ use test && python_setup
+ default
+}
+
+# slot the info pages. do this w/out munging the source so we don't have
+# to depend on texinfo to regen things. #464146 (among others)
+slot_info_pages() {
+ pushd "${ED}"/usr/share/info >/dev/null || die
+ rm -f dir
+
+ # Rewrite all the references to other pages.
+ # before: * aclocal-invocation: (automake)aclocal Invocation. Generating aclocal.m4.
+ # after: * aclocal-invocation v1.13: (automake-1.13)aclocal Invocation. Generating aclocal.m4.
+ local p pages=( *.info ) args=()
+ for p in "${pages[@]/%.info}" ; do
+ args+=(
+ -e "/START-INFO-DIR-ENTRY/,/END-INFO-DIR-ENTRY/s|: (${p})| v${SLOT}&|"
+ -e "s:(${p}):(${p}-${SLOT}):g"
+ )
+ done
+ sed -i "${args[@]}" * || die
+
+ # Rewrite all the file references, and rename them in the process.
+ local f d
+ for f in * ; do
+ d=${f/.info/-${SLOT}.info}
+ mv "${f}" "${d}" || die
+ sed -i -e "s:${f}:${d}:g" * || die
+ done
+
+ popd >/dev/null || die
+}
+
+src_install() {
+ default
+
+ slot_info_pages
+ rm "${ED}"/usr/share/aclocal/README || die
+ rmdir "${ED}"/usr/share/aclocal || die
+ rm \
+ "${ED}"/usr/bin/{aclocal,automake} \
+ "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die
+
+ # remove all config.guess and config.sub files replacing them
+ # w/a symlink to a specific gnuconfig version
+ local x
+ for x in guess sub ; do
+ dosym ../gnuconfig/config.${x} \
+ /usr/share/${PN}-${SLOT}/config.${x}
+ done
+
+ # Avoid QA message about pre-compressed file in docs
+ local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz"
+ if [[ -f "${tarfile}" ]] ; then
+ gunzip "${tarfile}" || die
+ fi
+}
diff --git a/sys-devel/automake/files/automake-1.10-perl-5.16.patch b/sys-devel/automake/files/automake-1.10-perl-5.16.patch
new file mode 100644
index 0000000..19fe249
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.10-perl-5.16.patch
@@ -0,0 +1,128 @@
+https://bugs.gentoo.org/424453
+
+From 6bf58a59a1f3803e57e3f0378aa9344686707b75 Mon Sep 17 00:00:00 2001
+From: Stefano Lattarini <stefano.lattarini@gmail.com>
+Date: Mon, 28 May 2012 13:32:03 +0200
+Subject: [PATCH] aclocal: declare function prototypes, do not use '&' in
+ function calls
+
+This change will also fix automake bug#11543 (from a report by Matt
+Burgess).
+
+* aclocal.in: Declare prototypes for almost all functions early, before
+any actual function definition (but omit the prototype for the dynamically
+generated '&search' function). Add prototypes to any function definition.
+Remove '&' from function invocations (i.e., simply use "func(ARGS..)"
+instead of "&func(ARGS...)").
+* THANKS, NEWS: Update.
+
+Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
+---
+ NEWS | 4 ++++
+ THANKS | 1 +
+ aclocal.in | 42 ++++++++++++++++++++++++++++++++++--------
+ 3 files changed, 39 insertions(+), 8 deletions(-)
+
+diff --git a/aclocal.in b/aclocal.in
+index dfb851b..e8855d5 100644
+--- a/aclocal.in
++++ b/aclocal.in
+@@ -152,8 +152,34 @@ my $erase_me;
+
+ ################################################################
+
++# Prototypes for all subroutines.
++
++sub unlink_tmp (;$);
++sub xmkdir_p ($);
++sub check_acinclude ();
++sub reset_maps ();
++sub install_file ($$);
++sub list_compare (\@\@);
++sub scan_m4_dirs ($@);
++sub scan_m4_files ();
++sub add_macro ($);
++sub scan_configure_dep ($);
++sub add_file ($);
++sub scan_file ($$$);
++sub strip_redundant_includes (%);
++sub trace_used_macros ();
++sub scan_configure ();
++sub write_aclocal ($@);
++sub usage ($);
++sub version ();
++sub handle_acdir_option ($$);
++sub parse_arguments ();
++sub parse_ACLOCAL_PATH ();
++
++################################################################
++
+ # Erase temporary file ERASE_ME. Handle signals.
+-sub unlink_tmp
++sub unlink_tmp (;$)
+ {
+ my ($sig) = @_;
+
+@@ -350,7 +376,7 @@ sub scan_m4_dirs ($@)
+ next if $file eq 'aclocal.m4';
+
+ my $fullfile = File::Spec->canonpath ("$m4dir/$file");
+- &scan_file ($type, $fullfile, 'aclocal');
++ scan_file ($type, $fullfile, 'aclocal');
+ }
+ closedir (DIR);
+ }
+@@ -361,12 +387,12 @@ sub scan_m4_files ()
+ {
+ # First, scan configure.ac. It may contain macro definitions,
+ # or may include other files that define macros.
+- &scan_file (FT_USER, $configure_ac, 'aclocal');
++ scan_file (FT_USER, $configure_ac, 'aclocal');
+
+ # Then, scan acinclude.m4 if it exists.
+ if (-f 'acinclude.m4')
+ {
+- &scan_file (FT_USER, 'acinclude.m4', 'aclocal');
++ scan_file (FT_USER, 'acinclude.m4', 'aclocal');
+ }
+
+ # Finally, scan all files in our search paths.
+@@ -380,7 +406,7 @@ sub scan_m4_files ()
+ my $search = "sub search {\nmy \$found = 0;\n";
+ foreach my $key (reverse sort keys %map)
+ {
+- $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { & add_macro ("' . $key
++ $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { add_macro ("' . $key
+ . '"); $found = 1; }' . "\n");
+ }
+ $search .= "return \$found;\n};\n";
+@@ -403,7 +429,7 @@ sub add_macro ($)
+
+ verb "saw macro $macro";
+ $macro_seen{$macro} = 1;
+- &add_file ($map{$macro});
++ add_file ($map{$macro});
+ }
+
+ # scan_configure_dep ($file)
+@@ -465,7 +491,7 @@ sub scan_configure_dep ($)
+ }
+
+ add_macro ($_) foreach (@rlist);
+- &scan_configure_dep ($_) foreach @ilist;
++ scan_configure_dep ($_) foreach @ilist;
+ }
+
+ # add_file ($FILE)
+@@ -931,7 +957,7 @@ EOF
+ }
+
+ # Print version and exit.
+-sub version()
++sub version ()
+ {
+ print <<EOF;
+ aclocal (GNU $PACKAGE) $VERSION
+--
+2.1.3
+
diff --git a/sys-devel/automake/files/automake-1.11-install-sh-avoid-low-risk-race-in-tmp.patch b/sys-devel/automake/files/automake-1.11-install-sh-avoid-low-risk-race-in-tmp.patch
new file mode 100644
index 0000000..c435b90
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.11-install-sh-avoid-low-risk-race-in-tmp.patch
@@ -0,0 +1,77 @@
+From: Pavel Raiskup <praiskup@redhat.com>
+Date: Sat, 15 Aug 2015 04:40:57 -0400
+Subject: install-sh: avoid (low risk) race in /tmp
+
+Ensure that nobody can cross privilege boundaries by pre-creating
+symlink on '$tmpdir' path.
+
+Just testing 'mkdir -p' by creating '/tmp/ins$RANDOM-$$/d' is not
+safe because '/tmp' directory is usually world-writeable and
+'/tmp/ins$RANDOM-$$' content could be pretty easily guessed by
+attacker (at least for shells where $RANDOM is not supported).
+So, as the first step, create the '/tmp/ins$RANDOM-$$' without -p.
+This step would fail early if somebody wanted catch us.
+
+Note that systems that implement (and have enabled)
+fs.protected_symlinks kernel feature are not affected even without
+this commit.
+
+References:
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455
+https://bugzilla.redhat.com/show_bug.cgi?id=1140725
+
+* lib/install-sh: Implement safer 'mkdir -p' test by running
+'$mkdirprog $mkdir_mode "$tmpdir"' first.
+(scriptversion): Bump.
+
+--- a/lib/install-sh
++++ b/lib/install-sh
+@@ -345,34 +345,41 @@ do
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
++ # $RANDOM is not portable (e.g. dash); use it when possible to
++ # lower collision chance
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
++ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
+
++ # As "mkdir -p" follows symlinks and we work in /tmp possibly; so
++ # create the $tmpdir first (and fail if unsuccessful) to make sure
++ # that nobody tries to guess the $tmpdir name.
+ if (umask $mkdir_umask &&
+- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
++ $mkdirprog $mkdir_mode "$tmpdir" &&
++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writeable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+- ls_ld_tmpdir=`ls -ld "$tmpdir"`
++ test_tmpdir="$tmpdir/a"
++ ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
++ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
++ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+- rmdir "$tmpdir/d" "$tmpdir"
++ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
++ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
diff --git a/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch b/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch
new file mode 100644
index 0000000..f790e77
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch
@@ -0,0 +1,59 @@
+https://bugs.gentoo.org/343439
+
+From 182626687f2640609f8eb28ad1b04b078342f2c7 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sat, 12 Jan 2013 00:19:40 -0500
+Subject: [PATCH] ithreads: use runtime (not configure time) detection of perl
+ threads
+
+I can't imagine the runtime checks being a big runtime penalty, so there
+shouldn't be a need to do the checks at configure check and hardcode the
+result in the generated automake.
+
+With the current system, it means if you change your perl config (build
+perl w/threads, build automake, build perl w/out threads), or deploy a
+compiled automake package on a different system (build had threads, but
+deployed system does not), you get errors when trying to run automake.
+
+So take the logic from configure.ac and move it to the one place where
+PERL_THREADS is used (lib/Automake/Config.in) and do the version/config
+checking at runtime.
+
+* bootstrap.sh (PERL_THREADS): Delete assignment and use in sed.
+* configure.ac (am_cv_prog_PERL_ithreads, PERL_THREADS): Delete all code
+related to these two variables.
+* lib/Automake/Config.in (perl_threads): Initialize to 0, and only set to
+1 if the perl version is at least 5.007_002, and useithreads is in Config.
+
+Copyright-paperwork-exempt: yes
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
+---
+ bootstrap.sh | 2 --
+ configure.ac | 26 --------------------------
+ lib/Automake/Config.in | 9 ++++++++-
+ 3 files changed, 8 insertions(+), 29 deletions(-)
+
+diff --git a/lib/Automake/Config.in b/lib/Automake/Config.in
+index fe6ef9d..885e74e 100644
+--- a/lib/Automake/Config.in
++++ b/lib/Automake/Config.in
+@@ -33,7 +33,14 @@ our $PACKAGE_BUGREPORT = '@PACKAGE_BUGREPORT@';
+ our $VERSION = '@VERSION@';
+ our $RELEASE_YEAR = '@RELEASE_YEAR@';
+ our $libdir = '@datadir@/@PACKAGE@-@APIVERSION@';
+-our $perl_threads = @PERL_THREADS@;
++
++our $perl_threads = 0;
++# We need at least this version for CLONE support.
++if (eval { require 5.007_002; })
++ {
++ use Config;
++ $perl_threads = $Config{useithreads};
++ }
+
+ 1;
+
+--
+1.8.0.2
+
diff --git a/sys-devel/automake/files/automake-1.13-hash-order-workaround.patch b/sys-devel/automake/files/automake-1.13-hash-order-workaround.patch
new file mode 100644
index 0000000..79b81e6
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.13-hash-order-workaround.patch
@@ -0,0 +1,14 @@
+--- a/t/primary-prefix-invalid-couples.tap
++++ b/t/primary-prefix-invalid-couples.tap
+@@ -186,8 +186,10 @@ grep -v 'dir.* not a legitimate directory' stderr && exit 1
+ # Check that the same failures are present without the '--add-missing'
+ # option.
+ mv stderr stderr.old
++cat stderr.old | sort > a
+ AUTOMAKE_fails -d "automake error out on mismatched prefix/primary couples"
++cat stderr | sort > b
+ command_ok_ "... and with the same diagnostic of 'automake -a'" \
+- diff stderr.old stderr
++ diff a b
+
+ :
diff --git a/sys-devel/automake/files/automake-1.13-perl-escape-curly-bracket-r1.patch b/sys-devel/automake/files/automake-1.13-perl-escape-curly-bracket-r1.patch
new file mode 100644
index 0000000..bf8819a
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.13-perl-escape-curly-bracket-r1.patch
@@ -0,0 +1,37 @@
+http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21001
+
+From 34163794a58b5bd91c5d6bd9adf5437571c7a479 Mon Sep 17 00:00:00 2001
+From: Pavel Raiskup <praiskup@redhat.com>
+Date: Tue, 7 Jul 2015 10:54:24 +0200
+Subject: [PATCH] bin/automake: escape '{' in regexp pattern
+
+Based on perlre(1) documentation:
+.. in Perl v5.26, literal uses of a curly bracket will be required
+to be escaped, say by preceding them with a backslash ("\{" ) or
+enclosing them within square brackets ("[{]") ..
+
+References:
+https://bugzilla.redhat.com/1239379
+
+* bin/automake.in (substitute_ac_subst_variables): Escape the
+occurrence of '{' character.
+---
+ bin/automake.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/bin/automake.in b/bin/automake.in
+index 0c29184..c294ced 100644
+--- a/automake.in
++++ b/automake.in
+@@ -3898,7 +3898,7 @@ sub substitute_ac_subst_variables_worker
+ sub substitute_ac_subst_variables ($)
+ {
+ my ($text) = @_;
+- $text =~ s/\${([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge;
++ $text =~ s/\$\{([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge;
+ return $text;
+ }
+
+--
+2.1.0
+
diff --git a/sys-devel/automake/files/automake-1.14-install-sh-avoid-low-risk-race-in-tmp.patch b/sys-devel/automake/files/automake-1.14-install-sh-avoid-low-risk-race-in-tmp.patch
new file mode 100644
index 0000000..6793706
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.14-install-sh-avoid-low-risk-race-in-tmp.patch
@@ -0,0 +1,77 @@
+From: Pavel Raiskup <praiskup@redhat.com>
+Date: Sat, 15 Aug 2015 04:40:57 -0400
+Subject: install-sh: avoid (low risk) race in /tmp
+
+Ensure that nobody can cross privilege boundaries by pre-creating
+symlink on '$tmpdir' path.
+
+Just testing 'mkdir -p' by creating '/tmp/ins$RANDOM-$$/d' is not
+safe because '/tmp' directory is usually world-writeable and
+'/tmp/ins$RANDOM-$$' content could be pretty easily guessed by
+attacker (at least for shells where $RANDOM is not supported).
+So, as the first step, create the '/tmp/ins$RANDOM-$$' without -p.
+This step would fail early if somebody wanted catch us.
+
+Note that systems that implement (and have enabled)
+fs.protected_symlinks kernel feature are not affected even without
+this commit.
+
+References:
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455
+https://bugzilla.redhat.com/show_bug.cgi?id=1140725
+
+* lib/install-sh: Implement safer 'mkdir -p' test by running
+'$mkdirprog $mkdir_mode "$tmpdir"' first.
+(scriptversion): Bump.
+
+--- a/lib/install-sh
++++ b/lib/install-sh
+@@ -345,34 +345,41 @@ do
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
++ # $RANDOM is not portable (e.g. dash); use it when possible to
++ # lower collision chance
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
++ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
+
++ # As "mkdir -p" follows symlinks and we work in /tmp possibly; so
++ # create the $tmpdir first (and fail if unsuccessful) to make sure
++ # that nobody tries to guess the $tmpdir name.
+ if (umask $mkdir_umask &&
+- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
++ $mkdirprog $mkdir_mode "$tmpdir" &&
++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+- ls_ld_tmpdir=`ls -ld "$tmpdir"`
++ test_tmpdir="$tmpdir/a"
++ ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
++ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
++ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+- rmdir "$tmpdir/d" "$tmpdir"
++ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
++ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
diff --git a/sys-devel/automake/files/automake-1.15-install-sh-avoid-low-risk-race-in-tmp.patch b/sys-devel/automake/files/automake-1.15-install-sh-avoid-low-risk-race-in-tmp.patch
new file mode 100644
index 0000000..1fabdd5
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.15-install-sh-avoid-low-risk-race-in-tmp.patch
@@ -0,0 +1,82 @@
+From: Pavel Raiskup <praiskup@redhat.com>
+Date: Sat, 15 Aug 2015 04:40:57 -0400
+Subject: install-sh: avoid (low risk) race in /tmp
+
+Ensure that nobody can cross privilege boundaries by pre-creating
+symlink on '$tmpdir' path.
+
+Just testing 'mkdir -p' by creating '/tmp/ins$RANDOM-$$/d' is not
+safe because '/tmp' directory is usually world-writeable and
+'/tmp/ins$RANDOM-$$' content could be pretty easily guessed by
+attacker (at least for shells where $RANDOM is not supported).
+So, as the first step, create the '/tmp/ins$RANDOM-$$' without -p.
+This step would fail early if somebody wanted catch us.
+
+Note that systems that implement (and have enabled)
+fs.protected_symlinks kernel feature are not affected even without
+this commit.
+
+References:
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455
+https://bugzilla.redhat.com/show_bug.cgi?id=1140725
+
+* lib/install-sh: Implement safer 'mkdir -p' test by running
+'$mkdirprog $mkdir_mode "$tmpdir"' first.
+(scriptversion): Bump.
+---
+ lib/install-sh | 23 +++++++++++++++--------
+ 1 file changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/lib/install-sh b/lib/install-sh
+index 0b0fdcb..59990a1 100755
+--- a/lib/install-sh
++++ b/lib/install-sh
+@@ -324,34 +324,41 @@ do
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
++ # $RANDOM is not portable (e.g. dash); use it when possible to
++ # lower collision chance
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
++ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
+
++ # As "mkdir -p" follows symlinks and we work in /tmp possibly; so
++ # create the $tmpdir first (and fail if unsuccessful) to make sure
++ # that nobody tries to guess the $tmpdir name.
+ if (umask $mkdir_umask &&
+- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
++ $mkdirprog $mkdir_mode "$tmpdir" &&
++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+- ls_ld_tmpdir=`ls -ld "$tmpdir"`
++ test_tmpdir="$tmpdir/a"
++ ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
++ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
++ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+- rmdir "$tmpdir/d" "$tmpdir"
++ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
++ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
diff --git a/sys-devel/automake/files/automake-1.16.2-fix-instmany-python.sh-test.patch b/sys-devel/automake/files/automake-1.16.2-fix-instmany-python.sh-test.patch
new file mode 100644
index 0000000..5cddb4c
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.16.2-fix-instmany-python.sh-test.patch
@@ -0,0 +1,26 @@
+From 50daac4f15d207b6b69011b9cdde62b56c1c8b10 Mon Sep 17 00:00:00 2001
+From: Thomas Deutschmann <whissi@gentoo.org>
+Date: Fri, 20 Nov 2020 02:17:31 +0100
+Subject: [PATCH 2/2] tests: fix instmany-python.sh: increase limit
+
+Still failing with 4500 on Gentoo. Passing with 7000...
+---
+ t/instmany-python.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/t/instmany-python.sh b/t/instmany-python.sh
+index dce3594b5..1c482520d 100644
+--- a/t/instmany-python.sh
++++ b/t/instmany-python.sh
+@@ -21,7 +21,7 @@
+ required='python'
+ . test-init.sh
+
+-limit=4500
++limit=7000
+ subdir=long_subdir_name_with_many_characters
+ nfiles=81
+ list=$(seq_ 1 $nfiles)
+--
+2.29.2
+
diff --git a/sys-devel/automake/files/automake-1.16.2-fix-py-compile-basedir.sh-test.patch b/sys-devel/automake/files/automake-1.16.2-fix-py-compile-basedir.sh-test.patch
new file mode 100644
index 0000000..f49dd25
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.16.2-fix-py-compile-basedir.sh-test.patch
@@ -0,0 +1,26 @@
+From e3db5b8038a902501a354b6921dcebcb4180f50a Mon Sep 17 00:00:00 2001
+From: Thomas Deutschmann <whissi@gentoo.org>
+Date: Fri, 20 Nov 2020 02:13:56 +0100
+Subject: [PATCH 1/2] tests: fix py-compile-basedir.sh: add missing test call
+
+Fixes: b279a0d46 ("tests: in python tests, do not require .pyo files (for python3)")
+---
+ t/py-compile-basedir.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/t/py-compile-basedir.sh b/t/py-compile-basedir.sh
+index 13a22ff1d..1a16ee2d7 100644
+--- a/t/py-compile-basedir.sh
++++ b/t/py-compile-basedir.sh
+@@ -43,7 +43,7 @@ for d in foo foo/bar "$(pwd)/foo" . .. ../foo ''; do
+ py_installed "$d2/sub/$f.pyc"
+ files=$(find "$d2" | grep '\.py[co]$')
+ # with new-enough Python3, there are six files.
+- test $(echo "$files" | wc -l) -eq 4 || $(echo "$files" | wc -l) -eq 6
++ test $(echo "$files" | wc -l) -eq 4 || test $(echo "$files" | wc -l) -eq 6
+ case $d2 in
+ .|..) rm -f $files;;
+ *) rm -rf "$d2";;
+--
+2.29.2
+
diff --git a/sys-devel/automake/files/automake-1.16.2-py3-compile.patch b/sys-devel/automake/files/automake-1.16.2-py3-compile.patch
new file mode 100644
index 0000000..7924f20
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.16.2-py3-compile.patch
@@ -0,0 +1,73 @@
+From aa449bd4c836abf0320033c5077259fc760b622d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 3 Nov 2019 11:51:19 +0100
+Subject: [PATCH] py-compile: Support -OO for py3.5+, and -O&-OO for pypy3
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Michał Górny <mgorny@gentoo.org>
+---
+ lib/py-compile | 29 +++++++++++++++++++++++++----
+ 1 file changed, 25 insertions(+), 4 deletions(-)
+
+diff --git a/lib/py-compile b/lib/py-compile
+index e56d98d6e..5b9ae5d5d 100755
+--- a/lib/py-compile
++++ b/lib/py-compile
+@@ -126,12 +126,10 @@ if test "$python_major" -le 2; then
+ import_lib=imp
+ import_test="hasattr(imp, 'get_tag')"
+ import_call=imp.cache_from_source
+- import_arg2=', False' # needed in one call and not the other
+ else
+ import_lib=importlib
+ import_test="hasattr(sys.implementation, 'cache_tag')"
+ import_call=importlib.util.cache_from_source
+- import_arg2=
+ fi
+
+ $PYTHON -c "
+@@ -159,7 +157,7 @@ $PYTHON -O -c "
+ import sys, os, py_compile, $import_lib
+
+ # pypy does not use .pyo optimization
+-if hasattr(sys, 'pypy_translation_info'):
++if hasattr(sys, 'pypy_translation_info') and sys.hexversion < 0x03050000:
+ sys.exit(0)
+
+ files = '''$files'''
+@@ -173,7 +171,30 @@ for file in files.split():
+ sys.stdout.write(file)
+ sys.stdout.flush()
+ if $import_test:
+- py_compile.compile(filepath, $import_call(filepath$import_arg2), path)
++ py_compile.compile(filepath, $import_call(filepath), path)
++ else:
++ py_compile.compile(filepath, filepath + 'o', path)
++sys.stdout.write('\n')" 2>/dev/null || :
++
++$PYTHON -OO -c "
++import sys, os, py_compile, $import_lib
++
++# python<3.5 does not have split files for -O and -OO
++if sys.hexversion < 0x03050000:
++ sys.exit(0)
++
++files = '''$files'''
++sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n')
++for file in files.split():
++ $pathtrans
++ $filetrans
++ if not os.path.exists(filepath) or not (len(filepath) >= 3
++ and filepath[-3:] == '.py'):
++ continue
++ sys.stdout.write(file)
++ sys.stdout.flush()
++ if $import_test:
++ py_compile.compile(filepath, $import_call(filepath), path)
+ else:
+ py_compile.compile(filepath, filepath + 'o', path)
+ sys.stdout.write('\n')" 2>/dev/null || :
+--
+2.25.2
diff --git a/sys-devel/automake/metadata.xml b/sys-devel/automake/metadata.xml
new file mode 100644
index 0000000..f671901
--- /dev/null
+++ b/sys-devel/automake/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="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+</maintainer>
+<upstream>
+ <remote-id type="cpe">cpe:/a:gnu:automake</remote-id>
+</upstream>
+</pkgmetadata>