diff --git a/parts.rst b/parts.rst index c1f9224..9cf26ae 100644 --- a/parts.rst +++ b/parts.rst @@ -536,6 +536,10 @@ compiler for most projects related to GNU and the Linux kernel. Only the C frontend is built at this stage. +At this stage we are not yet able to regenerate top-level ``Makefile.in`` +which needs GNU Autogen and hence Guile. Luckily, building GCC without +top-level ``Makefile`` is fairly easy. + musl 1.2.2 ========== diff --git a/sysa/bash-5.1/checksums b/sysa/bash-5.1/checksums index 5b2109c..89e966c 100644 --- a/sysa/bash-5.1/checksums +++ b/sysa/bash-5.1/checksums @@ -1 +1 @@ -42d8035dd5e893be2dabcaee3064e13b9d993efae5383bedececa9a7ef172ff0 /after/bin/bash +bf782a82ac8ce393d2a028cec337a4f9428f8ab93d2ae11b026dcc8a027b80a7 /after/bin/bash diff --git a/sysa/gcc-4.0.4/checksums/pass1 b/sysa/gcc-4.0.4/checksums/pass1 index 7c6b1e1..378d59f 100644 --- a/sysa/gcc-4.0.4/checksums/pass1 +++ b/sysa/gcc-4.0.4/checksums/pass1 @@ -1,14 +1,13 @@ -6ca1ff5a1dd835e2378a8d827c5ec8a68121c7b5c719ab56f71f9d717b8e007e /after/bin/cpp -236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/gcc -236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/i386-unknown-linux-gnu-gcc -236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4 -903b1dae32b217048b1a35a934836496027e6947b77f5711cb8714cd5241dda0 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1 -711689a618e34a0cff2c6061e554f9a2f9d447a7623bd46ba11c2eb816932883 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2 -a3fbed284b1efaf6fccfc81eddd9bad8c4cf07673b16e8885ad6f31a1569c9b4 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/fixincl -f2c7e7bf5377e10927c5d243eaa9eb3ae9bed7aab393621831673b368ebae00f /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o -c76e19409c9344a10213e0abb18481aae6416342db4971fb99a116a91fb164da /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o -f2c7e7bf5377e10927c5d243eaa9eb3ae9bed7aab393621831673b368ebae00f /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o +dab0ba7d7f68cc03646b367619c3be4ebf16c39fb217a105019d5162df42947f /after/bin/cpp +773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/gcc +773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/i386-unknown-linux-gnu-gcc +773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4 +df9f52d38e64514296964c5fbcd8ce2aba011d6ff47f15b6fd9158aed193dbcf /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1 +9b8dc5d577de150dcb61150086481d2205aed982344cf059d51c8dc88c5ba9a4 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2 +de4566c661258fa626ea7076e6c57af95c01d0786bcdadb12af23852cc421a2a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o +c7eea5e845fe2ee5538704d59c6e777d4f72b7100e78d5f86f8d95d96ab2ec20 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o +de4566c661258fa626ea7076e6c57af95c01d0786bcdadb12af23852cc421a2a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o 342276a6ad25e3d064bba9c5d50fbeaae15d0aefdc5c72b1e796366189af1b1b /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtend.o 2bf001e0be96ea7c53adf35b1bf0a677eee02008e3aee6c30166d100b720687c /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtendS.o -e3c2b3754058829d79b42a4968f3a3dda6e289b51b4b3580f4ccbc64ff473a26 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcc.a -fc093c2bcf6473237c1187fc93b60e5d353bf710958d7151283c96074af0a899 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcov.a +7b416e87b8e5998c042b64b4b87499720895c17deeffc0bc1b79f6fac502d51b /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcc.a +efc9783c7386519ef7d5bfe7fadf16d4b6b717deb18dd04e09d810354f015942 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcov.a diff --git a/sysa/gcc-4.0.4/checksums/pass2 b/sysa/gcc-4.0.4/checksums/pass2 index 8495d4a..9942227 100644 --- a/sysa/gcc-4.0.4/checksums/pass2 +++ b/sysa/gcc-4.0.4/checksums/pass2 @@ -1,14 +1,13 @@ -88dbe31603504b89ced21ceb5d7205f20c9473a6df814bb80f2b28ddebc977c5 /after/bin/cpp -2b909307bd6b0bf7fed4363122948561da6518acfd74b809c3ab7ede2da8fcfb /after/bin/gcc -2b909307bd6b0bf7fed4363122948561da6518acfd74b809c3ab7ede2da8fcfb /after/bin/i386-unknown-linux-gnu-gcc -2b909307bd6b0bf7fed4363122948561da6518acfd74b809c3ab7ede2da8fcfb /after/bin/i386-unknown-linux-gnu-gcc-4.0.4 -7fda283cdddc9ecb96aa64eee6ba70a95b5547e47537934ec3a98a7f9846b563 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1 -289a9da62408356b8d21472497fd26b9021e27b9bc7834b969d11791eba4fd58 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2 -8c8c0c1781c361a5e585811c3712ae8d052c6d2bb1d18328c50329b74e712144 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/fixincl -282f0f0d79a9f1559f700db14f8a360194e1e8ab522ecad91aa29d10ea1bfb1a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o -693e3dc5d35724960692e3e81280bad9e21de68f3884e52b86e874d20baf8151 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o -282f0f0d79a9f1559f700db14f8a360194e1e8ab522ecad91aa29d10ea1bfb1a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o +49099736ba74bd065e8767ed1ae5e9eaff93993ada8a9106ea38fb1d46fb9c65 /after/bin/cpp +87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/gcc +87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/i386-unknown-linux-gnu-gcc +87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4 +f853f77a4f040eee8cda44d5b96e751e58874ac814118848994785df2e9f7490 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1 +29c521d36c748731b4fa2afca2a9d94565da795312d51cf5f1032f3397537514 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2 +a07db1648128987f10debb1730b4456c0423aab5bd93d68e4f2b47447a11c5d9 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o +20a3bbbd5cd59b91660628d416d489437463b651fa15b5ea5f026b45c9e35b65 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o +a07db1648128987f10debb1730b4456c0423aab5bd93d68e4f2b47447a11c5d9 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o 342276a6ad25e3d064bba9c5d50fbeaae15d0aefdc5c72b1e796366189af1b1b /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtend.o 2bf001e0be96ea7c53adf35b1bf0a677eee02008e3aee6c30166d100b720687c /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtendS.o -e1789e68464c8c04e77180f8a5dc5855aa6b488a8b11526c77f70d89453122e4 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcc.a -3332fba4918963e196c701e00cc68ea28c5b00b4da0bd01ace911f0441c4932c /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcov.a +5d3c8a9b80e4e34dfb70a56d6e23a05e01d2ecdbf60232a1b053462d4a98e99e /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcc.a +f8c3b07e0f98b7f34ac0960d98f3b59ee0f47c42e72c529d10d66dccdc9b5d46 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/libgcov.a diff --git a/sysa/gcc-4.0.4/pass1.sh b/sysa/gcc-4.0.4/pass1.sh index f365cb5..d107a7c 100755 --- a/sysa/gcc-4.0.4/pass1.sh +++ b/sysa/gcc-4.0.4/pass1.sh @@ -14,8 +14,10 @@ src_prepare() { # Needed for musl sed -i 's/struct siginfo/siginfo_t/' gcc/config/i386/linux-unwind.h - rm configure - autoconf-2.13 + # Regenerating top level Makefile requires GNU Autogen and hence Guile, + # but it is not essential for building gcc. + rm configure Makefile.in fixincludes/fixincl.x + for dir in intl libcpp; do cd $dir rm aclocal.m4 @@ -61,14 +63,20 @@ src_prepare() { src_configure() { mkdir build cd build - CC=tcc CFLAGS="-D HAVE_ALLOCA_H" ../configure \ - --prefix="${PREFIX}" \ - --libdir="${PREFIX}"/lib/musl \ - --build=i386-unknown-linux-gnu \ - --host=i386-unknown-linux-gnu \ - --disable-shared \ - --disable-nls \ - --disable-libmudflap + + for dir in libiberty libcpp gcc; do + mkdir $dir + cd $dir + CC=tcc CFLAGS="-D HAVE_ALLOCA_H" ../../$dir/configure \ + --prefix="${PREFIX}" \ + --libdir="${PREFIX}"/lib/musl \ + --build=i386-unknown-linux-gnu \ + --target=i386-unknown-linux-gnu \ + --host=i386-unknown-linux-gnu \ + --disable-shared \ + --program-transform-name= + cd .. + done cd .. sed -i 's/C_alloca/alloca/g' libiberty/alloca.c @@ -76,13 +84,13 @@ src_configure() { } src_compile() { - mkdir -p /usr/ - ln -sf "${PREFIX}"/include /usr/include - ln -sf /usr/include/limits.h /usr/include/sys/limits.h - - make -C build LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" + ln -s . build/build-i386-unknown-linux-gnu + for dir in libiberty libcpp gcc; do + make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" STMP_FIXINC= + done } src_install() { - make -C build install + mkdir -p "${PREFIX}/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/include" + make -C build/gcc install STMP_FIXINC= } diff --git a/sysa/gcc-4.0.4/pass2.sh b/sysa/gcc-4.0.4/pass2.sh index 7587975..9414cb3 100755 --- a/sysa/gcc-4.0.4/pass2.sh +++ b/sysa/gcc-4.0.4/pass2.sh @@ -13,8 +13,10 @@ src_prepare() { # Needed for musl sed -i 's/struct siginfo/siginfo_t/' gcc/config/i386/linux-unwind.h - rm configure - autoconf-2.13 + # Regenerating top level Makefile requires GNU Autogen and hence Guile, + # but it is not essential for building gcc. + rm configure Makefile.in fixincludes/fixincl.x + for dir in intl libcpp; do cd $dir rm aclocal.m4 @@ -60,23 +62,30 @@ src_prepare() { src_configure() { mkdir build cd build - ../configure \ - --prefix="${PREFIX}" \ - --libdir="${PREFIX}"/lib/musl \ - --build=i386-unknown-linux-gnu \ - --host=i386-unknown-linux-gnu \ - --disable-shared \ - --disable-nls \ - --disable-libmudflap + + for dir in libiberty libcpp gcc; do + mkdir $dir + cd $dir + ../../$dir/configure \ + --prefix="${PREFIX}" \ + --libdir="${PREFIX}"/lib/musl \ + --build=i386-unknown-linux-gnu \ + --target=i386-unknown-linux-gnu \ + --host=i386-unknown-linux-gnu \ + --disable-shared \ + --program-transform-name= + cd .. + done cd .. } src_compile() { - mkdir -p /usr/ - ln -sf "${PREFIX}"/include /usr/include - make -C build LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" + ln -s . build/build-i386-unknown-linux-gnu + for dir in libiberty libcpp gcc; do + make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" STMP_FIXINC= + done } src_install() { - make -C build install + make -C build/gcc install STMP_FIXINC= }