zephyr/include/linker
Sebastian Bøe 1c2de10c06 cmake: ninja: Change how CMake names the kernelspace archives
The linker script places kernelspace and userspace archives in
different sections. But the linker script itself does not determine
what archives are in what space, that is done by CMake.

CMake passes the list of kernelspace archives to the linker script
through defines, like this:

-DNUM_KERNEL_OBJECT_FILES=3
-DKERNEL_OBJECT_FILE_0=path/to/archive_a.a
-DKERNEL_OBJECT_FILE_1=path/to/archive_b.a
-DKERNEL_OBJECT_FILE_2=path/to/archive_c.a

These paths are relative, and since Ninja and Make invoke the linker
with different "working directories"[0], the relative paths need to be
different. This patch rectifies the relative path when using Ninja.

This fixes #5343

[0] https://gitlab.kitware.com/cmake/cmake/issues/17448

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-01-03 13:19:59 -05:00
..
common-ram.ld kernel: introduce object validation mechanism 2017-09-07 16:33:33 -07:00
common-rom.ld userspace: add K_THREAD_ACCCESS_GRANT() 2017-10-18 07:37:38 -07:00
intlist.ld
kobject-rom.ld kernel: introduce object validation mechanism 2017-09-07 16:33:33 -07:00
kobject-text.ld userspace: treat thread stacks as kernel objects 2017-10-16 19:02:00 -07:00
kobject.ld kernel: introduce object validation mechanism 2017-09-07 16:33:33 -07:00
linker-defs.h cmake: ninja: Change how CMake names the kernelspace archives 2018-01-03 13:19:59 -05:00
linker-tool-gcc.h arch: native: Run Zephyr natively in a POSIX OS 2017-12-27 14:16:08 -05:00
linker-tool.h linker: move all linker headers to include/linker 2017-06-18 09:24:04 -05:00
section_tags.h linker: move all linker headers to include/linker 2017-06-18 09:24:04 -05:00
sections.h sections.h: define application-level sections 2017-06-29 07:46:58 -04:00