function(napi_engine_set_layout ENGINE_ROOT)
get_filename_component(_napi_root "${ENGINE_ROOT}" DIRECTORY)
if(DEFINED NAPI_ROOT AND NOT "${NAPI_ROOT}" STREQUAL "")
get_filename_component(_napi_root "${NAPI_ROOT}" ABSOLUTE)
endif()
if(DEFINED NAPI_PROJECT_ROOT AND NOT "${NAPI_PROJECT_ROOT}" STREQUAL "")
get_filename_component(_project_root "${NAPI_PROJECT_ROOT}" ABSOLUTE)
else()
get_filename_component(_project_root "${_napi_root}" DIRECTORY)
endif()
set(NAPI_ROOT "${_napi_root}" PARENT_SCOPE)
set(PROJECT_ROOT "${_project_root}" PARENT_SCOPE)
if(NOT DEFINED NAPI_INCLUDE_ROOT OR "${NAPI_INCLUDE_ROOT}" STREQUAL "")
set(NAPI_INCLUDE_ROOT "${_napi_root}/include" PARENT_SCOPE)
endif()
if(NOT DEFINED NAPI_TESTS_ROOT OR "${NAPI_TESTS_ROOT}" STREQUAL "")
set(NAPI_TESTS_ROOT "${_napi_root}/tests" PARENT_SCOPE)
endif()
endfunction()