logo

live-bootstrap

Mirror of <https://github.com/fosslinux/live-bootstrap>
commit: 191c013e236ac9faeff78290f71af5683b2e2fa6
parent 545bb42ca800af28086ebd1fa2c8ed46726a6f74
Author: fosslinux <fosslinux@aussies.space>
Date:   Thu, 21 Dec 2023 11:03:15 +1100

Update binutils to 2.41

Diffstat:

Msteps/SHA256SUMS.pkgs44++++++++++++++++++++++----------------------
Dsteps/binutils-2.38/pass1.sh117-------------------------------------------------------------------------------
Dsteps/binutils-2.38/pass2.sh122-------------------------------------------------------------------------------
Dsteps/binutils-2.38/patches/libiberty-add-missing-config-directory-reference.patch18------------------
Dsteps/binutils-2.38/patches/opcodes-ensure-i386-init-dependencies-are-satisfied.patch17-----------------
Dsteps/binutils-2.38/sources1-
Asteps/binutils-2.41/pass1.sh118+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asteps/binutils-2.41/pass2.sh127+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Rsteps/binutils-2.38/patches/new-gettext.patch -> steps/binutils-2.41/patches/new-gettext.patch0
Asteps/binutils-2.41/patches/no-maint-functions-texi.patch26++++++++++++++++++++++++++
Asteps/binutils-2.41/patches/no-maint-opcodes.patch18++++++++++++++++++
Asteps/binutils-2.41/sources1+
Msteps/manifest4++--
13 files changed, 314 insertions(+), 299 deletions(-)

