zephyr/cmake
Mathieu Choplain 8aa6ae43ce llext: add support for SLID-based linking
This commit introduces support for an alternate linking method in the
LLEXT subsystem, called "SLID" (short for Symbol Link Identifier),
enabled by the CONFIG_LLEXT_EXPORT_BUILTINS_BY_SLID Kconfig option.

SLID-based linking uses a unique identifier (integer) to identify
exported symbols, instead of using the symbol name as done currently.
This approach provides several benefits:
 * linking is faster because the comparison operation to determine
   whether we found the correct symbol in the export table is now an
   integer compare, instead of a string compare
 * binary size is reduced as symbol names can be dropped from the binary
 * confidentiality is improved as a side-effect, as symbol names are no
   longer present in the binary

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2024-06-03 15:29:34 -04:00
..
app cmake: function to update Zephyr_DIR when loading old Zephyr packages 2022-03-07 16:35:54 +01:00
bintools buildsystem: Add an option to compress debug sections 2024-05-13 14:23:12 +02:00
compiler llext: xtensa: add support for the xt-clang toolchain 2024-05-29 10:49:40 -07:00
emu resc: cmake: robot: Rename Renode variable 2024-05-28 12:54:52 +02:00
flash West: Add west robot command 2024-05-28 12:54:52 +02:00
ide build: namespace autoconf.h with zephyr/ 2024-05-28 22:03:55 +02:00
linker llext: xtensa: add support for the xt-clang toolchain 2024-05-29 10:49:40 -07:00
linker_script usb: device_next: Rename usbd_contex to usbd_context 2024-06-03 06:43:20 -07:00
makefile_exports cmake: using zephyr_get_compile_options_for_lang_as_string for export 2020-12-15 08:37:54 -05:00
modules llext: add support for SLID-based linking 2024-06-03 15:29:34 -04:00
reports scripts: size_report: Add support for TF-M and BL2 image size reports 2022-03-09 14:03:52 -05:00
sca cmake: sca: codechecker: search for 'CodeChecker' and 'codechecker' 2024-03-28 16:44:13 -04:00
toolchain ARCMWDT: Turn off picolibc support 2024-05-18 15:54:05 +03:00
usage cmake: New target which generates a sort of development kit for llext 2024-05-17 16:21:48 +01:00
util license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
cfb.cmake scripts: move gen_cfb_font_header.py to scripts/build 2022-07-12 10:03:45 +02:00
extra_flags.cmake cmake: extra_flags: Use zephyr_get 2023-10-24 11:35:27 +02:00
gcc-m-cpu.cmake arch: arm: cortex-r: Add compiler tuning for Cortex-R82 2024-05-07 17:57:05 -04:00
gcc-m-fpu.cmake cmake: gcc: Fix Cortex-R52 FPU type 2022-10-19 00:28:33 +09:00
gen_version_h.cmake cmake: generalize VERSION infrastructure for better reuse 2023-05-17 13:56:58 +02:00
hex.cmake cmake: hex: deprecate use of to_hex() and from_hex() utility functions 2024-01-22 09:48:33 +00:00
kobj.cmake build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
llext-edk.cmake llext: add support for SLID-based linking 2024-06-03 15:29:34 -04:00
mcuboot.cmake cmake: mcuboot: set align to 1 for overwrite only mode 2024-01-12 09:59:51 +01:00
package_helper.cmake cmake: stub zephyr_set(... SCOPE ...) function in package helper 2023-10-05 09:43:28 +01:00
pristine.cmake cmake: pristine.cmake requires SOURCE_DIR and BINARY_DIR as arguments 2021-01-23 08:31:13 -05:00
target_toolchain_flags.cmake everywhere: fix typos 2022-03-14 20:22:24 -04:00
verify-toolchain.cmake cmake: rework of host tools and generic toolchain handling 2022-09-01 15:59:43 +02:00
vif.cmake USB-C: genVIF: Cleanup and add support to pick static data from input 2023-05-26 13:54:43 -04:00