mirror of
				https://github.com/hzyitc/openwrt-redmi-ax3000
				synced 2025-10-30 07:50:32 +08:00 
			
		
		
		
	toolchain: add a version that can be bumped to force toolchain/target rebuild
This can be used to ensure that the compiled code is up to date, when something important changes in the toolchain. A recent example of this is the gcc 11 fix for a code miscompilation issue Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -5,6 +5,7 @@ | ||||
| /dl | ||||
| /.config | ||||
| /.config.old | ||||
| /.toolchain_build_ver | ||||
| /bin | ||||
| /build_dir | ||||
| /staging_dir | ||||
|  | ||||
							
								
								
									
										17
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								Makefile
									
									
									
									
									
								
							| @ -38,7 +38,7 @@ else | ||||
|   include tools/Makefile | ||||
|   include toolchain/Makefile | ||||
|  | ||||
| $(toolchain/stamp-compile): $(tools/stamp-compile) | ||||
| $(toolchain/stamp-compile): $(tools/stamp-compile) $(if $(CONFIG_BUILDBOT),toolchain_rebuild_check) | ||||
| $(target/stamp-compile): $(toolchain/stamp-compile) $(tools/stamp-compile) $(BUILD_DIR)/.prepared | ||||
| $(package/stamp-compile): $(target/stamp-compile) $(package/stamp-cleanup) | ||||
| $(package/stamp-install): $(package/stamp-compile) | ||||
| @ -50,14 +50,23 @@ printdb: | ||||
|  | ||||
| prepare: $(target/stamp-compile) | ||||
|  | ||||
| clean: FORCE | ||||
| _clean: FORCE | ||||
| 	rm -rf $(BUILD_DIR) $(STAGING_DIR) $(BIN_DIR) $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES) $(BUILD_LOG_DIR) $(TOPDIR)/staging_dir/packages | ||||
|  | ||||
| dirclean: clean | ||||
| 	rm -rf $(STAGING_DIR_HOST) $(STAGING_DIR_HOSTPKG) $(TOOLCHAIN_DIR) $(BUILD_DIR_BASE)/host $(BUILD_DIR_BASE)/hostpkg $(BUILD_DIR_TOOLCHAIN) | ||||
| clean: _clean | ||||
| 	rm -rf $(BUILD_LOG_DIR) | ||||
|  | ||||
| targetclean: _clean | ||||
| 	rm -rf $(TOOLCHAIN_DIR) $(BUILD_DIR_BASE)/hostpkg $(BUILD_DIR_TOOLCHAIN) | ||||
|  | ||||
| dirclean: targetclean clean | ||||
| 	rm -rf $(STAGING_DIR_HOST) $(STAGING_DIR_HOSTPKG) $(BUILD_DIR_BASE)/host | ||||
| 	rm -rf $(TMP_DIR) | ||||
| 	$(MAKE) -C $(TOPDIR)/scripts/config clean | ||||
|  | ||||
| toolchain_rebuild_check: | ||||
| 	$(SCRIPT_DIR)/check-toolchain-clean.sh | ||||
|  | ||||
| cacheclean: | ||||
| ifneq ($(CONFIG_CCACHE),) | ||||
| 	$(STAGING_DIR_HOST)/bin/ccache -C | ||||
|  | ||||
							
								
								
									
										9
									
								
								scripts/check-toolchain-clean.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										9
									
								
								scripts/check-toolchain-clean.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,9 @@ | ||||
| #!/bin/sh | ||||
| eval `grep CONFIG_GCC_VERSION .config` | ||||
| CONFIG_TOOLCHAIN_BUILD_VER="$CONFIG_GCC_VERSION-$(cat toolchain/build_version)" | ||||
| touch .toolchain_build_ver | ||||
| [ "$CONFIG_TOOLCHAIN_BUILD_VER" = "$(cat .toolchain_build_ver)" ] && exit 0 | ||||
| echo "Toolchain build version changed, running make targetclean" | ||||
| make targetclean | ||||
| echo "$CONFIG_TOOLCHAIN_BUILD_VER" > .toolchain_build_ver | ||||
| exit 0 | ||||
							
								
								
									
										1
									
								
								toolchain/build_version
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								toolchain/build_version
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| 1 | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau