-
-
Notifications
You must be signed in to change notification settings - Fork 205
Further optimization for space (-Os -> -Oz): musl-cross-make-> bump to gcc 15.1.0 & related changes #1991
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Further optimization for space (-Os -> -Oz): musl-cross-make-> bump to gcc 15.1.0 & related changes #1991
Changes from all commits
8759b55
7d1bc43
b0ae78f
c877160
8a745ce
465ddbc
6d06e24
6151e34
57c4eaa
2da2313
47deda4
1cfe57e
00ed7a2
81ddf2b
70159ae
78da469
19e41d3
40cd28e
fac65eb
fc59211
cab0254
5165e66
8f48815
df3df15
74b5e93
74364a8
4aa49fa
a98feb4
e018371
481bea8
4e0c620
3ea51d0
c0a6dca
9416382
c29a631
2299989
ce338e7
f084e74
dc6f296
d810b6e
22adbc6
13642fa
112998e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -457,6 +457,19 @@ define define_module = | |
| # XXX: "git clean -dffx" is a hack for coreboot during commit switching, need | ||
| # module-specific cleanup action to get rid of it. | ||
| $(build)/$($1_base_dir)/.canary: FORCE | ||
| if [ -e "$$@" ] && [ -e "$(build)/$($1_base_dir)/.patched" ]; then \ | ||
| if [ -f patches/$($1_patch_name).patch ] && [ patches/$($1_patch_name).patch -nt "$$@" ]; then \ | ||
| echo "INFO: Patch file modified, invalidating .canary to trigger full rebuild" && \ | ||
| echo "INVALIDATED: patches modified" > "$$@" && \ | ||
| rm -f "$(build)/$($1_base_dir)/.patched" && \ | ||
| rm -rf "$(build)/$($1_base_dir)/$(BOARD)" "$(board_build)"; \ | ||
| elif [ -d patches/$($1_patch_name) ] && [ -n "$$(find patches/$($1_patch_name)/ -name '*.patch' -newer '$$@' -print -quit)" ]; then \ | ||
| echo "INFO: Patch files modified, invalidating .canary to trigger full rebuild" && \ | ||
| echo "INVALIDATED: patches modified" > "$$@" && \ | ||
| rm -f "$(build)/$($1_base_dir)/.patched" && \ | ||
| rm -rf "$(build)/$($1_base_dir)/$(BOARD)" "$(board_build)"; \ | ||
| fi; \ | ||
| fi | ||
| if [ ! -e "$$@" ] && [ ! -d "$(build)/$($1_base_dir)" ]; then \ | ||
| echo "INFO: .canary file and directory not found. Cloning repository $($1_repo) into $(build)/$($1_base_dir)" && \ | ||
| git clone $($1_repo) "$(build)/$($1_base_dir)" && \ | ||
|
|
@@ -473,7 +486,7 @@ define define_module = | |
| git -C "$(build)/$($1_base_dir)" reset --hard $($1_commit_hash) && \ | ||
| echo "INFO: Cleaning repository directory (including payloads and util/cbmem)" && \ | ||
| git -C "$(build)/$($1_base_dir)" clean -df && \ | ||
| git -C "$(build)/$($1_base_dir)" clean -dffx payloads util/cbmem && \ | ||
| git -C "$(build)/$($1_base_dir)" clean -dffx $(BOARD) payloads util/cbmem && \ | ||
| echo "INFO: Synchronizing submodules" && \ | ||
| git -C "$(build)/$($1_base_dir)" submodule sync && \ | ||
| echo "INFO: Updating submodules (init and checkout)" && \ | ||
|
|
@@ -682,21 +695,21 @@ endef | |
| define initrd_bin_add = | ||
| $(initrd_bin_dir)/$(notdir $1): $1 | ||
| $(call do,INSTALL-BIN,$$(<:$(pwd)/%=%),cp -a --remove-destination "$$<" "$$@") | ||
| @$(CROSS)strip --preserve-dates "$$@" 2>&-; true | ||
| @$(CROSS)strip --preserve-dates --strip-all "$$@" 2>&-; true | ||
| initrd_bins += $(initrd_bin_dir)/$(notdir $1) | ||
| endef | ||
|
|
||
| define initrd_lib_add = | ||
| $(initrd_lib_dir)/$(notdir $1): $1 | ||
| $(call do,INSTALL-LIB,$(1:$(pwd)/%=%),\ | ||
| $(CROSS)strip --preserve-dates -o "$$@" "$$<") | ||
| $(CROSS)strip --preserve-dates --strip-all -o "$$@" "$$<") | ||
|
Comment on lines
+698
to
+705
|
||
| initrd_libs += $(initrd_lib_dir)/$(notdir $1) | ||
| endef | ||
|
|
||
| # Only some modules have binaries that we install | ||
| # Shouldn't this be specified in the module file? | ||
| #bin_modules-$(CONFIG_MUSL) += musl-cross-make | ||
| bin_modules-$(CONFIG_KEXEC) += kexec | ||
| bin_modules-$(CONFIG_KEXEC) += kexec-tools | ||
tlaurion marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| bin_modules-$(CONFIG_TPMTOTP) += tpmtotp | ||
| bin_modules-$(CONFIG_PCIUTILS) += pciutils | ||
| bin_modules-$(CONFIG_FLASHROM) += flashrom | ||
|
|
@@ -758,9 +771,22 @@ $(COREBOOT_UTIL_DIR)/inteltool/inteltool \ | |
| : $(build)/$(coreboot_base_dir)/.canary musl-cross-make | ||
| +$(call do,MAKE,$(notdir $@),\ | ||
| $(MAKE) -C "$(dir $@)" $(CROSS_TOOLS) \ | ||
| CC="$(heads_cc) -Wno-unterminated-string-initialization" \ | ||
| ) | ||
|
|
||
| # superio depends on zlib and pciutils | ||
|
|
||
| # TODO_GCC_15_COREBOOT_CBMEM: GCC 15.1.0 compatibility fix for coreboot cbmem utility | ||
| # The coreboot cbmem utility uses -Werror and GCC 15.1.0 generates new warnings | ||
| # about string initialization that weren't present in earlier versions. | ||
| # Added -Wno-unterminated-string-initialization to suppress these warnings. | ||
| # This should be moved to a proper coreboot module configuration when | ||
| # modules/coreboot is refactored to use standard module variables like other modules. | ||
| # See: error "initializer-string for array of 'char' truncates NUL terminator" | ||
| # Related modules: modules/coreboot (needs _configure and _target variables) | ||
| # Alternative: Move this to use heads_cc extension or per-module CC override pattern | ||
| # | ||
|
|
||
| $(COREBOOT_UTIL_DIR)/superiotool/superiotool: \ | ||
| $(build)/$(zlib_dir)/.build \ | ||
| $(build)/$(pciutils_dir)/.build \ | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.