自动安装、更新dadk (#319)

* auto install/auto update dadk
This commit is contained in:
LoGin 2023-08-05 15:30:06 +08:00 committed by GitHub
parent d6fd9c1e80
commit abf3f634bf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -14,7 +14,7 @@ current_CFLAGS := $(CFLAGS)
DADK_VERSION = $(shell dadk -V | awk 'END {print $2}') DADK_VERSION = $(shell dadk -V | awk 'END {print $2}')
# 最小的DADK版本 # 最小的DADK版本
MIN_DADK_VERSION = 0.1.1 MIN_DADK_VERSION = 0.1.2
DADK_CACHE_DIR = $(ROOT_PATH)/bin/dadk_cache DADK_CACHE_DIR = $(ROOT_PATH)/bin/dadk_cache
# 旧版的libc安装路径 # 旧版的libc安装路径
@ -34,9 +34,17 @@ ifeq ("$(DADK_VERSION)", "")
@echo "\nOr you can install dadk from source by running the following command:" @echo "\nOr you can install dadk from source by running the following command:"
@echo "\n\tcargo install --git https://github.com/DragonOS-Community/DADK.git" @echo "\n\tcargo install --git https://github.com/DragonOS-Community/DADK.git"
@echo "\n" @echo "\n"
@exit 1 @echo "Auto installing dadk..."
CC=gcc AS=as AR=ar LD=ld OBJCOPY=objcopy NM=nm cargo install dadk
else else
@echo "dadk version $(DADK_VERSION) installed" @echo "dadk version $(DADK_VERSION) installed"
# 如果DADK版本过低则自动更新
ifeq ($(shell printf '%s\n' "$(DADK_VERSION)" "$(MIN_DADK_VERSION)" | sort -V | head -n1), $(MIN_DADK_VERSION))
@echo "dadk version is too low, please update to $(MIN_DADK_VERSION) or higher version"
@echo "Updating dadk..."
CC=gcc AS=as AR=ar LD=ld OBJCOPY=objcopy NM=nm cargo install dadk || (echo "dadk update failed" && exit 1)
@echo "dadk updated"
endif
endif endif
dadk_run: install_dadk dadk_run: install_dadk