mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-04 06:54:27 -05:00 
			
		
		
		
	It seems, that there are currently some unhandled corner cases in which `.toolchain_build_ver` results in empty file and thus forcing rebuilds, even if the toolchain was build correctly just a few moments ago. Until proper fix is found, workaround that by checking for this corner case and simply populate `.toolchain_build_ver` file. While at it, improve the UX and display version mismatch, so it's more clear what has forced the rebuild: "Toolchain build version changed (11.2.0-1 != ), running make targetclean" References: https://gitlab.com/ynezz/openwrt/-/jobs/2133332533/raw Signed-off-by: Petr Štetiar <ynezz@true.cz>
		
			
				
	
	
		
			15 lines
		
	
	
		
			615 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			615 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh
 | 
						|
eval "$(grep CONFIG_GCC_VERSION .config)"
 | 
						|
CONFIG_TOOLCHAIN_BUILD_VER="$CONFIG_GCC_VERSION-$(cat toolchain/build_version)"
 | 
						|
touch .toolchain_build_ver
 | 
						|
CURRENT_TOOLCHAIN_BUILD_VER="$(cat .toolchain_build_ver)"
 | 
						|
[ -z "$CURRENT_TOOLCHAIN_BUILD_VER" ] && {
 | 
						|
	echo "$CONFIG_TOOLCHAIN_BUILD_VER" > .toolchain_build_ver
 | 
						|
	exit 0
 | 
						|
}
 | 
						|
[ "$CONFIG_TOOLCHAIN_BUILD_VER" = "$CURRENT_TOOLCHAIN_BUILD_VER" ] && exit 0
 | 
						|
echo "Toolchain build version changed ($CONFIG_TOOLCHAIN_BUILD_VER != $CURRENT_TOOLCHAIN_BUILD_VER), running make targetclean"
 | 
						|
make targetclean
 | 
						|
echo "$CONFIG_TOOLCHAIN_BUILD_VER" > .toolchain_build_ver
 | 
						|
exit 0
 |