aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/jerry.cmake22
-rw-r--r--cmake/zjs.cmake45
-rw-r--r--cmake/zjs_linux.cmake19
3 files changed, 59 insertions, 27 deletions
diff --git a/cmake/jerry.cmake b/cmake/jerry.cmake
index a504c4e..20ae4c3 100644
--- a/cmake/jerry.cmake
+++ b/cmake/jerry.cmake
@@ -4,12 +4,16 @@ include(ExternalProject)
# Additional build flags to work around JerryScript warnings
set(jerry_cflags " \
- -Wall \
- -Werror \
-Wno-conversion \
-Wno-implicit-function-declaration \
-Wno-old-style-declaration \
- -Wno-undef"
+ -Wno-pedantic \
+ -Wno-shadow \
+ -Wno-sign-compare \
+ -Wno-sign-conversion \
+ -Wno-undef \
+ -Wno-unused-parameter \
+ -Wno-unused-variable"
)
zephyr_get_include_directories_for_lang_as_string(C includes)
@@ -17,8 +21,15 @@ zephyr_get_system_include_directories_for_lang_as_string(C system_includes)
zephyr_get_compile_definitions_for_lang_as_string(C definitions)
zephyr_get_compile_options_for_lang_as_string(C options)
+# include the shim layer that ports the network API to build on Zephyr
+if("${DEBUGGER}" STREQUAL "on")
+ set(net_includes
+ "-I${CMAKE_SOURCE_DIR}/src/jerry-port"
+ )
+endif()
+
set(external_project_cflags
- "${includes} ${definitions} ${options} ${system_includes}${jerry_cflags}"
+ "${includes} ${definitions} ${options} ${system_includes} ${jerry_cflags} ${net_includes}"
)
if("${SNAPSHOT}" STREQUAL "on")
@@ -33,10 +44,11 @@ set(CMAKE_ARGS
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_C_COMPILER_WORKS=TRUE
-DCMAKE_SYSTEM_NAME=Zephyr
- -DENABLE_ALL_IN_ONE=${ALL_IN_ONE}
+ -DENABLE_ALL_IN_ONE=OFF
-DENABLE_LTO=OFF
-DEXTERNAL_COMPILE_FLAGS=${external_project_cflags}
-DFEATURE_ERROR_MESSAGES=ON
+ -DFEATURE_DEBUGGER=${DEBUGGER}
-DFEATURE_INIT_FINI=ON
-DFEATURE_PROFILE=${JERRY_PROFILE}
-DFEATURE_SNAPSHOT_EXEC=OFF
diff --git a/cmake/zjs.cmake b/cmake/zjs.cmake
index 3b7ba24..953b95d 100644
--- a/cmake/zjs.cmake
+++ b/cmake/zjs.cmake
@@ -56,22 +56,35 @@ target_compile_options(app PRIVATE
-Wno-implicit-function-declaration
)
-target_include_directories(app PRIVATE ./src)
-target_include_directories(app PRIVATE ${ZEPHYR_BASE}/drivers)
-target_include_directories(app PRIVATE ${JERRY_BASE}/jerry-core/include)
-target_include_directories(app PRIVATE ${JERRY_BASE}/jerry-core/jrt)
-target_include_directories(app PRIVATE ${JERRY_BASE}/jerry-ext/include)
-target_include_directories(app PRIVATE ${CMAKE_BINARY_DIR}/../include)
-
-target_sources(app PRIVATE src/main.c)
-target_sources(app PRIVATE src/zjs_callbacks.c)
-target_sources(app PRIVATE src/zjs_common.c)
-target_sources(app PRIVATE src/zjs_error.c)
-target_sources(app PRIVATE src/zjs_modules.c)
-target_sources(app PRIVATE src/zjs_script.c)
-target_sources(app PRIVATE src/zjs_timers.c)
-target_sources(app PRIVATE src/zjs_util.c)
-target_sources(app PRIVATE src/jerry-port/zjs_jerry_port.c)
+set(APP_INCLUDES
+ ./src
+ ${ZEPHYR_BASE}/drivers
+ ${JERRY_BASE}/jerry-core/include
+ ${JERRY_BASE}/jerry-core/jrt
+ ${JERRY_BASE}/jerry-ext/include
+ ${CMAKE_BINARY_DIR}/../include
+ )
+
+set(APP_SRC
+ src/main.c
+ src/zjs_callbacks.c
+ src/zjs_common.c
+ src/zjs_error.c
+ src/zjs_modules.c
+ src/zjs_script.c
+ src/zjs_timers.c
+ src/zjs_util.c
+ src/jerry-port/zjs_jerry_port.c
+ )
+
+if("${DEBUGGER}" STREQUAL "on")
+ add_definitions(-DJERRY_DEBUGGER)
+ add_definitions(-DZJS_DEBUGGER)
+endif()
+
+target_include_directories(app PRIVATE ${APP_INCLUDES})
+
+target_sources(app PRIVATE ${APP_SRC})
target_link_libraries(app jerry-core jerry-ext)
diff --git a/cmake/zjs_linux.cmake b/cmake/zjs_linux.cmake
index 21314ef..3fe4a92 100644
--- a/cmake/zjs_linux.cmake
+++ b/cmake/zjs_linux.cmake
@@ -77,12 +77,8 @@ set(APP_COMPILE_OPTIONS
-std=gnu99
)
-if(CB_STATS)
- add_definitions(-DCB_STATS=${CB_STATS})
-endif()
-
-if(DEBUGGER)
- add_definitions(-DZJS_DEBUGGER=${ZJS_DEBUGGER})
+if("${CB_STATS}" STREQUAL "on")
+ add_definitions(-DZJS_PRINT_CALLBACK_STATS)
endif()
if("${VARIANT}" STREQUAL "debug")
@@ -141,6 +137,17 @@ if(NOT APPLE)
# these flags are needed to get rid of warnings in iotivity-constrained
list(APPEND APP_COMPILE_OPTIONS -Wno-pointer-sign)
+
+ if("${DEBUGGER}" STREQUAL "on")
+ list(APPEND APP_INCLUDES
+ ${JERRY_BASE}/jerry-core/debugger
+ ${JERRY_BASE}/jerry-core/ecma/base
+ ${JERRY_BASE}/jerry-core/jmem
+ ${JERRY_BASE}/jerry-core/lit
+ )
+ add_definitions(-DJERRY_DEBUGGER)
+ add_definitions(-DZJS_DEBUGGER)
+ endif()
endif()
# build libjerry as a static library