From 7793830f26d6c0a772dc566b5eb694a3f609b214 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sun, 13 Oct 2024 14:27:15 -0700 Subject: [PATCH] feat: cross-x86_64-gnu toolchain w/ optional rust libstd --- .../Containerfile | 27 ++- .../glibc.patch | 0 packages/cross-x86_64-gnu/Containerfile | 168 ++++++++++++++++++ packages/glibc/Containerfile | 6 - packages/glibc/glibc-gcc | 2 - packages/glibc/glibc-gcc.specs | 32 ---- 6 files changed, 181 insertions(+), 54 deletions(-) rename packages/{rust-gnu => cross-x86_64-gnu-rust}/Containerfile (80%) rename packages/{rust-gnu => cross-x86_64-gnu-rust}/glibc.patch (100%) create mode 100644 packages/cross-x86_64-gnu/Containerfile delete mode 100755 packages/glibc/glibc-gcc delete mode 100644 packages/glibc/glibc-gcc.specs diff --git a/packages/rust-gnu/Containerfile b/packages/cross-x86_64-gnu-rust/Containerfile similarity index 80% rename from packages/rust-gnu/Containerfile rename to packages/cross-x86_64-gnu-rust/Containerfile index a797cb4..390136d 100644 --- a/packages/rust-gnu/Containerfile +++ b/packages/cross-x86_64-gnu-rust/Containerfile @@ -22,10 +22,10 @@ COPY --from=stagex/gcc . / COPY --from=stagex/libunwind . / COPY --from=stagex/musl . / COPY --from=stagex/rust . / -COPY --from=stagex/glibc . / COPY --from=stagex/curl . / COPY --from=stagex/ca-certificates . / COPY --from=stagex/llvm . / +COPY --from=stagex/cross-x86_64-gnu . / RUN tar -xzf rustc-${VERSION}-src.tar.gz WORKDIR rustc-${VERSION}-src @@ -46,30 +46,29 @@ RUN <> configparams @@ -69,9 +66,6 @@ RUN --network=none <<-EOF rmdir /rootfs/sbin ln -s ${ARCH}-linux-gnu/libc.so /rootfs/usr/lib/ld-gnu-${ARCH}.so.1 EOF -ADD glibc-gcc /rootfs/usr/bin/ -ADD glibc-gcc.specs /rootfs/usr/lib/${ARCH}-linux-gnu/glibc-gcc.specs -RUN ls -Rlah /rootfs FROM scratch AS package COPY --from=stagex/filesystem . / diff --git a/packages/glibc/glibc-gcc b/packages/glibc/glibc-gcc deleted file mode 100755 index 641070e..0000000 --- a/packages/glibc/glibc-gcc +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec "${REALGCC:-x86_64-linux-musl-gcc}" "$@" -specs "/usr/lib/x86_64-linux-gnu/glibc-gcc.specs" diff --git a/packages/glibc/glibc-gcc.specs b/packages/glibc/glibc-gcc.specs deleted file mode 100644 index 5dd6d5f..0000000 --- a/packages/glibc/glibc-gcc.specs +++ /dev/null @@ -1,32 +0,0 @@ -%rename cpp_options old_cpp_options - -*cpp_options: --nostdinc -isystem /usr/include/x86_64-linux-gnu -isystem include%s %(old_cpp_options) - -*cc1: -%(cc1_cpu) -nostdinc -isystem /usr/include/x86_64-linux-gnu -isystem include%s - -*link_libgcc: --L/usr/lib/x86_64-linux-gnu -L .%s - -*libgcc: -libgcc.a%s %:if-exists(libgcc_eh.a%s) - -*startfile: -%{!shared: /usr/lib/x86_64-linux-gnu/Scrt1.o} /usr/lib/x86_64-linux-gnu/crti.o crtbeginS.o%s - -*endfile: -crtendS.o%s /usr/lib/x86_64-linux-gnu/crtn.o - -*link: --dynamic-linker -nostdlib %{shared:-shared} %{static:-static} %{rdynamic:-export-dynamic} - -*esp_link: - - -*esp_options: - - -*esp_cpp_options: - -