TOP="$(pwd)" TOOLCHAIN_PATH="" GLOBAL_MODE=0 CUSTOM_PATH="" while [ $# -gt 0 ]; do case "$1" in --global) GLOBAL_MODE=1 shift ;; --path) if [ -z "$2" ]; then echo "Ошибка: для --path нужно указать путь" return 1 2>/dev/null || exit 1 fi CUSTOM_PATH="$2" shift 2 ;; *) shift ;; esac done if [ -n "${CUSTOM_PATH}" ]; then TOOLCHAIN_PATH="${CUSTOM_PATH}" elif [ -d "${TOP}/arm-uclinuxfdpiceabi" ]; then TOOLCHAIN_PATH="${TOP}/arm-uclinuxfdpiceabi" elif [ -d "${TOP}/build/install" ]; then TOOLCHAIN_PATH="${TOP}/build/install" fi if [ -n "${TOOLCHAIN_PATH}" ] && [ -x "${TOOLCHAIN_PATH}/bin/arm-uclinuxfdpiceabi-gcc" ]; then echo "Найден toolchain: ${TOOLCHAIN_PATH}/bin/arm-uclinuxfdpiceabi-gcc" CFLAGS_TOOLSET='-O2' CFLAGS_TARGET='-Os -mthumb' SUBARCH=armv7-m SUBMODE=thumb if [ "$GLOBAL_MODE" -eq 1 ]; then export CFLAGS="${CFLAGS_TOOLSET}" export CFLAGS_FOR_TARGET="${CFLAGS_TARGET}" export CXXFLAGS_FOR_TARGET="${CFLAGS_TARGET}" export SUBARCH export SUBMODE export PATH="${TOOLCHAIN_PATH}/bin:${PATH}" else CFLAGS="${CFLAGS_TOOLSET}" CFLAGS_FOR_TARGET="${CFLAGS_TARGET}" CXXFLAGS_FOR_TARGET="${CFLAGS_TARGET}" PATH="${TOOLCHAIN_PATH}/bin:${PATH}" fi else echo "Ошибка: не найден ${TOOLCHAIN_PATH}/bin/arm-uclinuxfdpiceabi-gcc" return 1 2>/dev/null || exit 1 fi