package gcc { description = "The GNU Compiler Collection" website = "https://www.gnu.org/software/gcc" anitya = 6502 version# = "16.1.0" source = remoteTar { url = "https://ftp.tsukuba.wide.ad.jp/software/gcc/releases/"+ "gcc-"+version+"/gcc-"+version+".tar.gz" checksum = "4ASoWbxaA2FW7PAB0zzHDPC5XnNhyaAyjtDPpGzceSLeYnEIXsNYZR3PA_Zu5P0K" compress = gzip } patches = [ "musl-off64_t-loff_t.patch" "musl-legacy-lfs.patch" ] // GCC spends most of its time in its many configure scripts, however // it also saturates the CPU for a consequential amount of time. exclusive = true; exec = make { configure = { "disable-multilib" "enable-default-pie" "disable-nls" "with-gnu-as" "with-gnu-ld" "with-system-zlib" "enable-languages": "c,c++,go" "with-native-system-header-dir": "/system/include" "with-multilib-list": arch { amd64, arm64 = "''" default = unset } } make = [ "BOOT_CFLAGS='-O2 -g'" noop { key = value } + "\x00" "bootstrap" ] // This toolchain is hacked to pieces, it is not expected to ever work // well in its current state. That does not matter as long as the // toolchain it produces passes its own test suite. skip-check = true } inputs = [ binutils mpc zlib libucontext kernel-headers ] }