u-boot/scripts
Simon Glass a55014d09b Makefile: Allow LTO to be disabled for a build
LTO (Link-Time Optimisation) is an very useful feature which can
significantly reduce the size of U-Boot binaries. So far it has been
made available for selected ARM boards and sandbox.

However, incremental builds are much slower when LTO is used. For example,
an incremental build of sandbox takes 2.1 seconds on my machine, but 6.7
seconds with LTO enabled.

Add a NO_LTO parameter to the build, similar to NO_SDL, so it can be
disabled during development if needed, for faster builds.

Add some documentation about LTO while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
2022-09-02 16:20:11 -04:00
..
basic WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
coccinelle scripts: ensure the cocci script for miiphy_register does not leak the MDIO bus 2021-09-28 18:50:57 +03:00
dtc scripts: dtc: libfdt: fdt_ro.c: always define fdt_check_full 2022-02-22 10:05:44 -07:00
kconfig WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
.gitignore docproc: Remove 2018-08-03 19:53:54 -04:00
bin2c.c scripts: import bin2c.c from Linux 4.10-rc6 2017-02-08 15:56:19 -05:00
binutils-version.sh scripts: fix binutils-version.sh for 'as' without a package. 2015-01-08 11:00:45 -05:00
build-cb.sh x86: coreboot: Add a sample script to build a qemu image 2021-12-26 23:33:28 +01:00
build-efi.sh efi: Add a script to build an image for testing on UEFI 2021-11-07 18:36:55 +01:00
build-whitelist.sh Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" 2022-08-05 11:47:56 -04:00
build_OID_registry lib: add oid registry utility 2019-12-06 16:44:20 -05:00
check-config.sh scripts/check-config.sh: fix to be compatible with BSD sed 2021-02-24 16:51:48 -05:00
check-of.sh fdt: Makefile: Ensure that OF_BOARD is used when needed 2021-12-23 11:19:39 -05:00
checkpatch.pl scripts/checkpatch.pl: Resync with v5.16 2022-02-03 12:16:00 -05:00
checkstack.pl avr32: Retire AVR32 for good 2017-07-06 16:17:19 -04:00
clang-version.sh kconfig / kbuild: Re-sync with Linux 4.20 2021-07-14 16:57:35 -04:00
cleanpatch Makefile: Move some scripts imported from Linux 2013-12-13 09:18:45 -05:00
coccicheck Makefile: add coccicheck target 2017-11-20 20:18:38 -05:00
config scripts/config: pick config script from kernel scripts 2022-08-10 13:46:55 -04:00
config_whitelist.txt Merge branch '2022-09-01-assorted-Kconfig-migrations' into next 2022-09-02 08:59:34 -04:00
const_structs.checkpatch checkpatch: update from Linux v4.13-rc6 2017-09-14 21:33:00 -04:00
coreboot.sed SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
decodecode scripts: add decodecode from Linux 2018-05-23 22:06:41 -04:00
documentation-file-ref-check scripts: add documentation-file-ref-check 2020-04-17 12:32:36 -04:00
dtc-version.sh Makefile: Only build dtc if needed 2021-10-19 11:23:07 -04:00
env2string.awk env: Allow text-env tests to run with awk 2022-04-07 16:50:53 -04:00
event_dump.py event: Add a script to decode the event-spy list 2022-03-10 08:28:36 -05:00
gcc-stack-usage.sh SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gcc-version.sh kconfig / kbuild: Re-sync with Linux 4.20 2021-07-14 16:57:35 -04:00
gen_ll_addressable_symbols.sh treewide: Fix Marek's name and change my e-mail address 2022-07-21 10:14:04 +02:00
get_default_envs.sh scripts/get_default_envs.sh: Remove blank lines 2022-04-07 16:50:53 -04:00
get_maintainer.pl get_maintainer.pl: update from Linux kernel v5.13-rc6 2021-07-14 16:57:35 -04:00
Kbuild.include Introduce Verifying Program Loader (VPL) 2022-05-02 09:58:13 -04:00
Kconfig.include kconfig: Add scripts/Kconfig.include from v4.19 2020-07-01 10:11:03 -04:00
kernel-doc doc: update Kernel documentation build system 2021-01-27 12:52:57 +01:00
ld-version.sh scripts/ld-version.sh: regular expression compile fails 2017-11-20 20:18:37 -05:00
Lindent scripts/Lindent: import from Linux 3.16 2014-08-21 12:01:29 -04:00
mailmapper scripts/mailmapper: enable running with Python 3 2021-09-28 18:50:55 +03:00
Makefile scripts: Makefile: also clean subdir dtc 2022-02-03 12:15:36 -05:00
Makefile.autoconf Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" 2022-08-05 11:47:56 -04:00
Makefile.build Introduce Verifying Program Loader (VPL) 2022-05-02 09:58:13 -04:00
Makefile.clean kconfig / kbuild: Re-sync with Linux 4.19 2020-04-10 11:18:32 -04:00
Makefile.dts dts: automatically build necessary .dtb files 2022-02-09 12:26:12 -07:00
Makefile.extrawarn kconfig / kbuild: Re-sync with Linux 4.20 2021-07-14 16:57:35 -04:00
Makefile.host kbuild: cherry-pick kbuild changes from Linux 2020-04-24 16:40:09 -04:00
Makefile.lib efi_loader: suppress executable stack warning 2022-07-13 20:07:07 +02:00
Makefile.spl Makefile: Allow LTO to be disabled for a build 2022-09-02 16:20:11 -04:00
Makefile.uncmd_spl dm: gpio: Allow control of GPIO uclass in SPL 2019-12-15 08:52:29 +08:00
mkmakefile kconfig / kbuild: Re-sync with Linux 4.20 2021-07-14 16:57:35 -04:00
objdiff scripts: objdiff: Ignore debug info when comparing 2017-08-26 14:56:14 -04:00
of_allowlist.txt fdt: Makefile: Ensure that OF_BOARD is used when needed 2021-12-23 11:19:39 -05:00
pylint.base dtoc: Correct remaining pylint problems in test_fdt 2022-08-09 11:55:41 -06:00
setlocalversion scripts: setlocalversion: remove quotes around localversion from config 2022-02-14 13:04:39 -05:00
show-gnu-make SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
spdxcheck.py scripts/checkpatch.pl: Resync with v5.16 2022-02-03 12:16:00 -05:00
spelling.txt scripts: update spelling.txt from upstream Linux 2021-11-20 10:53:00 +01:00
u-boot.supp malloc: Annotate allocator for valgrind 2022-04-11 10:00:30 -04:00