# A native log support to be compatible with springbok simprint
#
# Connect the logging library with the executables

if(NOT TARGET native_log)
  message(FATAL_ERROR "Please include native_log target first")
endif()

function(add_executable executable)
  cmake_parse_arguments(AE "ALIAS;IMPORTED" "" "" ${ARGN})
  if(AE_ALIAS OR AE_IMPORTED)
    _add_executable(${executable} ${ARGN})
  else()
    _add_executable(${executable} ${ARGN})
    target_link_libraries(${executable} PRIVATE native_log)
  endif()
endfunction()
