Diff
checker
文本
文本
图像
文档
Excel
文件夹
Legal
Enterprise
桌面版
定价
登录
下载 Diffchecker 桌面版
比较文本
查找两个文本文件之间的差异
工具
历史
实时编辑器
隐藏空白更改
折叠未更改行
关闭换行
视图
拆分
统一
比对精度
智能
单词
字符
文本样式
更改外观
语法高亮
选择语法
忽略
文本转换
转到第一个差异
编辑输入
Diffchecker Desktop
运行Diffchecker最安全的方式。获取Diffchecker桌面应用:您的差异永远不会离开您的电脑!
获取桌面版
txiki.js CMakeLists.txt FFI support removed
创建于
10个月前
差异永不过期
清除
导出
分享
解释
42 删除
行
总计
删除
字符
总计
删除
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
181 行
全部复制
1 添加
行
总计
添加
字符
总计
添加
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
140 行
全部复制
cmake_minimum_required(VERSION 3.14)
cmake_minimum_required(VERSION 3.14)
project(tjs LANGUAGES C)
project(tjs LANGUAGES C)
include(ExternalProject)
include(ExternalProject)
include(GNUInstallDirs)
include(GNUInstallDirs)
if (NOT CMAKE_BUILD_TYPE)
if (NOT CMAKE_BUILD_TYPE)
message(STATUS "No build type selected, default to Release")
message(STATUS "No build type selected, default to Release")
set(CMAKE_BUILD_TYPE "Release")
set(CMAKE_BUILD_TYPE "Release")
endif()
endif()
message(STATUS "Building in ${CMAKE_BUILD_TYPE} mode")
message(STATUS "Building in ${CMAKE_BUILD_TYPE} mode")
message(STATUS "Building with ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} on ${CMAKE_SYSTEM}")
message(STATUS "Building with ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} on ${CMAKE_SYSTEM}")
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS ON)
set(CMAKE_C_EXTENSIONS ON)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD 11)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
list(APPEND tjs_cflags -Wall -g)
list(APPEND tjs_cflags -Wall -g)
if (CMAKE_BUILD_TYPE MATCHES "Debug")
if (CMAKE_BUILD_TYPE MATCHES "Debug")
list(APPEND tjs_cflags -ggdb -O0 -fno-omit-frame-pointer)
list(APPEND tjs_cflags -ggdb -O0 -fno-omit-frame-pointer)
endif()
endif()
set(TJS__VERSION_MAJOR 24)
set(TJS__VERSION_MAJOR 24)
set(TJS__VERSION_MINOR 12)
set(TJS__VERSION_MINOR 12)
set(TJS__VERSION_PATCH 0)
set(TJS__VERSION_PATCH 0)
set(TJS__VERSION_SUFFIX "")
set(TJS__VERSION_SUFFIX "")
configure_file(
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/src/version.h.in"
"${CMAKE_CURRENT_SOURCE_DIR}/src/version.h.in"
"${CMAKE_CURRENT_SOURCE_DIR}/src/version.h"
"${CMAKE_CURRENT_SOURCE_DIR}/src/version.h"
)
)
macro(cpr_option OPTION_NAME OPTION_TEXT OPTION_DEFAULT)
macro(cpr_option OPTION_NAME OPTION_TEXT OPTION_DEFAULT)
option(${OPTION_NAME} ${OPTION_TEXT} ${OPTION_DEFAULT})
option(${OPTION_NAME} ${OPTION_TEXT} ${OPTION_DEFAULT})
if(DEFINED ENV{${OPTION_NAME}})
if(DEFINED ENV{${OPTION_NAME}})
# Allow setting the option through an environment variable
# Allow setting the option through an environment variable
set(${OPTION_NAME} $ENV{${OPTION_NAME}})
set(${OPTION_NAME} $ENV{${OPTION_NAME}})
endif()
endif()
if(${OPTION_NAME})
if(${OPTION_NAME})
add_definitions(-D${OPTION_NAME})
add_definitions(-D${OPTION_NAME})
endif()
endif()
message(STATUS " ${OPTION_NAME}: ${${OPTION_NAME}}")
message(STATUS " ${OPTION_NAME}: ${${OPTION_NAME}}")
endmacro()
endmacro()
cpr_option(BUILD_WITH_MIMALLOC "If ON (default), build with mimalloc" ON)
cpr_option(BUILD_WITH_MIMALLOC "If ON (default), build with mimalloc" ON)
cpr_option(USE_EXTERNAL_FFI "Specify to use external ffi dependency" OFF)
cpr_option(USE_EXTERNAL_FFI "Specify to use external ffi dependency" OFF)
add_subdirectory(deps/quickjs EXCLUDE_FROM_ALL)
add_subdirectory(deps/quickjs EXCLUDE_FROM_ALL)
option(libuv_buildtests "" OFF)
option(libuv_buildtests "" OFF)
add_subdirectory(deps/libuv EXCLUDE_FROM_ALL)
add_subdirectory(deps/libuv EXCLUDE_FROM_ALL)
add_subdirectory(deps/sqlite3 EXCLUDE_FROM_ALL)
add_subdirectory(deps/sqlite3 EXCLUDE_FROM_ALL)
set(BUILD_WASI "simple" CACHE STRING "WASI implementation")
set(BUILD_WASI "simple" CACHE STRING "WASI implementation")
add_subdirectory(deps/wasm3 EXCLUDE_FROM_ALL)
add_subdirectory(deps/wasm3 EXCLUDE_FROM_ALL)
if(BUILD_WITH_MIMALLOC)
if(BUILD_WITH_MIMALLOC)
option(MI_OVERRIDE "" OFF)
option(MI_OVERRIDE "" OFF)
option(MI_BUILD_SHARED "" OFF)
option(MI_BUILD_SHARED "" OFF)
option(MI_BUILD_STATIC "" ON)
option(MI_BUILD_STATIC "" ON)
option(MI_BUILD_OBJECT "" OFF)
option(MI_BUILD_OBJECT "" OFF)
option(MI_BUILD_TESTS "" OFF)
option(MI_BUILD_TESTS "" OFF)
add_subdirectory(deps/mimalloc EXCLUDE_FROM_ALL)
add_subdirectory(deps/mimalloc EXCLUDE_FROM_ALL)
endif()
endif()
find_package(CURL REQUIRED)
find_package(CURL REQUIRED)
add_library(tjs STATIC
add_library(tjs STATIC
src/builtins.c
src/builtins.c
src/curl-utils.c
src/curl-utils.c
src/curl-websocket.c
src/curl-websocket.c
src/error.c
src/error.c
src/eval.c
src/eval.c
src/mem.c
src/mem.c
src/modules.c
src/modules.c
src/sha1.c
src/sha1.c
src/signals.c
src/signals.c
src/timers.c
src/timers.c
src/utils.c
src/utils.c
src/version.c
src/version.c
src/vm.c
src/vm.c
src/wasm.c
src/wasm.c
src/worker.c
src/worker.c
src/ws.c
src/ws.c
src/xhr.c
src/xhr.c
src/mod_dns.c
src/mod_dns.c
src/mod_engine.c
src/mod_engine.c
复制
已复制
复制
已复制
src/mod_ffi.c
src/mod_fs.c
src/mod_fs.c
src/mod_fswatch.c
src/mod_fswatch.c
src/mod_os.c
src/mod_os.c
src/mod_process.c
src/mod_process.c
src/mod_sqlite3.c
src/mod_sqlite3.c
src/mod_streams.c
src/mod_streams.c
src/mod_sys.c
src/mod_sys.c
src/mod_udp.c
src/mod_udp.c
src/bundles/c/core/core.c
src/bundles/c/core/core.c
src/bundles/c/core/polyfills.c
src/bundles/c/core/polyfills.c
src/bundles/c/core/run-main.c
src/bundles/c/core/run-main.c
src/bundles/c/core/run-repl.c
src/bundles/c/core/run-repl.c
src/bundles/c/core/worker-bootstrap.c
src/bundles/c/core/worker-bootstrap.c
deps/quickjs/cutils.c
deps/quickjs/cutils.c
)
)
if(UNIX)
if(UNIX)
target_sources(tjs PUBLIC src/mod_posix-socket.c)
target_sources(tjs PUBLIC src/mod_posix-socket.c)
endif()
endif()
复制
已复制
复制
已复制
add_library(ffi-test SHARED
tests/fixtures/ffi-test-lib.c
)
add_library(sqlite-test SHARED
tests/fixtures/sqlite-test-ext.c
)
target_link_libraries(sqlite-test sqlite3)
if(NOT USE_EXTERNAL_FFI AND NOT MINGW AND NOT APPLE)
set(LIBFFI_SRC "${CMAKE_CURRENT_SOURCE_DIR}/deps/libffi")
set(TMP_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/ffi_root")
if(MINGW)
set(LIBFFI_STATIC_PATH ${TMP_INSTALL_DIR}/usr/local/lib/libffi.dll.a)
else()
set(LIBFFI_STATIC_PATH ${TMP_INSTALL_DIR}/usr/local/lib/libffi.a)
endif()
ExternalProject_Add(
libffi
BUILD_IN_SOURCE 1
SOURCE_DIR "${LIBFFI_SRC}"
CONFIGURE_COMMAND ./autogen.sh COMMAND ./configure --enable-static=yes --disable-shared --disable-docs --disable-multi-os-directory
BUILD_COMMAND make
INSTALL_DIR ${TMP_INSTALL_DIR}
INSTALL_COMMAND make DESTDIR=${TMP_INSTALL_DIR} install
EXCLUDE_FROM_ALL TRUE
BUILD_BYPRODUCTS ${LIBFFI_STATIC_PATH}
)
add_dependencies(tjs libffi)
add_library(libffi_a STATIC IMPORTED)
set_target_properties(libffi_a PROPERTIES IMPORTED_LOCATION ${LIBFFI_STATIC_PATH})
target_include_directories(tjs PRIVATE ${TMP_INSTALL_DIR}/usr/local/include)
target_link_libraries(tjs libffi_a)
else()
find_library(FFI_LIB NAMES libffi ffi REQUIRED)
find_path(FFI_INCLUDE_DIR NAMES ffi.h PATH_SUFFIXES ffi REQUIRED)
target_include_directories(tjs PRIVATE ${FFI_INCLUDE_DIR})
target_link_libraries(tjs ${FFI_LIB})
endif()
set_target_properties(tjs PROPERTIES
set_target_properties(tjs PROPERTIES
C_STANDARD 11
C_STANDARD 11
C_STANDARD_REQUIRED ON
C_STANDARD_REQUIRED ON
)
)
string(TOLOWER ${CMAKE_SYSTEM_NAME} TJS_PLATFORM)
string(TOLOWER ${CMAKE_SYSTEM_NAME} TJS_PLATFORM)
target_compile_options(tjs PRIVATE ${tjs_cflags})
target_compile_options(tjs PRIVATE ${tjs_cflags})
target_compile_definitions(tjs PRIVATE TJS__PLATFORM="${TJS_PLATFORM}")
target_compile_definitions(tjs PRIVATE TJS__PLATFORM="${TJS_PLATFORM}")
target_include_directories(tjs PUBLIC src)
target_include_directories(tjs PUBLIC src)
target_link_libraries(tjs qjs uv_a m3 sqlite3 CURL::libcurl)
target_link_libraries(tjs qjs uv_a m3 sqlite3 CURL::libcurl)
if (BUILD_WITH_MIMALLOC)
if (BUILD_WITH_MIMALLOC)
target_compile_definitions(tjs PRIVATE TJS__HAS_MIMALLOC)
target_compile_definitions(tjs PRIVATE TJS__HAS_MIMALLOC)
target_link_libraries(tjs mimalloc-static)
target_link_libraries(tjs mimalloc-static)
endif()
endif()
add_executable(tjs-cli
add_executable(tjs-cli
src/cli.c
src/cli.c
)
)
target_link_libraries(tjs-cli tjs)
target_link_libraries(tjs-cli tjs)
set_target_properties(tjs-cli
set_target_properties(tjs-cli
PROPERTIES OUTPUT_NAME tjs
PROPERTIES OUTPUT_NAME tjs
)
)
add_executable(tjsc EXCLUDE_FROM_ALL
add_executable(tjsc EXCLUDE_FROM_ALL
src/qjsc.c
src/qjsc.c
)
)
target_link_libraries(tjsc qjs)
target_link_libraries(tjsc qjs)
复制
已复制
复制
已复制
已保存差异
原始文本
打开文件
cmake_minimum_required(VERSION 3.14) project(tjs LANGUAGES C) include(ExternalProject) include(GNUInstallDirs) if (NOT CMAKE_BUILD_TYPE) message(STATUS "No build type selected, default to Release") set(CMAKE_BUILD_TYPE "Release") endif() message(STATUS "Building in ${CMAKE_BUILD_TYPE} mode") message(STATUS "Building with ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} on ${CMAKE_SYSTEM}") set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_C_EXTENSIONS ON) set(CMAKE_C_STANDARD 11) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) list(APPEND tjs_cflags -Wall -g) if (CMAKE_BUILD_TYPE MATCHES "Debug") list(APPEND tjs_cflags -ggdb -O0 -fno-omit-frame-pointer) endif() set(TJS__VERSION_MAJOR 24) set(TJS__VERSION_MINOR 12) set(TJS__VERSION_PATCH 0) set(TJS__VERSION_SUFFIX "") configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/src/version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/src/version.h" ) macro(cpr_option OPTION_NAME OPTION_TEXT OPTION_DEFAULT) option(${OPTION_NAME} ${OPTION_TEXT} ${OPTION_DEFAULT}) if(DEFINED ENV{${OPTION_NAME}}) # Allow setting the option through an environment variable set(${OPTION_NAME} $ENV{${OPTION_NAME}}) endif() if(${OPTION_NAME}) add_definitions(-D${OPTION_NAME}) endif() message(STATUS " ${OPTION_NAME}: ${${OPTION_NAME}}") endmacro() cpr_option(BUILD_WITH_MIMALLOC "If ON (default), build with mimalloc" ON) cpr_option(USE_EXTERNAL_FFI "Specify to use external ffi dependency" OFF) add_subdirectory(deps/quickjs EXCLUDE_FROM_ALL) option(libuv_buildtests "" OFF) add_subdirectory(deps/libuv EXCLUDE_FROM_ALL) add_subdirectory(deps/sqlite3 EXCLUDE_FROM_ALL) set(BUILD_WASI "simple" CACHE STRING "WASI implementation") add_subdirectory(deps/wasm3 EXCLUDE_FROM_ALL) if(BUILD_WITH_MIMALLOC) option(MI_OVERRIDE "" OFF) option(MI_BUILD_SHARED "" OFF) option(MI_BUILD_STATIC "" ON) option(MI_BUILD_OBJECT "" OFF) option(MI_BUILD_TESTS "" OFF) add_subdirectory(deps/mimalloc EXCLUDE_FROM_ALL) endif() find_package(CURL REQUIRED) add_library(tjs STATIC src/builtins.c src/curl-utils.c src/curl-websocket.c src/error.c src/eval.c src/mem.c src/modules.c src/sha1.c src/signals.c src/timers.c src/utils.c src/version.c src/vm.c src/wasm.c src/worker.c src/ws.c src/xhr.c src/mod_dns.c src/mod_engine.c src/mod_ffi.c src/mod_fs.c src/mod_fswatch.c src/mod_os.c src/mod_process.c src/mod_sqlite3.c src/mod_streams.c src/mod_sys.c src/mod_udp.c src/bundles/c/core/core.c src/bundles/c/core/polyfills.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c deps/quickjs/cutils.c ) if(UNIX) target_sources(tjs PUBLIC src/mod_posix-socket.c) endif() add_library(ffi-test SHARED tests/fixtures/ffi-test-lib.c ) add_library(sqlite-test SHARED tests/fixtures/sqlite-test-ext.c ) target_link_libraries(sqlite-test sqlite3) if(NOT USE_EXTERNAL_FFI AND NOT MINGW AND NOT APPLE) set(LIBFFI_SRC "${CMAKE_CURRENT_SOURCE_DIR}/deps/libffi") set(TMP_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/ffi_root") if(MINGW) set(LIBFFI_STATIC_PATH ${TMP_INSTALL_DIR}/usr/local/lib/libffi.dll.a) else() set(LIBFFI_STATIC_PATH ${TMP_INSTALL_DIR}/usr/local/lib/libffi.a) endif() ExternalProject_Add( libffi BUILD_IN_SOURCE 1 SOURCE_DIR "${LIBFFI_SRC}" CONFIGURE_COMMAND ./autogen.sh COMMAND ./configure --enable-static=yes --disable-shared --disable-docs --disable-multi-os-directory BUILD_COMMAND make INSTALL_DIR ${TMP_INSTALL_DIR} INSTALL_COMMAND make DESTDIR=${TMP_INSTALL_DIR} install EXCLUDE_FROM_ALL TRUE BUILD_BYPRODUCTS ${LIBFFI_STATIC_PATH} ) add_dependencies(tjs libffi) add_library(libffi_a STATIC IMPORTED) set_target_properties(libffi_a PROPERTIES IMPORTED_LOCATION ${LIBFFI_STATIC_PATH}) target_include_directories(tjs PRIVATE ${TMP_INSTALL_DIR}/usr/local/include) target_link_libraries(tjs libffi_a) else() find_library(FFI_LIB NAMES libffi ffi REQUIRED) find_path(FFI_INCLUDE_DIR NAMES ffi.h PATH_SUFFIXES ffi REQUIRED) target_include_directories(tjs PRIVATE ${FFI_INCLUDE_DIR}) target_link_libraries(tjs ${FFI_LIB}) endif() set_target_properties(tjs PROPERTIES C_STANDARD 11 C_STANDARD_REQUIRED ON ) string(TOLOWER ${CMAKE_SYSTEM_NAME} TJS_PLATFORM) target_compile_options(tjs PRIVATE ${tjs_cflags}) target_compile_definitions(tjs PRIVATE TJS__PLATFORM="${TJS_PLATFORM}") target_include_directories(tjs PUBLIC src) target_link_libraries(tjs qjs uv_a m3 sqlite3 CURL::libcurl) if (BUILD_WITH_MIMALLOC) target_compile_definitions(tjs PRIVATE TJS__HAS_MIMALLOC) target_link_libraries(tjs mimalloc-static) endif() add_executable(tjs-cli src/cli.c ) target_link_libraries(tjs-cli tjs) set_target_properties(tjs-cli PROPERTIES OUTPUT_NAME tjs ) add_executable(tjsc EXCLUDE_FROM_ALL src/qjsc.c ) target_link_libraries(tjsc qjs)
更改后文本
打开文件
cmake_minimum_required(VERSION 3.14) project(tjs LANGUAGES C) include(ExternalProject) include(GNUInstallDirs) if (NOT CMAKE_BUILD_TYPE) message(STATUS "No build type selected, default to Release") set(CMAKE_BUILD_TYPE "Release") endif() message(STATUS "Building in ${CMAKE_BUILD_TYPE} mode") message(STATUS "Building with ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} on ${CMAKE_SYSTEM}") set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_C_EXTENSIONS ON) set(CMAKE_C_STANDARD 11) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) list(APPEND tjs_cflags -Wall -g) if (CMAKE_BUILD_TYPE MATCHES "Debug") list(APPEND tjs_cflags -ggdb -O0 -fno-omit-frame-pointer) endif() set(TJS__VERSION_MAJOR 24) set(TJS__VERSION_MINOR 12) set(TJS__VERSION_PATCH 0) set(TJS__VERSION_SUFFIX "") configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/src/version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/src/version.h" ) macro(cpr_option OPTION_NAME OPTION_TEXT OPTION_DEFAULT) option(${OPTION_NAME} ${OPTION_TEXT} ${OPTION_DEFAULT}) if(DEFINED ENV{${OPTION_NAME}}) # Allow setting the option through an environment variable set(${OPTION_NAME} $ENV{${OPTION_NAME}}) endif() if(${OPTION_NAME}) add_definitions(-D${OPTION_NAME}) endif() message(STATUS " ${OPTION_NAME}: ${${OPTION_NAME}}") endmacro() cpr_option(BUILD_WITH_MIMALLOC "If ON (default), build with mimalloc" ON) cpr_option(USE_EXTERNAL_FFI "Specify to use external ffi dependency" OFF) add_subdirectory(deps/quickjs EXCLUDE_FROM_ALL) option(libuv_buildtests "" OFF) add_subdirectory(deps/libuv EXCLUDE_FROM_ALL) add_subdirectory(deps/sqlite3 EXCLUDE_FROM_ALL) set(BUILD_WASI "simple" CACHE STRING "WASI implementation") add_subdirectory(deps/wasm3 EXCLUDE_FROM_ALL) if(BUILD_WITH_MIMALLOC) option(MI_OVERRIDE "" OFF) option(MI_BUILD_SHARED "" OFF) option(MI_BUILD_STATIC "" ON) option(MI_BUILD_OBJECT "" OFF) option(MI_BUILD_TESTS "" OFF) add_subdirectory(deps/mimalloc EXCLUDE_FROM_ALL) endif() find_package(CURL REQUIRED) add_library(tjs STATIC src/builtins.c src/curl-utils.c src/curl-websocket.c src/error.c src/eval.c src/mem.c src/modules.c src/sha1.c src/signals.c src/timers.c src/utils.c src/version.c src/vm.c src/wasm.c src/worker.c src/ws.c src/xhr.c src/mod_dns.c src/mod_engine.c src/mod_fs.c src/mod_fswatch.c src/mod_os.c src/mod_process.c src/mod_sqlite3.c src/mod_streams.c src/mod_sys.c src/mod_udp.c src/bundles/c/core/core.c src/bundles/c/core/polyfills.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c deps/quickjs/cutils.c ) if(UNIX) target_sources(tjs PUBLIC src/mod_posix-socket.c) endif() set_target_properties(tjs PROPERTIES C_STANDARD 11 C_STANDARD_REQUIRED ON ) string(TOLOWER ${CMAKE_SYSTEM_NAME} TJS_PLATFORM) target_compile_options(tjs PRIVATE ${tjs_cflags}) target_compile_definitions(tjs PRIVATE TJS__PLATFORM="${TJS_PLATFORM}") target_include_directories(tjs PUBLIC src) target_link_libraries(tjs qjs uv_a m3 sqlite3 CURL::libcurl) if (BUILD_WITH_MIMALLOC) target_compile_definitions(tjs PRIVATE TJS__HAS_MIMALLOC) target_link_libraries(tjs mimalloc-static) endif() add_executable(tjs-cli src/cli.c ) target_link_libraries(tjs-cli tjs) set_target_properties(tjs-cli PROPERTIES OUTPUT_NAME tjs ) add_executable(tjsc EXCLUDE_FROM_ALL src/qjsc.c ) target_link_libraries(tjsc qjs)
查找差异