mirror of https://github.com/OpenIPC/firmware.git
Add precise GCC version and libc hash version
parent
15cfd0442f
commit
b62e365543
|
@ -80,6 +80,10 @@ jobs:
|
||||||
make prepare
|
make prepare
|
||||||
make BOARD=unknown_unknown_${{ matrix.platform }}_openipc br-sdk
|
make BOARD=unknown_unknown_${{ matrix.platform }}_openipc br-sdk
|
||||||
SDK_PATH=$(find output/images -name "*_sdk-buildroot.tar.gz")
|
SDK_PATH=$(find output/images -name "*_sdk-buildroot.tar.gz")
|
||||||
|
# Why do we need this crap?
|
||||||
|
NEW="$(dirname $SDK_PATH)/${TOOLNAME}.tgz"
|
||||||
|
mv $SDK_PATH $NEW
|
||||||
|
SDK_PATH=$NEW
|
||||||
echo "SDK_PATH=$SDK_PATH" >> $GITHUB_ENV
|
echo "SDK_PATH=$SDK_PATH" >> $GITHUB_ENV
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v3
|
- uses: actions/upload-artifact@v3
|
||||||
|
@ -233,6 +237,8 @@ jobs:
|
||||||
echo "BR2_TOOLCHAIN_EXTERNAL_GCC_${GCC_VER:3}=y" >> $CONF_PATH
|
echo "BR2_TOOLCHAIN_EXTERNAL_GCC_${GCC_VER:3}=y" >> $CONF_PATH
|
||||||
echo "BR2_ROOTFS_POST_BUILD_SCRIPT=\"\$(TOPDIR)/../scripts/executing_commands_for_${LIBC}.sh\"" >> $CONF_PATH
|
echo "BR2_ROOTFS_POST_BUILD_SCRIPT=\"\$(TOPDIR)/../scripts/executing_commands_for_${LIBC}.sh\"" >> $CONF_PATH
|
||||||
mkdir /tmp/extsdk
|
mkdir /tmp/extsdk
|
||||||
|
pwd
|
||||||
|
ls -l
|
||||||
tar xvf ${TOOLNAME}.tgz --strip-components=1 -C /tmp/extsdk >/dev/null
|
tar xvf ${TOOLNAME}.tgz --strip-components=1 -C /tmp/extsdk >/dev/null
|
||||||
|
|
||||||
HAS_NAND=$(make BOARD=${BOARD} has-nand)
|
HAS_NAND=$(make BOARD=${BOARD} has-nand)
|
||||||
|
|
2
Makefile
2
Makefile
|
@ -72,7 +72,7 @@ has-nand:
|
||||||
@sed -rn "s/^BR2_TARGET_ROOTFS_UBI=(y)/\1/p" $(FULL_PATH)
|
@sed -rn "s/^BR2_TARGET_ROOTFS_UBI=(y)/\1/p" $(FULL_PATH)
|
||||||
|
|
||||||
toolname:
|
toolname:
|
||||||
@$(SCRIPTS_DIR)/show_toolchains.sh board $(FULL_PATH)
|
@$(SCRIPTS_DIR)/show_toolchains.sh $(FULL_PATH) $(BR_VER)
|
||||||
|
|
||||||
list-configs:
|
list-configs:
|
||||||
@echo
|
@echo
|
||||||
|
|
|
@ -33,14 +33,37 @@ toolchain_by_config() {
|
||||||
|
|
||||||
SOC=$(echo $CF | cut -d _ -f 3)
|
SOC=$(echo $CF | cut -d _ -f 3)
|
||||||
case $FMT in
|
case $FMT in
|
||||||
"list")
|
list)
|
||||||
echo $ARCH $GCC_VER $LIBC $VER $VENDOR $CF
|
echo $ARCH $GCC_VER $LIBC $VER $VENDOR $CF
|
||||||
;;
|
;;
|
||||||
"uniq")
|
uniq)
|
||||||
echo $ARCH $GCC_VER $LIBC $VER
|
echo $ARCH $GCC_VER $LIBC $VER
|
||||||
;;
|
;;
|
||||||
"board")
|
*)
|
||||||
|
if [ ! -z "$2" ]; then
|
||||||
|
BR_DIR=buildroot-$2
|
||||||
|
GCC_VER=$(sed -rn \
|
||||||
|
"s/^\s+default\s+\"([0-9.]+)\"\s+if BR2_GCC_VERSION_${GCC_VER}_X/\1/p" \
|
||||||
|
$BR_DIR/package/gcc/Config.in.host)
|
||||||
|
case $LIBC in
|
||||||
|
musl)
|
||||||
|
VER=$(sed -rn "s/^MUSL_VERSION\s*=\s*([0-9.]+)/\1/p" \
|
||||||
|
$BR_DIR/package/musl/musl.mk)
|
||||||
|
;;
|
||||||
|
uclibc)
|
||||||
|
VER=$(sed -rn "s/^UCLIBC_VERSION\s*=\s*([0-9.]+)/\1/p" \
|
||||||
|
$BR_DIR/package/uclibc/uclibc.mk)
|
||||||
|
;;
|
||||||
|
glibc)
|
||||||
|
VER=$(sed -rn "s/^GLIBC_VERSION\s*=\s*([0-9.]+).*/\1/p" \
|
||||||
|
$BR_DIR/package/glibc/glibc.mk | tail -1)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
HASH=$(echo $VER | sha1sum | cut -c 1-8)
|
||||||
|
echo ${ARCH}-gcc${GCC_VER}-${LIBC}-${VER}-${HASH}
|
||||||
|
else
|
||||||
echo ${ARCH}-gcc${GCC_VER}-${LIBC}-${VER}
|
echo ${ARCH}-gcc${GCC_VER}-${LIBC}-${VER}
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
@ -49,8 +72,8 @@ toolchain_by_config() {
|
||||||
if [ $# -eq 0 ]; then
|
if [ $# -eq 0 ]; then
|
||||||
$0 list | sort
|
$0 list | sort
|
||||||
else
|
else
|
||||||
if [ "$1" == "board" ]; then
|
if [ "$1" != "list" ] && [ "$1" != "uniq" ]; then
|
||||||
toolchain_by_config $2 $1
|
toolchain_by_config $1 $2
|
||||||
else
|
else
|
||||||
for D in br-ext-chip-*; do
|
for D in br-ext-chip-*; do
|
||||||
for CF in $D/configs/*; do
|
for CF in $D/configs/*; do
|
||||||
|
|
Loading…
Reference in New Issue