diff --git a/steps/SHA256SUMS.pkgs b/steps/SHA256SUMS.pkgs @@ -9,7 +9,7 @@ d5fcce4baea5e11f983a7e4b7148545ab6720bb4e010898c73387f6711be67f4 autoconf-2.64_ 298dcf17a439adb306237b308e3c4ed3d376cb863ae0f0f08bfdf1f3199a548b autoconf-2.69_0.tar.bz2 8c2401edf1c68910005bbcb8b8e84727a46f7d9643d2ad1267bd0259078dadc4 autoconf-2.71_0.tar.bz2 6ff691e3ddd4f3d1796d28b07a2a96691dbd9801844c99ccbe660da59dabd74b autoconf-archive-2021.02.19_0.tar.bz2 -56cb475253b1175f09d69bc81a5b1d954f486c9b97b1a0ae3217e63d18f64573 autogen-5.18.16_0.tar.bz2 +9b52663ad7c591520805b96c519c4a291d8a9a960a907341c5b78cd631ebb344 autogen-5.18.16_0.tar.bz2 02a426e82a52d4a2cd7e73fe3dc5a2c58b3ed100f24a92c57e42511fd86e247c automake-1.10.3_0.tar.bz2 34925adeaa2876a5e068adeb17b71fe7c7105244c3cb5439d33f7406310674da automake-1.11.2_0.tar.bz2 a7bd12bd0c639783ce1c0e9f640cf004a87460bbda8154bc550c5e6884457b48 automake-1.15.1_0.tar.bz2 @@ -23,8 +23,8 @@ c5807850a377e4bb9aa4121d9781d145bdd80327626a9419630a75ce2c8d9c71 automake-1.9.6 f8a55bf656f950ee3c5cea48af03f552166f6db9926b78c78843f3cc52a6e22d bash-5.2.15_0.tar.bz2 ebc631ee8e9382650005984ec5f3910492ccb6fb2656b4c0af0f4afc16998906 bc-1.07.1_0.tar.bz2 28b38078f88d77ebfa8ad1a514a5724fe11581bdbfc72b79f087fa24986ac9cb binutils-2.30_0.tar.bz2 -6eb26a856e1eb79a1b3f6d76e42138bf1b868fc5f229c3a1e22d3eb68dfb88ba binutils-2.38_0.tar.bz2 -57e339eb76a5a0f4b7298d0071f83354911dda928f4aa54e47a21ebc9c8390a7 binutils-2.38_1.tar.bz2 +da658346866061324b92a6b734561257acfdb981783ad5794d67a0cd56e14e58 binutils-2.41_0.tar.bz2 +026447a32ab08a8a5150bab82a2f150af4a2ed90c47cfde631e1460eaed019aa binutils-2.41_1.tar.bz2 f0bb18831983493b82fde53917e8d16c6a380761ac5e71e14769a82193fee788 bison-2.3_0.tar.bz2 7018edd13a1dd5ba35fdc8be49af91b28901aad3080fdeebdb98b79f8a90d7ed bison-3.4.1_0.tar.bz2 41c9a95b11cf183524927f52f9f7e97a479e0261c0551f6a4c22690b931243db bison-3.4.1_1.tar.bz2 @@ -49,17 +49,17 @@ b3a8d59229289ca5a1de6a24c9c828d2847144f6662e0d5b7f41e7ff6e57abaa flex-2.5.33_0. 408131b1c033a5f8a6845997b049784be0b466cec107a71270e5a04dae2c1e6c flex-2.6.4_0.tar.bz2 5ff7fbe16b55563719b108260bd6a34ebabab0465d758ca98cba522932532e45 gawk-3.0.4_0.tar.bz2 6de1c1380026ef9948387e665610185b6014f47a80453177a6c81898c95cbbd3 gc-8.0.4_0.tar.bz2 -872eabeff12a0b1b9dc2bd146f2c1e493597281795548377ff1ec5f6a1853e88 gcc-10.4.0_0.tar.bz2 -4f50d8f5e1f123a8e6d34dff1d5892f79d250f2fb5d7fa2a94cff1f2e8f9649c gcc-13.1.0_0.tar.bz2 +c99d080cf17ac3f75cbae67095cb76220a92d96d877c92c896a7f05c9c94e92d gcc-10.4.0_0.tar.bz2 +e0c9e7f4f0cd0d5027f2a38eb262f883133c31ac9ec93ee6afa5abc028096bc0 gcc-13.1.0_0.tar.bz2 526c3710b5067bd2fc869371541d7e71dcff1cffcba7ddecabedc33967e19e2c gcc-4.0.4_0.tar.bz2 c1bf792e90df13bf7a24d3f8ce3939fd96ff61b8117e4dcef75605974f3fcf25 gcc-4.0.4_1.tar.bz2 7ac087bf006188154c28401d0c875ede56076c19d41bc54ffa0d7cc18ce40800 gcc-4.7.4_0.tar.bz2 dc67fc1b132fa3945349efe74c5b2197bd0b6babf4d29d2deddd04f09d9af680 gettext-0.21_0.tar.bz2 309282ba840f80b5e10897b1221f3ff3329b9e05b982c788d03652f411974524 gmp-6.2.1_0.tar.bz2 -f5917ffad5dd282d5ea17e791b470455c328ea0ebc845ed5ec80937a8d0eb933 gperf-3.1_0.tar.bz2 +62edfa633f64202b2d29199d11d56a897654a441c7ae39a4d59ca5fe75199f61 gperf-3.1_0.tar.bz2 67d706423e079a9cd764fd9607027d296c0ff2380c1104006a2230a299eb2c1d grep-2.4_0.tar.bz2 -0939a34d58ff31e2c234f6f47f964633ceae4839de49ce368ad027c016850d58 grep-3.7_0.tar.bz2 -9dacbb0d2a12585079ba2527af5bb165337aa6fe68fa42b93842abe3b8d46ef6 guile-3.0.9_0.tar.bz2 +8e612afb9a439aa8bf5db0fc2589eec890a6017690412d5c8e88a5838730b42c grep-3.7_0.tar.bz2 +e2a85aad6d51e52c9a30afeed058f95172fde1215f77243549274672990f6237 guile-3.0.9_0.tar.bz2 8d2015b87337abbf287f7a39ee4cf53514120b5d3e90a93fe7d533dcc43f14fa help2man-1.36.4_0.tar.bz2 f650c3b24de6edd49cd662c9e9ce11f7b0b5ea6df66d561b46a032b08fc34faa kbd-1.15_0.tar.bz2 3e3bc64af937c351be2538bb89de99f36ffc240721c32fcc84a76769e235ed66 kexec-linux-1.0.0_0.tar.bz2 @@ -82,7 +82,7 @@ e69554b0a77b419ddd5d0a0e418ba4005ecd0f6784c92a6928a0270bd929a098 make-3.82_0.ta b79e0f8a39ba8880d43aa27551b72915655c62af39125e1f4ac8f8e69e71aaca musl-1.1.24_2.tar.bz2 81f79a0faf58e105c5f12d9f538d3ea7578a3b361e633ab8f47324ec23ec9de6 musl-1.2.4_0.tar.bz2 6dc5e763b747b66f72692c6820d7f46b7f4cf2e2fe05229a1d01c03919c1c936 musl-1.2.4_1.tar.bz2 -107548dd69ff4d5dfceb5891eed8a237cc6a22fd65915b44c838be1eba07668b musl-1.2.4_2.tar.bz2 +820203286127e7c22cee9f1b3cff664431f10d14c3f22f00b3e771fd849fd449 musl-1.2.4_2.tar.bz2 c490016e49bbf77e7f63071f7aa60e8290a0c67f017846def1c3f65bd10d5712 openssl-1.1.1l_0.tar.bz2 71864d042cdc564b65eab21360902c714e9b43f80a19689c5600589529b267e7 patch-2.7.6_0.tar.bz2 914a7abf36a64723b6e9f9b0b6ccd19c8e544fa798896a2bb1151dc341890c22 perl-5.000_0.tar.bz2 @@ -93,19 +93,19 @@ b86fc586d72a6d204d0b9017afe17aa2439529e13f43befc56648b78de17c8f8 perl5.004-05_0 fdccd3ba27a44d2149f159040414a04b39bfc72673ba36f50051b61199cc425c perl-5.32.1_0.tar.bz2 9fa8850897248d77d554caa2b3d52e7890308cbf28750ffc24c09f498aee563c perl-5.6.2_0.tar.bz2 1b9d4260edf7b2241d10e4c4ad17d0f90047bd4bf42f2487a7133902529e9dfe pkg-config-0.29.2_0.tar.bz2 -d4a263a4039b8d18ab95b5a7188a5c8b0defdf17d1cf899bf23a597be2df0658 python-2.0.1_0.tar.bz2 -95ecbf909a8781d77e9b89e6ff3dc39e3ed702aebdec8b0a491df2dd4af8c780 python-2.0.1_1.tar.bz2 -14b20bd76f6dfab0cc19141fd8d39c2841227b3876e5d107b1b57b05a51a83aa python-2.3.7_0.tar.bz2 -5395d185003b22c607eb55a5b9f1adca5bbe178e7c774faabe758d0499936397 python-2.3.7_1.tar.bz2 -374fc8c2577d681b7aa2670000fcc2450e2b50eb1cc8d739994ece69f83f4155 python-2.5.6_0.tar.bz2 -e1321250c6421515f982a89ee4ceb8a8b7d2ecc3e192c7c7ede58e98f2bc75de python-3.11.1_0.tar.bz2 -8f096d93f799a6575bae06a578625b92a888c25ed6b4d296173fc20fcadb003a python-3.1.5_0.tar.bz2 -fb123d00e591452a6f077aaa8aa22ab8693e665ffa95e185a2bf79883d3d4684 python-3.1.5_1.tar.bz2 -a9b73271407427f749406e1d3eabd51f627fd0fbe92332b792eeff1b9bfc44a5 python-3.3.7_0.tar.bz2 -f95ce9de6002c47d82c41804e943a7079614fe7bc669fba15fe4552f9f08a7e3 python-3.4.10_0.tar.bz2 -18bf5480d894d65bb11cad9d8591410e8a3b399f6eef3568d45144c363cd7d43 python-3.8.16_0.tar.bz2 +1e882c3206f9d1de2a9be8b5c6ae4cc65e80a4de607bd521058577bf4169c0e9 python-2.0.1_0.tar.bz2 +aba9710341db75b78c7bc1eb4ef45b9496e23f7a356128af6c2b116ee0f3f31a python-2.0.1_1.tar.bz2 +d497c9b614194b941620bb5c5111fc72eca8cafd7d4f476eacb24fb7f909b614 python-2.3.7_0.tar.bz2 +8a977205933431c2a4207f647cb683b570dfdb0146e21abf5fab3f8426e1356b python-2.3.7_1.tar.bz2 +34e5083ed3e72da5aa5950acebf9e95464089d693e3d6a047a2b69b6103f5ca9 python-2.5.6_0.tar.bz2 +52ffb1ea6f2b893a6fd26f930c8ff63f78ddcc31ac3ec9c2ddade555205aa1ef python-3.11.1_0.tar.bz2 +3508248f299b73c50e3607c4c294d40face05170476a5026b0821aed69025863 python-3.1.5_0.tar.bz2 +12b1ffc7ec98ba8f807160b93ba69a694d5395567c3bcac1e49e8f8d1d50de43 python-3.1.5_1.tar.bz2 +60b93253a2078f849f81e7e1ed6233e30702f03b1893640eee95671d814f5514 python-3.3.7_0.tar.bz2 +da7c8ec579dd225c0d8bee63d95aeeb27ac2d5a60d4eefe298508cbf86bf506c python-3.4.10_0.tar.bz2 +0be505f63205b4bc1b1421896c610468ad1a2194bbc4c9abf58f61685c2023d1 python-3.8.16_0.tar.bz2 6081832f1fc258df7dd927986821991b49fa78a71b76f4b37b5c34a8ebc9bc86 sed-4.0.9_0.tar.bz2 -e58d8ec46c5b31175de9598bf0da214b88ccbd4cca7a787f3d048c44edaf3ceb sed-4.8_0.tar.bz2 +e8daec00b2c2de7b18efbec057dc9290eed06668806c6f5a48914d4a5cd95eb4 sed-4.8_0.tar.bz2 912d8f344104f1322255d6210c7c7e1371413ab530b2c6796e6aa565c74bf647 tar-1.34_0.tar.bz2 d5d0df210248a385ae255cc5651369108e9a71fa8668821a6b1ed30a8d7364a1 tcc-0.9.27_0.tar.bz2 79276f54bc57933b6002e5511e6d8d88e22159dcf1cbbc9da763c38691a2c628 tcc-0.9.27_1.tar.bz2 @@ -113,6 +113,6 @@ d5d0df210248a385ae255cc5651369108e9a71fa8668821a6b1ed30a8d7364a1 tcc-0.9.27_0.t 2b503cd31d3326ac1ed0eb9f506ac93c93770da51164e152a812cd248961069c tcc-0.9.27_3.tar.bz2 50ebaa1d8fcc4a03a43d431eb71e2f435cc8712ae47d400564df3716037d553a texinfo-6.7_0.tar.bz2 229d9189adac10ad2a2c76fc147a4c317fc5b34026cef1c47edc9159aee480da util-linux-2.19.1_0.tar.bz2 -5a1fdd2b42080f3b4808ceb1bf80a95873e614a25524545e6803b7d9f1fd5605 which-2.21_0.tar.bz2 +ecdb7ffeb9256f6a9760be70969fe5dea9cde6a538cc88595281fe44340e98a1 which-2.21_0.tar.bz2 3fade2079cc91f2c5624ff7247220059caee82e7de493332103d7a78155400b2 xz-5.4.1_0.tar.bz2 ca8ec9876a7334f5f87e1159e0efe343b8b497ffb0dea8b548223035ecd67f9e zlib-1.2.13_0.tar.bz2 diff --git a/steps/binutils-2.38/pass1.sh b/steps/binutils-2.38/pass1.sh @@ -1,117 +0,0 @@ -# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> -# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu> -# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com> -# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> -# -# SPDX-License-Identifier: GPL-3.0-or-later - - -src_prepare() { - default - - # Remove unused generated files - rm etc/Makefile.in etc/configure - - rm zlib/aclocal.m4 zlib/configure - - # Regenerate autoconf - for dir in bfd binutils gas gold gprof intl ld libctf libiberty opcodes; do - cd $dir - AUTOPOINT=true ACLOCAL=aclocal-1.15 AUTOMAKE=automake-1.15 autoreconf-2.69 -fi - cd .. - done - ACLOCAL=aclocal-1.15 autoreconf-2.69 -fi - - # Regenerate directories with Makefile.am only - pushd gold - automake-1.15 -fai testsuite/Makefile - popd - pushd bfd - automake-1.15 -fai doc/Makefile - popd - - # Rebuild bison files - touch -- */*.y - rm binutils/arparse.c binutils/arparse.h - rm binutils/defparse.c binutils/defparse.h - rm binutils/mcparse.c binutils/mcparse.h - rm binutils/rcparse.c binutils/rcparse.h - rm binutils/sysinfo.c binutils/sysinfo.h - rm gas/config/bfin-parse.c gas/config/bfin-parse.h - rm gas/config/loongarch-parse.c gas/config/loongarch-parse.h - rm gas/config/m68k-parse.c gas/config/rl78-parse.c - rm gas/config/rl78-parse.h gas/config/rx-parse.c - rm gas/config/rx-parse.h gas/itbl-parse.c - rm gas/itbl-parse.h gold/yyscript.c - rm gold/yyscript.h intl/plural.c - rm ld/deffilep.c ld/deffilep.h - rm ld/ldgram.c ld/ldgram.h - - # Rebuild flex generated files - touch -- */*.l */*/*.l - rm binutils/arlex.c binutils/deflex.c binutils/syslex.c - rm gas/config/bfin-lex.c gas/config/loongarch-lex.c gas/itbl-lex.c - rm ld/ldlex.c - - # Remove prebuilt texinfo files - find . -type f -name '*.info*' \ - -not -wholename './binutils/sysroff.info' \ - -delete - - # Remove pregenerated opcodes files - rm opcodes/i386-init.h opcodes/i386-tbl.h - rm opcodes/ia64-asmtab.c - rm opcodes/z8k-opc.h - rm opcodes/aarch64-asm-2.c opcodes/aarch64-opc-2.c opcodes/aarch64-dis-2.c - rm $(grep -l 'MACHINE GENERATED' opcodes/*.c opcodes/*.h) - - # Regenerate MeP sections - ./bfd/mep-relocs.pl - - # Manpages - find . -type f \( -name '*.1' -or -name '*.man' \) -delete -} - -src_configure() { - for dir in intl libctf libiberty opcodes bfd binutils gas gprof ld; do - cd $dir - - ./configure \ - --disable-nls \ - --enable-install-libiberty \ - --enable-deterministic-archives \ - --with-system-zlib \ - --build=i386-unknown-linux-musl \ - --host=i386-unknown-linux-musl \ - --target=i386-unknown-linux-musl \ - --program-prefix="" \ - --prefix="${PREFIX}" \ - --libdir="${LIBDIR}" \ - --with-sysroot= \ - --srcdir=. - cd .. - done -} - -src_compile() { - make -C bfd headers - for dir in libiberty bfd opcodes libctf binutils gas gprof ld; do - make "${MAKEJOBS}" -C $dir tooldir=${PREFIX} CFLAGS="-std=c99" - done -} - -src_install() { - for dir in libiberty bfd opcodes libctf binutils gas gprof ld; do - make -C $dir tooldir=${PREFIX} DESTDIR="${DESTDIR}" install - done - - # Create triplet symlinks - pushd "${DESTDIR}${PREFIX}/bin" - for f in *; do - ln -s "${PREFIX}/bin/${f}" "i386-unknown-linux-musl-${f}" - done - popd - - # FIXME: Binutils' manpages dates are not reproducible - rm -r "${DESTDIR}${PREFIX}/share/man" -} diff --git a/steps/binutils-2.38/pass2.sh b/steps/binutils-2.38/pass2.sh @@ -1,122 +0,0 @@ -# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> -# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu> -# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com> -# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> -# -# SPDX-License-Identifier: GPL-3.0-or-later - -src_prepare() { - default - - # Remove unused generated files - rm etc/Makefile.in etc/configure - rm zlib/aclocal.m4 zlib/configure - - # Regenerate top-level (autogen + autotools) - autogen Makefile.def - ACLOCAL=aclocal-1.15 autoreconf-2.69 -fi - - # Regenerate autoconf - for dir in bfd binutils gas gold gprof intl ld libctf libiberty opcodes; do - cd $dir - ACLOCAL=aclocal-1.15 AUTOMAKE=automake-1.15 autoreconf-2.69 -fi - cd .. - done - - # Regenerate directories with Makefile.am only - pushd gold - automake-1.15 -fai testsuite/Makefile - popd - pushd bfd - automake-1.15 -fai doc/Makefile - popd - - # intl/ Makefile is a bit broken because of new gettext - sed -i 's/@USE_INCLUDED_LIBINTL@/no/' intl/Makefile.in - - # There is no way to add -all-static to libtool LDFLAGS (such a thing doesn't exist) - # -all-static is required for static binaries with libtool - sed -i 's:\(--mode=link $(CCLD)\):\1 -all-static:' {bfd,binutils,opcodes,ld,libctf,gas,gprof}/Makefile.in - - # Rebuild bison files - touch -- */*.y - rm binutils/arparse.c binutils/arparse.h - rm binutils/defparse.c binutils/defparse.h - rm binutils/mcparse.c binutils/mcparse.h - rm binutils/rcparse.c binutils/rcparse.h - rm binutils/sysinfo.c binutils/sysinfo.h - rm gas/config/bfin-parse.c gas/config/bfin-parse.h - rm gas/config/loongarch-parse.c gas/config/loongarch-parse.h - rm gas/config/m68k-parse.c gas/config/rl78-parse.c - rm gas/config/rl78-parse.h gas/config/rx-parse.c - rm gas/config/rx-parse.h gas/itbl-parse.c - rm gas/itbl-parse.h gold/yyscript.c - rm gold/yyscript.h intl/plural.c - rm ld/deffilep.c ld/deffilep.h - rm ld/ldgram.c ld/ldgram.h - - # Rebuild flex generated files - touch -- */*.l */*/*.l - rm binutils/arlex.c binutils/deflex.c binutils/syslex.c - rm gas/config/bfin-lex.c gas/config/loongarch-lex.c gas/itbl-lex.c - rm ld/ldlex.c - - # Remove prebuilt texinfo files - find . -type f -name '*.info*' \ - -not -wholename './binutils/sysroff.info' \ - -delete - - # Remove pregenerated opcodes files - rm opcodes/i386-init.h opcodes/i386-tbl.h - rm opcodes/ia64-asmtab.c - rm opcodes/z8k-opc.h - rm opcodes/aarch64-asm-2.c opcodes/aarch64-opc-2.c opcodes/aarch64-dis-2.c - rm $(grep -l 'MACHINE GENERATED' opcodes/*.c opcodes/*.h) - - # Regenerate MeP sections - ./bfd/mep-relocs.pl - - # Manpages - find . -type f \( -name '*.1' -or -name '*.man' \) -delete -} - -src_configure() { - mkdir build - cd build - - LDFLAGS="-static" \ - ../configure \ - --prefix="${PREFIX}" \ - --libdir="${LIBDIR}" \ - --build=i386-unknown-linux-musl \ - --host=i386-unknown-linux-musl \ - --target=i386-unknown-linux-musl \ - --enable-static \ - --disable-nls \ - --disable-multilib \ - --disable-plugins \ - --enable-threads \ - --enable-64-bit-bfd \ - --enable-gold \ - --enable-ld=default \ - --enable-install-libiberty \ - --enable-deterministic-archives \ - --with-system-zlib \ - --program-prefix="" \ - --with-sysroot= \ - --srcdir=.. -} - -src_install() { - default - - # Create triplet symlinks - pushd "${DESTDIR}${PREFIX}/bin" - for f in *; do - ln -s "${PREFIX}/bin/${f}" "i386-unknown-linux-musl-${f}" - done - popd - - # FIXME: Binutils' manpages dates are not reproducible - rm -r "${DESTDIR}${PREFIX}/share/man" -} diff --git a/steps/binutils-2.38/patches/libiberty-add-missing-config-directory-reference.patch b/steps/binutils-2.38/patches/libiberty-add-missing-config-directory-reference.patch @@ -1,18 +0,0 @@ -SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> - -SPDX-License-Identifier: GPL-3.0-or-later - -Add missing AC_CONFIG_MACRO_DIR. - -Required by autoreconf to create aclocal.m4 correctly. - ---- /libiberty/configure.ac 2022-01-22 14:14:09.000000000 +0200 -+++ libiberty/configure.ac 2022-09-04 00:01:02.941738129 +0300 -@@ -2,6 +2,7 @@ - - AC_INIT - AC_CONFIG_SRCDIR([xmalloc.c]) -+AC_CONFIG_MACRO_DIR(../config) - - # This works around the fact that libtool configuration may change LD - # for this particular configuration, but some shells, instead of diff --git a/steps/binutils-2.38/patches/opcodes-ensure-i386-init-dependencies-are-satisfied.patch b/steps/binutils-2.38/patches/opcodes-ensure-i386-init-dependencies-are-satisfied.patch @@ -1,17 +0,0 @@ -SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> - -SPDX-License-Identifier: GPL-3.0-or-later - -Ensure i386-init.h dependencies are satisfied. - ---- opcodes/Makefile.am 2022-01-22 14:14:09.000000000 +0200 -+++ opcodes/Makefile.am 2022-09-13 21:09:04.353324699 +0300 -@@ -575,7 +575,7 @@ i386-gen.o: i386-gen.c i386-opc.h $(srcd - $(srcdir)/i386-tbl.h: $(srcdir)/i386-init.h - @echo $@ - --$(srcdir)/i386-init.h: @MAINT@ i386-gen$(EXEEXT_FOR_BUILD) i386-opc.tbl i386-reg.tbl i386-opc.h -+$(srcdir)/i386-init.h: i386-gen$(EXEEXT_FOR_BUILD) i386-opc.tbl i386-reg.tbl i386-opc.h - $(CPP) -P $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) - \ - < $(srcdir)/i386-opc.tbl \ - | ./i386-gen$(EXEEXT_FOR_BUILD) --srcdir $(srcdir) diff --git a/steps/binutils-2.38/sources b/steps/binutils-2.38/sources @@ -1 +0,0 @@ -https://mirrors.kernel.org/gnu/binutils/binutils-2.38.tar.xz e316477a914f567eccc34d5d29785b8b0f5a10208d36bbacedcc39048ecfe024 diff --git a/steps/binutils-2.41/pass1.sh b/steps/binutils-2.41/pass1.sh @@ -0,0 +1,118 @@ +# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> +# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu> +# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com> +# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> +# +# SPDX-License-Identifier: GPL-3.0-or-later + + +src_prepare() { + default + + # Remove unused generated files + rm etc/Makefile.in etc/configure + rm zlib/aclocal.m4 zlib/configure + + # Remove gprofng + rm -r gprofng + + # Regenerate autoconf + for dir in bfd binutils gas gold gprof intl ld libctf libiberty libsframe opcodes; do + cd $dir + AUTOPOINT=true ACLOCAL=aclocal-1.15 AUTOMAKE=automake-1.15 autoreconf-2.69 -fi + cd .. + done + ACLOCAL=aclocal-1.15 autoreconf-2.69 -fi + + # Regenerate directories with Makefile.am only + pushd gold + automake-1.15 -fai testsuite/Makefile + popd + + # Rebuild bison files + touch -- */*.y + rm binutils/arparse.c binutils/arparse.h + rm binutils/defparse.c binutils/defparse.h + rm binutils/mcparse.c binutils/mcparse.h + rm binutils/rcparse.c binutils/rcparse.h + rm binutils/sysinfo.c binutils/sysinfo.h + rm gas/config/bfin-parse.c gas/config/bfin-parse.h + rm gas/config/loongarch-parse.c gas/config/loongarch-parse.h + rm gas/config/m68k-parse.c gas/config/rl78-parse.c + rm gas/config/rl78-parse.h gas/config/rx-parse.c + rm gas/config/rx-parse.h gas/itbl-parse.c + rm gas/itbl-parse.h gold/yyscript.c + rm gold/yyscript.h intl/plural.c + rm ld/deffilep.c ld/deffilep.h + rm ld/ldgram.c ld/ldgram.h + + # Rebuild flex generated files + touch -- */*.l */*/*.l + rm binutils/arlex.c binutils/deflex.c binutils/syslex.c + rm gas/config/bfin-lex.c gas/config/loongarch-lex.c gas/itbl-lex.c + rm ld/ldlex.c + + # Remove prebuilt texinfo files + find . -type f -name '*.info*' \ + -not -wholename './binutils/sysroff.info' \ + -delete + + # Remove pregenerated opcodes files + rm opcodes/i386-init.h opcodes/i386-tbl.h opcodes/i386-mnem.h + rm opcodes/ia64-asmtab.c + rm opcodes/z8k-opc.h + rm opcodes/aarch64-asm-2.c opcodes/aarch64-opc-2.c opcodes/aarch64-dis-2.c + rm $(grep -l 'MACHINE GENERATED' opcodes/*.c opcodes/*.h) + + rm libiberty/functions.texi + + # Regenerate MeP sections + ./bfd/mep-relocs.pl + + # Manpages + find . -type f \( -name '*.1' -or -name '*.man' \) -delete +} + +src_configure() { + for dir in intl libctf libiberty libsframe opcodes bfd binutils gas gprof ld; do + cd $dir + + ./configure \ + --disable-nls \ + --enable-install-libiberty \ + --enable-deterministic-archives \ + --with-system-zlib \ + --build=i386-unknown-linux-musl \ + --host=i386-unknown-linux-musl \ + --target=i386-unknown-linux-musl \ + --program-prefix="" \ + --prefix="${PREFIX}" \ + --libdir="${LIBDIR}" \ + --with-sysroot= \ + --srcdir=. + cd .. + done +} + +src_compile() { + make -C bfd headers + for dir in libiberty libsframe bfd opcodes libctf binutils gas gprof ld; do + make "${MAKEJOBS}" -C $dir tooldir=${PREFIX} CFLAGS="-std=c99" + done +} + +src_install() { + for dir in libiberty bfd opcodes libctf libsframe binutils gas gprof ld; do + make -C $dir tooldir=${PREFIX} DESTDIR="${DESTDIR}" install + done + + # Create triplet symlinks + pushd "${DESTDIR}${PREFIX}/bin" + for f in *; do + ln -s "${PREFIX}/bin/${f}" "i386-unknown-linux-musl-${f}" + done + popd + + # FIXME: Binutils' manpages dates are not reproducible + rm -r "${DESTDIR}${PREFIX}/share/man" +} diff --git a/steps/binutils-2.41/pass2.sh b/steps/binutils-2.41/pass2.sh @@ -0,0 +1,127 @@ +# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> +# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu> +# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com> +# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> +# +# SPDX-License-Identifier: GPL-3.0-or-later + +src_prepare() { + default + + # Remove unused generated files + rm etc/Makefile.in etc/configure + rm zlib/aclocal.m4 zlib/configure + + # Regenerate top-level (autogen + autotools) + autogen Makefile.def + ACLOCAL=aclocal-1.15 autoreconf-2.69 -fi + + # Regenerate autoconf + for dir in bfd binutils gas gold gprof gprofng intl ld libctf libiberty libsframe opcodes; do + cd $dir + ACLOCAL=aclocal-1.15 AUTOMAKE=automake-1.15 autoreconf-2.69 -fi + cd .. + done + + # Regenerate directories with Makefile.am only + pushd gold + automake-1.15 -fai testsuite/Makefile + popd + pushd gprofng + automake-1.15 -fai doc/Makefile + automake-1.15 -fai gp-display-html/Makefile + automake-1.15 -fai src/Makefile + popd + + # intl/ Makefile is a bit broken because of new gettext + sed -i 's/@USE_INCLUDED_LIBINTL@/no/' intl/Makefile.in + + # There is no way to add -all-static to libtool LDFLAGS (such a thing doesn't exist) + # -all-static is required for static binaries with libtool + sed -i 's:\(--mode=link $(CCLD)\):\1 -all-static:' {bfd,binutils,opcodes,ld,libctf,gas,gprof}/Makefile.in + + # Rebuild bison files + touch -- */*.y + rm binutils/arparse.c binutils/arparse.h + rm binutils/defparse.c binutils/defparse.h + rm binutils/mcparse.c binutils/mcparse.h + rm binutils/rcparse.c binutils/rcparse.h + rm binutils/sysinfo.c binutils/sysinfo.h + rm gas/config/bfin-parse.c gas/config/bfin-parse.h + rm gas/config/loongarch-parse.c gas/config/loongarch-parse.h + rm gas/config/m68k-parse.c gas/config/rl78-parse.c + rm gas/config/rl78-parse.h gas/config/rx-parse.c + rm gas/config/rx-parse.h gas/itbl-parse.c + rm gas/itbl-parse.h gold/yyscript.c + rm gold/yyscript.h intl/plural.c + rm ld/deffilep.c ld/deffilep.h + rm ld/ldgram.c ld/ldgram.h + + # Rebuild flex generated files + touch -- */*.l */*/*.l + rm binutils/arlex.c binutils/deflex.c binutils/syslex.c + rm gas/config/bfin-lex.c gas/config/loongarch-lex.c gas/itbl-lex.c + rm ld/ldlex.c + + # Remove prebuilt texinfo files + find . -type f -name '*.info*' \ + -not -wholename './binutils/sysroff.info' \ + -delete + + # Remove pregenerated opcodes files + rm opcodes/i386-init.h opcodes/i386-tbl.h opcodes/i386-mnem.h + rm opcodes/ia64-asmtab.c + rm opcodes/z8k-opc.h + rm opcodes/aarch64-asm-2.c opcodes/aarch64-opc-2.c opcodes/aarch64-dis-2.c + rm $(grep -l 'MACHINE GENERATED' opcodes/*.c opcodes/*.h) + + rm libiberty/functions.texi + + # Regenerate MeP sections + ./bfd/mep-relocs.pl + + # Manpages + find . -type f \( -name '*.1' -or -name '*.man' \) -delete +} + +src_configure() { + mkdir build + cd build + + LDFLAGS="-static" \ + ../configure \ + --prefix="${PREFIX}" \ + --libdir="${LIBDIR}" \ + --build=i386-unknown-linux-musl \ + --host=i386-unknown-linux-musl \ + --target=i386-unknown-linux-musl \ + --enable-static \ + --disable-nls \ + --disable-multilib \ + --disable-plugins \ + --disable-gprofng \ + --enable-threads \ + --enable-64-bit-bfd \ + --enable-gold \ + --enable-ld=default \ + --enable-install-libiberty \ + --enable-deterministic-archives \ + --with-system-zlib \ + --program-prefix="" \ + --with-sysroot= \ + --srcdir=.. +} + +src_install() { + default + + # Create triplet symlinks + pushd "${DESTDIR}${PREFIX}/bin" + for f in *; do + ln -s "${PREFIX}/bin/${f}" "i386-unknown-linux-musl-${f}" + done + popd + + # FIXME: Binutils' manpages dates are not reproducible + rm -r "${DESTDIR}${PREFIX}/share/man" +} diff --git a/steps/binutils-2.38/patches/new-gettext.patch b/steps/binutils-2.41/patches/new-gettext.patch diff --git a/steps/binutils-2.41/patches/no-maint-functions-texi.patch b/steps/binutils-2.41/patches/no-maint-functions-texi.patch @@ -0,0 +1,26 @@ +SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> + +SPDX-License-Identifier: GPL-3.0-or-later + +Ensure functions.texi dependencies are satisfied. + +--- libiberty/Makefile.in 2023-12-08 15:18:57.985791235 +1100 ++++ libiberty/Makefile.in 2023-12-08 15:19:15.391252344 +1100 +@@ -368,12 +368,12 @@ + libiberty.html : $(srcdir)/libiberty.texi $(TEXISRC) + $(MAKEINFO) --no-split --html -I$(srcdir) -o $@ $< + +-@MAINT@$(srcdir)/functions.texi : stamp-functions +-@MAINT@ @true ++$(srcdir)/functions.texi : stamp-functions ++ @true + +-@MAINT@stamp-functions : $(CFILES:%=$(srcdir)/%) $(TEXIFILES:%=$(srcdir)/%) $(srcdir)/gather-docs Makefile +-@MAINT@@HAVE_PERL@ $(PERL) $(srcdir)/gather-docs $(srcdir) $(srcdir)/functions.texi $(CFILES) $(TEXIFILES) +-@MAINT@ echo stamp > stamp-functions ++stamp-functions : $(CFILES:%=$(srcdir)/%) $(TEXIFILES:%=$(srcdir)/%) $(srcdir)/gather-docs Makefile ++@HAVE_PERL@ $(PERL) $(srcdir)/gather-docs $(srcdir) $(srcdir)/functions.texi $(CFILES) $(TEXIFILES) ++ echo stamp > stamp-functions + + INSTALL_DEST = @INSTALL_DEST@ + install: install_to_$(INSTALL_DEST) install-subdir diff --git a/steps/binutils-2.41/patches/no-maint-opcodes.patch b/steps/binutils-2.41/patches/no-maint-opcodes.patch @@ -0,0 +1,18 @@ +SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com> +SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space> + +SPDX-License-Identifier: GPL-3.0-or-later + +Ensure i386-tbl.h dependencies are satisfied. + +--- opcodes/Makefile.am 2023-12-08 17:13:05.669136957 +1100 ++++ opcodes/Makefile.am 2023-12-08 17:13:18.410480026 +1100 +@@ -540,7 +540,7 @@ + # i386-gen will generate all headers in one go. Use a pattern rule to properly + # express this, with the inner dash ('-') arbitrarily chosen to be the stem. + $(srcdir)/i386%tbl.h $(srcdir)/i386%init.h $(srcdir)/i386%mnem.h: \ +- @MAINT@ i386-gen$(EXEEXT_FOR_BUILD) i386-opc.tbl i386-reg.tbl i386-opc.h ++ i386-gen$(EXEEXT_FOR_BUILD) i386-opc.tbl i386-reg.tbl i386-opc.h + $(AM_V_GEN)$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) - \ + < $(srcdir)/i386-opc.tbl \ + | ./i386-gen$(EXEEXT_FOR_BUILD) --srcdir $(srcdir) diff --git a/steps/binutils-2.41/sources b/steps/binutils-2.41/sources @@ -0,0 +1 @@ +https://mirrors.kernel.org/gnu/binutils/binutils-2.41.tar.xz ae9a5789e23459e59606e6714723f2d3ffc31c03174191ef0d015bdf06007450 diff --git a/steps/manifest b/steps/manifest @@ -144,7 +144,7 @@ build: patch-2.7.6 build: gettext-0.21 build: texinfo-6.7 build: gcc-4.7.4 -build: binutils-2.38 +build: binutils-2.41 build: gperf-3.1 build: libunistring-0.9.10 build: libffi-3.3 @@ -168,6 +168,6 @@ build: python-3.4.10 build: python-3.8.16 build: python-3.11.1 build: gcc-10.4.0 -build: binutils-2.38 +build: binutils-2.41 build: gcc-13.1.0 improve: null_time ( FORCE_TIMESTAMPS == True )