Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

zephyr_cc_option_ifdef(CONFIG_LTO -flto)

zephyr_compile_options(
  -Wno-format-truncation
  -fno-freestanding
  -Wno-undef
  -Wno-implicit-function-declaration
  -m32
  -MMD
  -MP
  ${TOOLCHAIN_C_FLAGS}
  ${ARCH_FLAG}
  -include ${PROJECT_SOURCE_DIR}/arch/posix/include/posix_cheats.h
  )

zephyr_compile_options_ifdef(CONFIG_COVERAGE
  -fprofile-arcs
  -ftest-coverage
)
zephyr_link_libraries_ifdef(CONFIG_COVERAGE
	-lgcov
	)

zephyr_compile_definitions(_POSIX_C_SOURCE=200809)

zephyr_ld_options(
  -ldl
  -pthread
  -m32
)

# About the -include directive: The reason to do it this way, is because in this
# manner it is transparent to the application. Otherwise posix_cheats.h needs to
# be included in all the applications' files which define main( ), and in any
# app file which uses the pthreads like API provided by Zephyr
# ( include/posix/pthread.h / kernel/pthread.c ) [And any future API added to
# Zephyr which will clash with the native POSIX API] . It would also need to
# be included in a few zephyr kernel files.


add_subdirectory(soc)
add_subdirectory(core)

# Override the flag used with linker.cmd
# "-Wl,--just-symbols linker.cmd" instead of "-T linker.cmd"
set_property(GLOBAL PROPERTY TOPT -Wl,--just-symbols)