quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

commit 45c2f5726900f97393f23c7de2893e0ddc8ee81b
parent 9b255f3ad8946e46bb8a42f730218db921b2fe29
Author: Florian Dold <florian@dold.me>
Date:   Fri, 16 Dec 2022 14:37:25 +0100

cmake

Diffstat:
ACMakeLists.txt | 39+++++++++++++++++++++++++++++++++++++++
Mqjs.c | 6++----
2 files changed, 41 insertions(+), 4 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt @@ -0,0 +1,39 @@ +cmake_minimum_required(VERSION 3.10) + +project(quickjs-tart + DESCRIPTION "Taler Runtime based on QuickJS" + LANGUAGES C) + +add_compile_definitions(_GNU_SOURCE) +#add_compile_definitions(CONFIG_BIGNUM) + +add_library(quickjs STATIC quickjs.c) +target_compile_definitions(quickjs PRIVATE CONFIG_VERSION="0.0.1") +target_link_libraries(quickjs PRIVATE m libregexp libbf) + +add_library(libregexp STATIC libregexp.c) +target_link_libraries(quickjs PRIVATE cutils libunicode) + +add_library(libunicode STATIC libunicode.c) +add_library(libbf STATIC libbf.c) + +add_library(cutils STATIC cutils.c) + + +add_library(quickjs-libc STATIC quickjs-libc.c) +target_link_libraries(quickjs-libc PRIVATE quickjs libregexp libunicode cutils mbedcrypto sodium curl) + +add_executable(qjsc qjsc.c) +target_compile_definitions(qjsc PRIVATE CONFIG_VERSION="0.0.1") +target_link_libraries(qjsc PRIVATE libregexp libunicode cutils quickjs-libc) + +add_custom_command(OUTPUT repl.c + COMMAND qjsc ARGS -c -o repl.c -m ${CMAKE_SOURCE_DIR}/repl.js + MAIN_DEPENDENCY repl.js + DEPENDS qjsc + COMMENT compiling repl + VERBATIM) + +add_executable(qjs qjs.c repl.c) +target_compile_definitions(qjs PRIVATE CONFIG_VERSION="0.0.1") +target_link_libraries(qjs PRIVATE quickjs quickjs-libc) diff --git a/qjs.c b/qjs.c @@ -46,8 +46,8 @@ extern const uint32_t qjsc_repl_size; #ifdef CONFIG_BIGNUM extern const uint8_t qjsc_qjscalc[]; extern const uint32_t qjsc_qjscalc_size; -static int bignum_ext; #endif +static int bignum_ext; static int eval_buf(JSContext *ctx, const void *buf, int buf_len, const char *filename, int eval_flags) @@ -321,9 +321,7 @@ int main(int argc, char **argv) size_t memory_limit = 0; char *include_list[32]; int i, include_count = 0; -#ifdef CONFIG_BIGNUM - int load_jscalc; -#endif + int load_jscalc = 0; size_t stack_size = 0; #ifdef CONFIG_BIGNUM