From 020e1aa54bec5f077b47dda355eed837c24467e6 Mon Sep 17 00:00:00 2001 From: Isaac Freund Date: Thu, 11 Nov 2021 11:24:26 +0100 Subject: [PATCH] build-styles: add zig-build We call this "zig-build" instead of just "zig" as this build-style relies on usage of the zig build system. In the future, other build systems such as meson may support zig code. Furthermore, the zig build system may be used to build C/C++ code as well, not just zig. --- Manual.md | 4 +++ common/build-profiles/README | 2 ++ common/build-profiles/aarch64-musl.sh | 2 ++ common/build-profiles/aarch64.sh | 2 ++ common/build-profiles/armv6l-musl.sh | 2 ++ common/build-profiles/armv6l.sh | 2 ++ common/build-profiles/armv7l-musl.sh | 2 ++ common/build-profiles/armv7l.sh | 2 ++ common/build-profiles/i686-musl.sh | 2 ++ common/build-profiles/i686.sh | 2 ++ common/build-profiles/ppc-musl.sh | 2 ++ common/build-profiles/ppc.sh | 2 ++ common/build-profiles/ppc64-musl.sh | 2 ++ common/build-profiles/ppc64.sh | 2 ++ common/build-profiles/ppc64le-musl.sh | 2 ++ common/build-profiles/ppc64le.sh | 2 ++ common/build-profiles/ppcle-musl.sh | 2 ++ common/build-profiles/ppcle.sh | 2 ++ common/build-profiles/x86_64-musl.sh | 2 ++ common/build-profiles/x86_64.sh | 2 ++ common/build-style/zig-build.sh | 41 ++++++++++++++++++++++++++ common/cross-profiles/README | 2 ++ common/cross-profiles/aarch64-musl.sh | 2 ++ common/cross-profiles/aarch64.sh | 2 ++ common/cross-profiles/armv5tel-musl.sh | 2 ++ common/cross-profiles/armv5tel.sh | 2 ++ common/cross-profiles/armv6l-musl.sh | 2 ++ common/cross-profiles/armv6l.sh | 2 ++ common/cross-profiles/armv7l-musl.sh | 2 ++ common/cross-profiles/armv7l.sh | 2 ++ common/cross-profiles/i686-musl.sh | 2 ++ common/cross-profiles/i686.sh | 2 ++ common/cross-profiles/mips-musl.sh | 2 ++ common/cross-profiles/mipsel-musl.sh | 2 ++ common/cross-profiles/mipselhf-musl.sh | 2 ++ common/cross-profiles/mipshf-musl.sh | 2 ++ common/cross-profiles/ppc-musl.sh | 2 ++ common/cross-profiles/ppc.sh | 2 ++ common/cross-profiles/ppc64-musl.sh | 2 ++ common/cross-profiles/ppc64.sh | 2 ++ common/cross-profiles/ppc64le-musl.sh | 2 ++ common/cross-profiles/ppc64le.sh | 2 ++ common/cross-profiles/ppcle-musl.sh | 2 ++ common/cross-profiles/ppcle.sh | 2 ++ common/cross-profiles/x86_64-musl.sh | 2 ++ common/cross-profiles/x86_64.sh | 2 ++ 46 files changed, 133 insertions(+) create mode 100644 common/build-style/zig-build.sh diff --git a/Manual.md b/Manual.md index 5996e150288..b0afd6db159 100644 --- a/Manual.md +++ b/Manual.md @@ -998,6 +998,10 @@ configure arguments can be specified via `cross_*_configure_args` where `*` is ` additionally passed to both early and final `gcc`. You can also specify custom `CFLAGS` and `LDFLAGS` for the libc as `cross_(glibc|musl)_(cflags|ldflags)`. +- `zig-build` For packages using [Zig](https://ziglang.org)'s build +system. Additional arguments may be passed to the `zig build` invocation using +`configure_args`. + For packages that use the Python module build method (`setup.py` or [PEP 517](https://www.python.org/dev/peps/pep-0517/)), you can choose one of the following: diff --git a/common/build-profiles/README b/common/build-profiles/README index e4457c16f22..41b18fc1174 100644 --- a/common/build-profiles/README +++ b/common/build-profiles/README @@ -9,6 +9,8 @@ for a specific architecture: - XBPS_CXXFLAGS (C++ compiler flags for the host compiler) - XBPS_FFLAGS (Fortran compiler flags for the host compiler) - XBPS_RUST_TARGET (the compiler triplet for usage by cargo) + - XBPS_ZIG_TARGET (the arch-os-abi target triplet for zig) + - XBPS_ZIG_CPU (the cpu/feature set for zig) These properties are also set in a cross environment, but the compiler flags are not added into the global flags. XBPS_RUST_TARGET is also diff --git a/common/build-profiles/aarch64-musl.sh b/common/build-profiles/aarch64-musl.sh index 76249d0b75c..8427d0478a9 100644 --- a/common/build-profiles/aarch64-musl.sh +++ b/common/build-profiles/aarch64-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="aarch64-unknown-linux-musl" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="aarch64-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/aarch64.sh b/common/build-profiles/aarch64.sh index ccf7d5af3d5..59855dfc0c8 100644 --- a/common/build-profiles/aarch64.sh +++ b/common/build-profiles/aarch64.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="aarch64-unknown-linux-gnu" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="aarch64-linux-gnu" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/armv6l-musl.sh b/common/build-profiles/armv6l-musl.sh index 172e56e81a8..b46941a3997 100644 --- a/common/build-profiles/armv6l-musl.sh +++ b/common/build-profiles/armv6l-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="armv6l-linux-musleabihf" XBPS_RUST_TARGET="arm-unknown-linux-musleabihf" +XBPS_ZIG_TARGET="arm-linux-musleabihf" +XBPS_ZIG_CPU="generic+v6" diff --git a/common/build-profiles/armv6l.sh b/common/build-profiles/armv6l.sh index d84b6bdb2cc..3b182234cb6 100644 --- a/common/build-profiles/armv6l.sh +++ b/common/build-profiles/armv6l.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="armv6l-unknown-linux-gnueabihf" XBPS_RUST_TARGET="arm-unknown-linux-gnueabihf" +XBPS_ZIG_TARGET="arm-linux-gnueabihf" +XBPS_ZIG_CPU="generic+v6" diff --git a/common/build-profiles/armv7l-musl.sh b/common/build-profiles/armv7l-musl.sh index f81ad699e07..dbf3eb0d5b9 100644 --- a/common/build-profiles/armv7l-musl.sh +++ b/common/build-profiles/armv7l-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_CXXFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="armv7l-linux-musleabihf" XBPS_RUST_TARGET="armv7-unknown-linux-musleabihf" +XBPS_ZIG_TARGET="arm-linux-musleabihf" +XBPS_ZIG_CPU="generic+v7a+vfp3" diff --git a/common/build-profiles/armv7l.sh b/common/build-profiles/armv7l.sh index a100e410f9a..141639b132b 100644 --- a/common/build-profiles/armv7l.sh +++ b/common/build-profiles/armv7l.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="armv7l-unknown-linux-gnueabihf" XBPS_RUST_TARGET="armv7-unknown-linux-gnueabihf" +XBPS_CROSS_ZIG_TARGET="arm-linux-gnueabihf" +XBPS_CROSS_ZIG_CPU="generic+v7a+vfp3" diff --git a/common/build-profiles/i686-musl.sh b/common/build-profiles/i686-musl.sh index e76ab89d6ae..a607ef619e7 100644 --- a/common/build-profiles/i686-musl.sh +++ b/common/build-profiles/i686-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="i686-linux-musl" XBPS_RUST_TARGET="i686-unknown-linux-musl" +XBPS_ZIG_TARGET="i686-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/i686.sh b/common/build-profiles/i686.sh index 036a91b2b92..ac69fb0c519 100644 --- a/common/build-profiles/i686.sh +++ b/common/build-profiles/i686.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="i686-pc-linux-gnu" XBPS_RUST_TARGET="i686-unknown-linux-gnu" +XBPS_ZIG_TARGET="i386-linux-gnu" +XBPS_ZIG_CPU="_i686+sse2" diff --git a/common/build-profiles/ppc-musl.sh b/common/build-profiles/ppc-musl.sh index 17296432e97..60b2e700270 100644 --- a/common/build-profiles/ppc-musl.sh +++ b/common/build-profiles/ppc-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc-linux-musl" XBPS_RUST_TARGET="powerpc-unknown-linux-musl" +XBPS_ZIG_TARGET="powerpc-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/ppc.sh b/common/build-profiles/ppc.sh index f7ec35b69a6..b7a11313979 100644 --- a/common/build-profiles/ppc.sh +++ b/common/build-profiles/ppc.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc-linux-gnu" XBPS_RUST_TARGET="powerpc-unknown-linux-gnu" +XBPS_ZIG_TARGET="powerpc-linux-gnu" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/ppc64-musl.sh b/common/build-profiles/ppc64-musl.sh index 53c5ea6fb3f..4ec7430b39a 100644 --- a/common/build-profiles/ppc64-musl.sh +++ b/common/build-profiles/ppc64-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc64-unknown-linux-musl" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="powerpc64-linux-musl" +XBPS_ZIG_CPU="970" diff --git a/common/build-profiles/ppc64.sh b/common/build-profiles/ppc64.sh index aa9af966ea7..1d0c04ae374 100644 --- a/common/build-profiles/ppc64.sh +++ b/common/build-profiles/ppc64.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc64-unknown-linux-gnu" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="powerpc64-linux-gnu" +XBPS_ZIG_CPU="970" diff --git a/common/build-profiles/ppc64le-musl.sh b/common/build-profiles/ppc64le-musl.sh index cb9423f9974..8d2db1b2b51 100644 --- a/common/build-profiles/ppc64le-musl.sh +++ b/common/build-profiles/ppc64le-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc64le-unknown-linux-musl" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="powerpc64le-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/ppc64le.sh b/common/build-profiles/ppc64le.sh index c91ea054789..8f0e735f873 100644 --- a/common/build-profiles/ppc64le.sh +++ b/common/build-profiles/ppc64le.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpc64le-unknown-linux-gnu" XBPS_RUST_TARGET="$XBPS_TRIPLET" +XBPS_ZIG_TARGET="powerpc64le-linux-gnu" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/ppcle-musl.sh b/common/build-profiles/ppcle-musl.sh index 7585c4f6919..c8d7e28e483 100644 --- a/common/build-profiles/ppcle-musl.sh +++ b/common/build-profiles/ppcle-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpcle-linux-musl" XBPS_RUST_TARGET="powerpcle-unknown-linux-musl" +XBPS_ZIG_TARGET="powerpcle-linux-musl" +XBPS_ZIG_CPU="pwr8" diff --git a/common/build-profiles/ppcle.sh b/common/build-profiles/ppcle.sh index 0cdc6cc853c..7eccadf4ed2 100644 --- a/common/build-profiles/ppcle.sh +++ b/common/build-profiles/ppcle.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="powerpcle-linux-gnu" XBPS_RUST_TARGET="powerpcle-unknown-linux-gnu" +XBPS_ZIG_TARGET="powerpcle-linux-gnu" +XBPS_ZIG_CPU="pwr8" diff --git a/common/build-profiles/x86_64-musl.sh b/common/build-profiles/x86_64-musl.sh index b0bbb30bd16..538baea0b61 100644 --- a/common/build-profiles/x86_64-musl.sh +++ b/common/build-profiles/x86_64-musl.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="x86_64-unknown-linux-musl" XBPS_RUST_TARGET="${XBPS_TRIPLET}" +XBPS_ZIG_TARGET="x86_64-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-profiles/x86_64.sh b/common/build-profiles/x86_64.sh index a53f4aafdac..388b5561a6d 100644 --- a/common/build-profiles/x86_64.sh +++ b/common/build-profiles/x86_64.sh @@ -3,3 +3,5 @@ XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS" XBPS_TRIPLET="x86_64-unknown-linux-gnu" XBPS_RUST_TARGET="${XBPS_TRIPLET}" +XBPS_ZIG_TARGET="x86_64-linux-gnu" +XBPS_ZIG_CPU="baseline" diff --git a/common/build-style/zig-build.sh b/common/build-style/zig-build.sh new file mode 100644 index 00000000000..205c4cadf53 --- /dev/null +++ b/common/build-style/zig-build.sh @@ -0,0 +1,41 @@ +do_build() { + local zig_target zig_cpu + + # TODO: This duplication between build-profiles and cross-profiles + # is totally unnecessary. It would be nice if there was some way to + # avoid it. + if [ "$CROSS_BUILD" ]; then + zig_target="${XBPS_CROSS_ZIG_TARGET}" + zig_cpu="${XBPS_CROSS_ZIG_CPU}" + else + zig_target="${XBPS_ZIG_TARGET}" + zig_cpu="${XBPS_ZIG_CPU}" + fi + + # Inform zig of the required libc include paths. + cat > xbps_zig_libc.txt <<-EOF + include_dir=${XBPS_CROSS_BASE}/usr/include + sys_include_dir=${XBPS_CROSS_BASE}/usr/include + crt_dir=${XBPS_CROSS_BASE}/usr/lib + msvc_lib_dir= + kernel32_lib_dir= + gcc_dir= + EOF + + # The Zig build system only has a single install step, there is no + # way to build artifacts for a given prefix and then install those artifacts + # to that prefix at some later time. Therefore, we build and install to the zig-out + # directory and later copy the artifacts to the destdir in do_install(). + # We use zig-out to avoid path conflicts as it is the default install + # prefix used by the zig build system. + DESTDIR="zig-out" zig build \ + --sysroot "${XBPS_CROSS_BASE}" \ + --libc xbps_zig_libc.txt \ + -Dtarget="${zig_target}" -Dcpu="${zig_cpu}" \ + -Drelease-safe --prefix /usr install \ + ${configure_args} +} + +do_install() { + cp -r zig-out/* "${DESTDIR}" +} diff --git a/common/cross-profiles/README b/common/cross-profiles/README index 2a2a1d4b423..f2300b5d5a9 100644 --- a/common/cross-profiles/README +++ b/common/cross-profiles/README @@ -13,5 +13,7 @@ A cross profile file must provide the following variables: - XBPS_CROSS_LDFLAGS (Linker flags for the cross compiler) - XBPS_CROSS_RUST_TARGET (the rust triplet for the rust cross compiler) - XBPS_CROSS_RUSTFLAGS (rust compiler flags for the cross compiler) + - XBPS_CROSS_ZIG_TARGET (the arch-os-abi target triplet for zig) + - XBPS_CROSS_ZIG_CPU (the cpu/feature set for zig) A source package matching `cross-${XBPS_CROSS_TRIPLET}' must also exist. diff --git a/common/cross-profiles/aarch64-musl.sh b/common/cross-profiles/aarch64-musl.sh index 56ce2d32964..892abba9ef3 100644 --- a/common/cross-profiles/aarch64-musl.sh +++ b/common/cross-profiles/aarch64-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="aarch64-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="aarch64-linux-musl" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/aarch64.sh b/common/cross-profiles/aarch64.sh index 068870a3158..7a99e6fc72c 100644 --- a/common/cross-profiles/aarch64.sh +++ b/common/cross-profiles/aarch64.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="aarch64-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="aarch64-linux-gnu" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/armv5tel-musl.sh b/common/cross-profiles/armv5tel-musl.sh index 3894f0c8731..0eb813a54d6 100644 --- a/common/cross-profiles/armv5tel-musl.sh +++ b/common/cross-profiles/armv5tel-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="arm-unknown-linux-musleabi" +XBPS_CROSS_ZIG_TARGET="arm-linux-musleabi" +XBPS_CROSS_ZIG_CPU="generic+v5te+soft_float" diff --git a/common/cross-profiles/armv5tel.sh b/common/cross-profiles/armv5tel.sh index d56c50a8006..f5828360f11 100644 --- a/common/cross-profiles/armv5tel.sh +++ b/common/cross-profiles/armv5tel.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="arm-unknown-linux-gnueabi" +XBPS_CROSS_ZIG_TARGET="arm-linux-gnueabi" +XBPS_CROSS_ZIG_CPU="generic+v5te+soft_float" diff --git a/common/cross-profiles/armv6l-musl.sh b/common/cross-profiles/armv6l-musl.sh index 58b67f85a97..5f32f9ba0ae 100644 --- a/common/cross-profiles/armv6l-musl.sh +++ b/common/cross-profiles/armv6l-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="arm-unknown-linux-musleabihf" +XBPS_CROSS_ZIG_TARGET="arm-linux-musleabihf" +XBPS_CROSS_ZIG_CPU="generic+v6" diff --git a/common/cross-profiles/armv6l.sh b/common/cross-profiles/armv6l.sh index b146eb87219..7040996ea1c 100644 --- a/common/cross-profiles/armv6l.sh +++ b/common/cross-profiles/armv6l.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="arm-unknown-linux-gnueabihf" +XBPS_CROSS_ZIG_TARGET="arm-linux-gnueabihf" +XBPS_CROSS_ZIG_CPU="generic+v6" diff --git a/common/cross-profiles/armv7l-musl.sh b/common/cross-profiles/armv7l-musl.sh index 93e3cc5b3d7..9a38832e0d7 100644 --- a/common/cross-profiles/armv7l-musl.sh +++ b/common/cross-profiles/armv7l-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="armv7-unknown-linux-musleabihf" +XBPS_CROSS_ZIG_TARGET="arm-linux-musleabihf" +XBPS_CROSS_ZIG_CPU="generic+v7a+vfp3" diff --git a/common/cross-profiles/armv7l.sh b/common/cross-profiles/armv7l.sh index 674165e238a..b8c9c41d35a 100644 --- a/common/cross-profiles/armv7l.sh +++ b/common/cross-profiles/armv7l.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="armv7-unknown-linux-gnueabihf" +XBPS_CROSS_ZIG_TARGET="arm-linux-gnueabihf" +XBPS_CROSS_ZIG_CPU="generic+v7a+vfp3" diff --git a/common/cross-profiles/i686-musl.sh b/common/cross-profiles/i686-musl.sh index fcb3d8ec4b4..c1cdf60f5eb 100644 --- a/common/cross-profiles/i686-musl.sh +++ b/common/cross-profiles/i686-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="i686-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="i686-linux-musl" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/i686.sh b/common/cross-profiles/i686.sh index 07ee8883707..16f44013ab7 100644 --- a/common/cross-profiles/i686.sh +++ b/common/cross-profiles/i686.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="i686-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="i386-linux-gnu" +XBPS_CROSS_ZIG_CPU="_i686+sse2" diff --git a/common/cross-profiles/mips-musl.sh b/common/cross-profiles/mips-musl.sh index f1d9fe2fd1a..7c44de7577e 100644 --- a/common/cross-profiles/mips-musl.sh +++ b/common/cross-profiles/mips-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="mips-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="mips-linux-musl" +XBPS_CROSS_ZIG_CPU="generic+soft_float" diff --git a/common/cross-profiles/mipsel-musl.sh b/common/cross-profiles/mipsel-musl.sh index 0d1117deb06..fa4390c98dc 100644 --- a/common/cross-profiles/mipsel-musl.sh +++ b/common/cross-profiles/mipsel-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="mipsel-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="mipsel-linux-musl" +XBPS_CROSS_ZIG_CPU="generic+soft_float" diff --git a/common/cross-profiles/mipselhf-musl.sh b/common/cross-profiles/mipselhf-musl.sh index 8587a88e6ca..49f4558ca2f 100644 --- a/common/cross-profiles/mipselhf-musl.sh +++ b/common/cross-profiles/mipselhf-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="mipsel-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="mipsel-linux-musl" +XBPS_CROSS_ZIG_CPU="generic" diff --git a/common/cross-profiles/mipshf-musl.sh b/common/cross-profiles/mipshf-musl.sh index 2914eaf19f8..513391b6284 100644 --- a/common/cross-profiles/mipshf-musl.sh +++ b/common/cross-profiles/mipshf-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="mips-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="mips-linux-musl" +XBPS_CROSS_ZIG_CPU="generic" diff --git a/common/cross-profiles/ppc-musl.sh b/common/cross-profiles/ppc-musl.sh index 631b1fb427e..327ae2341b9 100644 --- a/common/cross-profiles/ppc-musl.sh +++ b/common/cross-profiles/ppc-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc-unknown-linux-musl" +XBPS_ZIG_TARGET="powerpc-linux-musl" +XBPS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/ppc.sh b/common/cross-profiles/ppc.sh index 4647c62de2d..787f6bb2943 100644 --- a/common/cross-profiles/ppc.sh +++ b/common/cross-profiles/ppc.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc-unknown-linux-gnu" +XBPS_ZIG_TARGET="powerpc-linux-gnu" +XBPS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/ppc64-musl.sh b/common/cross-profiles/ppc64-musl.sh index 2cc74b352a1..c4b0f35e094 100644 --- a/common/cross-profiles/ppc64-musl.sh +++ b/common/cross-profiles/ppc64-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc64-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="powerpc64-linux-musl" +XBPS_CROSS_ZIG_CPU="970" diff --git a/common/cross-profiles/ppc64.sh b/common/cross-profiles/ppc64.sh index 4fedf210000..7ed5bc0d5f1 100644 --- a/common/cross-profiles/ppc64.sh +++ b/common/cross-profiles/ppc64.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc64-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="powerpc64-linux-gnu" +XBPS_CROSS_ZIG_CPU="970" diff --git a/common/cross-profiles/ppc64le-musl.sh b/common/cross-profiles/ppc64le-musl.sh index b08f78c91f3..df18c300ddb 100644 --- a/common/cross-profiles/ppc64le-musl.sh +++ b/common/cross-profiles/ppc64le-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc64le-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="powerpc64le-linux-musl" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/ppc64le.sh b/common/cross-profiles/ppc64le.sh index 88e8649a765..3fe7b2da47b 100644 --- a/common/cross-profiles/ppc64le.sh +++ b/common/cross-profiles/ppc64le.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpc64le-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="powerpc64le-linux-gnu" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/ppcle-musl.sh b/common/cross-profiles/ppcle-musl.sh index 2ba308f224d..48e27c04b90 100644 --- a/common/cross-profiles/ppcle-musl.sh +++ b/common/cross-profiles/ppcle-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpcle-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="powerpcle-linux-musl" +XBPS_CROSS_ZIG_CPU="pwr8" diff --git a/common/cross-profiles/ppcle.sh b/common/cross-profiles/ppcle.sh index 3e5230b194e..a5915823366 100644 --- a/common/cross-profiles/ppcle.sh +++ b/common/cross-profiles/ppcle.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="powerpcle-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="powerpcle-linux-gnu" +XBPS_CROSS_ZIG_CPU="pwr8" diff --git a/common/cross-profiles/x86_64-musl.sh b/common/cross-profiles/x86_64-musl.sh index a1c27c6f793..38642a07f8a 100644 --- a/common/cross-profiles/x86_64-musl.sh +++ b/common/cross-profiles/x86_64-musl.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="x86_64-unknown-linux-musl" +XBPS_CROSS_ZIG_TARGET="x86_64-linux-musl" +XBPS_CROSS_ZIG_CPU="baseline" diff --git a/common/cross-profiles/x86_64.sh b/common/cross-profiles/x86_64.sh index 360dd2068fc..bd966d0e01d 100644 --- a/common/cross-profiles/x86_64.sh +++ b/common/cross-profiles/x86_64.sh @@ -8,3 +8,5 @@ XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS" XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr" XBPS_CROSS_RUST_TARGET="x86_64-unknown-linux-gnu" +XBPS_CROSS_ZIG_TARGET="x86_64-linux-gnu" +XBPS_CROSS_ZIG_CPU="baseline"