# SPDX-License-Identifier: Apache-2.0

if (CONFIG_64BIT)
	# some gcc versions fail to build without -fPIC
	zephyr_compile_options(-m64 -fPIC)
	zephyr_ld_options(-m64)
else ()
	zephyr_compile_options(-m32)
	zephyr_ld_options(-m32)
endif ()

zephyr_compile_options(
  -MMD
  -MP
  ${ARCH_FLAG}
  -include ${ZEPHYR_BASE}/arch/posix/include/posix_cheats.h
  )

# @Intent: Obtain compiler specific flags for no freestanding compilation
toolchain_cc_no_freestanding_options()

zephyr_include_directories(${BOARD_DIR})

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

if (CONFIG_ASAN)
	zephyr_compile_options(-fsanitize=address)
	zephyr_link_libraries(-lasan)
	zephyr_ld_options(-fsanitize=address)
endif ()

zephyr_compile_definitions(_POSIX_C_SOURCE=200809 _XOPEN_SOURCE=600 _XOPEN_SOURCE_EXTENDED)

zephyr_ld_options(
  -ldl
  -pthread
)

# 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(core)
