Enhance env.sh to improve toolchain registration logic

- Updated usage instructions to clarify default behavior and options.
- Improved path resolution for toolchain installation, checking for both ./bin and ./arm-uclinuxfdpiceabi directories.
- Added automatic registration when no arguments are provided, streamlining the user experience.
This commit is contained in:
2026-03-30 10:01:14 +03:00
parent 13b4127521
commit f6111b0bb8

17
env.sh
View File

@@ -2,11 +2,15 @@
# env.sh — окружение для сборки под arm-uclinuxfdpiceabi (FDPIC, thumb) # env.sh — окружение для сборки под arm-uclinuxfdpiceabi (FDPIC, thumb)
# #
# Использование: # Использование:
# . ./env.sh [arflags]
# (по умолчанию: --register и путь берётся из текущей директории: ./arm-uclinuxfdpiceabi)
# . ./env.sh --register /path/to/install [arflags] # . ./env.sh --register /path/to/install [arflags]
# . ./env.sh --unregister # . ./env.sh --unregister
_env_usage() { _env_usage() {
echo "Использование:" echo "Использование:"
echo " . ./env.sh [arflags]"
echo " (по умолчанию: --register, тулчейн в ./arm-uclinuxfdpiceabi)"
echo " . ./env.sh --register /path/to/install [arflags]" echo " . ./env.sh --register /path/to/install [arflags]"
echo " . ./env.sh --unregister" echo " . ./env.sh --unregister"
} }
@@ -33,7 +37,7 @@ _env_register() {
TOOLCHAIN=arm-uclinuxfdpiceabi TOOLCHAIN=arm-uclinuxfdpiceabi
TOOLCHAIN_PATH="${install_root}/bin" TOOLCHAIN_PATH="${install_root}/bin"
SYSROOT="${TOOLCHAIN_ROOT}/sysroot" SYSROOT="${install_root}/sysroot"
PREFIX="${SYSROOT}/usr" PREFIX="${SYSROOT}/usr"
# Флаги тулчейна # Флаги тулчейна
@@ -106,7 +110,16 @@ case "${1:-}" in
--unregister) --unregister)
_env_unregister _env_unregister
;; ;;
"")
# Нет аргументов => автоматом register для тулчейна из текущей директории
_env_register "" ""
;;
*) *)
_env_usage # Если аргумент не начинается с "--", трактуем как [arflags] для тулчейна из текущей директории
if [[ "$1" != --* ]]; then
_env_register "" "$1"
else
_env_usage
fi
;; ;;
esac esac