Files
build-toolchain/env.sh

54 lines
1.8 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# env.sh — окружение для сборки под arm-uclinuxfdpiceabi (FDPIC, thumb)
TOP="$(pwd)"
TARGET=arm-uclinuxfdpiceabi
TOOLCHAIN=arm-uclinuxfdpiceabi
# Если передали путь — используем его, иначе берём bin в текущей папке
# Пример вызова: ./env.sh /opt/toolchains/arm/bin
TOOLCHAIN_PATH="${1:-${TOP}/${TARGET}/bin}"
SYSROOT="${TOOLCHAIN_ROOT}/sysroot"
PREFIX="${SYSROOT}/usr"
# Флаги тулчейна
CFLAGS_TOOLSET='-O2'
ARFLAGS_TARGET="${2:-}"
CFLAGS_TARGET='-Os -mthumb'
CXXFLAGS_TARGET=$CFLAGS_TARGET
LDFLAGS_TARGET='-Wl,--fdpic'
# Указание полного пути к компиляторам
CC="${TOOLCHAIN_PATH}/${TOOLCHAIN}-gcc ${CFLAGS_TOOLSET} ${CFLAGS_TARGET}"
CXX="${TOOLCHAIN_PATH}/${TOOLCHAIN}-g++ ${CFLAGS_TOOLSET} ${CXXFLAGS_TARGET}"
CPP="${TOOLCHAIN_PATH}/${TOOLCHAIN}-cpp"
LD="${TOOLCHAIN_PATH}/${TOOLCHAIN}-ld"
AR="${TOOLCHAIN_PATH}/${TOOLCHAIN}-ar ${ARFLAGS_TARGET}"
AS="${TOOLCHAIN_PATH}/${TOOLCHAIN}-as"
NM="${TOOLCHAIN_PATH}/${TOOLCHAIN}-nm"
RANLIB="${TOOLCHAIN_PATH}/${TOOLCHAIN}-ranlib"
STRIP="${TOOLCHAIN_PATH}/${TOOLCHAIN}-strip"
OBJCOPY="${TOOLCHAIN_PATH}/${TOOLCHAIN}-objcopy"
OBJDUMP="${TOOLCHAIN_PATH}/${TOOLCHAIN}-objdump"
# PATH — toolchain/bin должен быть в начале
PATH="${TOOLCHAIN_PATH}:${PATH}"
# Экспорт
export SYSROOT
export PREFIX
export TARGET
export TOOLCHAIN
export CC CXX CPP LD AR AS NM RANLIB STRIP OBJCOPY OBJDUMP
export CFLAGS CXXFLAGS LDFLAGS
export CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET LDFLAGS_FOR_TARGET
export PATH
export SUBARCH=armv7-m
export SUBMODE=thumb
echo "Окружение для ${TARGET} (Thumb/FDPIC) активировано"
echo " TOOLCHAIN_PATH = $TOOLCHAIN_PATH"
echo " CC = $CC"
echo " CXX = $CXX"