#!/usr/bin/env bash set -euo pipefail script_dir="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)" root_dir="$(CDPATH= cd -- "${script_dir}/../.." && pwd)" target="${TARGET:-x86_64-unknown-redox}" source_sysroot="${SOURCE_SYSROOT:-${root_dir}/prefix/${target}/sysroot}" dest_root="${1:-${root_dir}/build/toolchain-export/${target}}" dest_sysroot="${dest_root}/sysroot" dest_bin="${dest_root}/bin" partial_root="${dest_root}.partial" partial_sysroot="${partial_root}/sysroot" partial_bin="${partial_root}/bin" if [ ! -d "${source_sysroot}" ]; then echo "error: missing source sysroot: ${source_sysroot}" >&2 echo "hint: build the prefix first with 'make prefix TARGET=${target}' or 'make prefix'" >&2 exit 1 fi rm -rf "${partial_root}" mkdir -p "${partial_root}" cp -a "${source_sysroot}" "${partial_sysroot}" mkdir -p "${partial_bin}" for tool in gcc c++ ar ranlib ld strip objcopy objdump; do tool_name="${target}-${tool}" if [ -x "${partial_sysroot}/bin/${tool_name}" ]; then ln -s "../sysroot/bin/${tool_name}" "${partial_bin}/${tool_name}" fi done cat > "${partial_bin}/${target}-pkg-config" < "${partial_bin}/${target}-llvm-config" < "${partial_root}/activate.sh" <