Introduce the Termination Port API
* Moved the error codes to jerry-port.h and declared port function `jerry_port_fatal`. * Moved "exit or abort on fail" functionality to the newly added jerry-port-default-fatal.c. * This implied that a default port-specific API had to be introduced: functions `jerry_port_default_set_abort_on_fail` and `jerry_port_default_is_abort_on_fail` declared in jerry-port-default.h control the fatal exit behaviour. * For the sake of clarity, renamed jerry-port.c to jerry-port-default-io.c. * Adapted CMakeLists to deal with port implementations consisting of more then one source file and exposing headers. This also required the renaming of `EXTERNAL_PORT_FILE` cmake option to `EXTERNAL_PORT_DIR`. * Adapted main sources to use the default port header for the abort-on-fail functionality, as that is not part of the core jerry API anymore. * Added default port implementation to the static source code checker tools. JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
This commit is contained in:
+5
-5
@@ -132,12 +132,11 @@ project (Jerry C ASM)
|
||||
endif()
|
||||
|
||||
|
||||
# Should we use external jerry-port.c?
|
||||
if(DEFINED EXTERNAL_PORT_FILE AND NOT EXTERNAL_PORT_FILE STREQUAL "UNDEFINED")
|
||||
set(SOURCE_PORT_IMPLEMENTATION ${EXTERNAL_PORT_FILE})
|
||||
set(USE_DEFAULT_PORT FALSE)
|
||||
# Should we use external port?
|
||||
if(DEFINED EXTERNAL_PORT_DIR AND NOT EXTERNAL_PORT_DIR STREQUAL "UNDEFINED")
|
||||
set(PORT_DIR ${EXTERNAL_PORT_DIR})
|
||||
else()
|
||||
set(USE_DEFAULT_PORT TRUE)
|
||||
set(PORT_DIR ${CMAKE_SOURCE_DIR}/targets/default)
|
||||
endif()
|
||||
|
||||
# Are there any interfaces for external libraries, other than libc, that should be registered?
|
||||
@@ -420,6 +419,7 @@ endif()
|
||||
PROPERTY LINK_FLAGS "${COMPILE_FLAGS_JERRY} ${FLAGS_COMMON_${BUILD_MODE}} ${LINKER_FLAGS_COMMON} ${LINKER_FLAGS_STATIC}")
|
||||
target_compile_definitions(${TARGET_NAME} PRIVATE ${DEFINES_JERRY})
|
||||
target_include_directories(${TARGET_NAME} PRIVATE ${INCLUDE_CORE_INTERFACE})
|
||||
target_include_directories(${TARGET_NAME} PRIVATE ${PORT_DIR})
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${INCLUDE_LIBC_INTERFACE})
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${INCLUDE_EXTERNAL_LIBS_INTERFACE})
|
||||
if(("${PLATFORM}" STREQUAL "DARWIN") AND (NOT (CMAKE_COMPILER_IS_GNUCC)))
|
||||
|
||||
Reference in New Issue
Block a user