Files
RedBear-OS/local/recipes/dev/binutils-native/recipe.toml
T

57 lines
1.6 KiB
TOML

# Native GNU Binutils 2.43.1 for Red Bear OS
# Produces binutils that RUN on x86_64-unknown-redox and TARGET x86_64-unknown-redox.
# Built via cross-compilation from host using the existing cross-compiler in prefix/.
[source]
same_as = "../../../../recipes/dev/binutils-gdb"
[build]
template = "custom"
dependencies = [
"gcc13",
"gnu-binutils",
"libgmp",
"libmpfr",
]
script = """
DYNAMIC_INIT
# Use the cross-compiler to produce native redox binaries
export CC="${GNU_TARGET}-gcc"
export CXX="${GNU_TARGET}-g++"
export AR="${GNU_TARGET}-ar"
export RANLIB="${GNU_TARGET}-ranlib"
# Configure for native compilation
COOKBOOK_CONFIGURE_FLAGS+=(
--host="${GNU_TARGET}"
--target="${GNU_TARGET}"
--prefix=/usr
--with-sysroot="${COOKBOOK_SYSROOT}"
--enable-default-hash-style=gnu
--disable-werror
--disable-nls
--disable-multilib
--disable-gdb
--disable-gdbserver
--disable-sim
)
"${COOKBOOK_CONFIGURE}" "${COOKBOOK_CONFIGURE_FLAGS[@]}"
"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" all-binutils all-gas all-ld
"${COOKBOOK_MAKE}" install-binutils install-gas install-ld DESTDIR="${COOKBOOK_STAGE}"
# Native binutils don't need the target prefix - provide unprefixed links
for tool in ar as ld nm objcopy objdump ranlib readelf size strings strip; do
if [ -f "${COOKBOOK_STAGE}/usr/bin/${GNU_TARGET}-${tool}" ]; then
ln -sf "${GNU_TARGET}-${tool}" "${COOKBOOK_STAGE}/usr/bin/${tool}"
fi
done
# Remove libtool archives
rm -f "${COOKBOOK_STAGE}"/usr/lib/*.la
"""
[package]
description = "Native GNU Binutils 2.43.1 for Red Bear OS (runs on redox, targets redox)"