1
0
mirror of https://github.com/falk-werner/webfuse-provider synced 2026-03-02 04:09:18 +00:00

integrated libwf_timer and libwf_jsonrpc into libwebfuse-core

This commit is contained in:
Falk Werner
2020-03-29 17:40:33 +02:00
parent 1d4db34ecb
commit bbdd5a24f5
73 changed files with 426 additions and 929 deletions

View File

@@ -7,17 +7,17 @@ include(GoogleTest)
pkg_check_modules(GMOCK gmock)
add_executable(alltests
lib/wf/jsonrpc/test/wf/jsonrpc/mock_timer_callback.cc
lib/wf/jsonrpc/test/wf/jsonrpc/mock_timer.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_is_request.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_request.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_is_response.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_response.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_server.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_proxy.cc
lib/wf/jsonrpc/test/wf/jsonrpc/test_response_parser.cc
lib/wf/timer/test/wf/timer/test_timepoint.cc
lib/wf/timer/test/wf/timer/test_timer.cc
test/webfuse/tests/core/jsonrpc/mock_timer_callback.cc
test/webfuse/tests/core/jsonrpc/mock_timer.cc
test/webfuse/tests/core/jsonrpc/test_is_request.cc
test/webfuse/tests/core/jsonrpc/test_request.cc
test/webfuse/tests/core/jsonrpc/test_is_response.cc
test/webfuse/tests/core/jsonrpc/test_response.cc
test/webfuse/tests/core/jsonrpc/test_server.cc
test/webfuse/tests/core/jsonrpc/test_proxy.cc
test/webfuse/tests/core/jsonrpc/test_response_parser.cc
test/webfuse/tests/core/timer/test_timepoint.cc
test/webfuse/tests/core/timer/test_timer.cc
test/webfuse/utils/tempdir.cc
test/webfuse/utils/file_utils.cc
test/webfuse/utils/die_if.cc
@@ -50,19 +50,6 @@ add_executable(alltests
test/webfuse/tests/integration/provider.cc
)
target_include_directories(alltests PRIVATE
lib/wf/jsonrpc/include
lib/wf/jsonrpc/src
lib/wf/jsonrpc/test
lib/wf/timer/include
lib/wf/timer/src
${FUSE3_INCLUDE_DIRS}
)
target_compile_options(alltests PUBLIC
${FUSE3_CFLAGS_OTHER}
)
target_link_libraries(alltests PUBLIC
-Wl,--wrap=wf_timer_manager_create
-Wl,--wrap=wf_timer_manager_dispose
@@ -75,8 +62,6 @@ target_link_libraries(alltests PUBLIC
webfuse-adapter-static
webfuse-provider-static
webfuse-core
wf_jsonrpc
wf_timer
${FUSE3_LIBRARIES}
${LWS_LIBRARIES}
${JANSSON_LIBRARIES}
@@ -85,8 +70,8 @@ target_link_libraries(alltests PUBLIC
${GTEST_LIBRARIES}
)
target_include_directories(alltests PUBLIC test lib ${GMOCK_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS})
target_compile_options(alltests PUBLIC ${GMOCK_CFLAGS} ${GTEST_CFLAGS})
target_include_directories(alltests PUBLIC test lib ${FUSE3_INCLUDE_DIRS} ${GMOCK_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS})
target_compile_options(alltests PUBLIC ${FUSE3_CFLAGS_OTHER} ${GMOCK_CFLAGS} ${GTEST_CFLAGS})
enable_testing()
gtest_discover_tests(alltests TEST_PREFIX alltests:)
@@ -102,7 +87,7 @@ add_custom_target(coverage
add_dependencies(coverage alltests)
add_custom_target(coverage-report
COMMAND genhtml --branch-coverage --highlight --legend --prefix "${CMAKE_SOURCE_DIR}" coverage/lcov.info --output-directory coverage/report
COMMAND genhtml --branch-coverage --highlight --legend coverage/lcov.info --output-directory coverage/report
)
add_dependencies(coverage-report coverage)

View File

@@ -26,8 +26,6 @@ add_library(webfuse-adapter-static STATIC
target_include_directories(webfuse-adapter-static PRIVATE
lib
lib/wf/timer/include
lib/wf/jsonrpc/include
${FUSE3_INCLUDE_DIRS}
)
@@ -56,7 +54,7 @@ set_target_properties(webfuse-adapter PROPERTIES SOVERSION 0)
set_target_properties(webfuse-adapter PROPERTIES C_VISIBILITY_PRESET hidden)
set_target_properties(webfuse-adapter PROPERTIES COMPILE_DEFINITIONS "WF_API=WF_EXPORT")
target_link_libraries(webfuse-adapter PRIVATE webfuse-adapter-static webfuse-core wf_jsonrpc wf_timer)
target_link_libraries(webfuse-adapter PRIVATE webfuse-adapter-static webfuse-core)
file(WRITE "${PROJECT_BINARY_DIR}/libwebfuse-adapter.pc"
"prefix=\"${CMAKE_INSTALL_PREFIX}\"

View File

@@ -9,6 +9,16 @@ add_library(webfuse-core STATIC
lib/webfuse/core/base64.c
lib/webfuse/core/lws_log.c
lib/webfuse/core/json_util.c
lib/webfuse/core/timer/manager.c
lib/webfuse/core/timer/timepoint.c
lib/webfuse/core/timer/timer.c
lib/webfuse/core/jsonrpc/proxy.c
lib/webfuse/core/jsonrpc/server.c
lib/webfuse/core/jsonrpc/method.c
lib/webfuse/core/jsonrpc/request.c
lib/webfuse/core/jsonrpc/response.c
lib/webfuse/core/jsonrpc/error.c
)
set_target_properties(webfuse-core PROPERTIES OUTPUT_NAME webfuse-core)

View File

@@ -22,8 +22,6 @@ set_target_properties(webfuse-provider-static PROPERTIES OUTPUT_NAME webfuse-pro
set_target_properties(webfuse-provider-static PROPERTIES C_VISIBILITY_PRESET hidden)
target_include_directories(webfuse-provider-static PRIVATE
lib
lib/wf/timer/include
lib/wf/jsonrpc/include
)
add_library(webfuse-provider SHARED
@@ -36,7 +34,7 @@ set_target_properties(webfuse-provider PROPERTIES C_VISIBILITY_PRESET hidden)
set_target_properties(webfuse-provider PROPERTIES COMPILE_DEFINITIONS "WFP_API=WFP_EXPORT")
target_include_directories(webfuse-provider PUBLIC lib)
target_link_libraries(webfuse-provider PRIVATE webfuse-provider-static webfuse-core wf_jsonrpc wf_timer)
target_link_libraries(webfuse-provider PRIVATE webfuse-provider-static webfuse-core)
file(WRITE "${PROJECT_BINARY_DIR}/libwebfuse-provider.pc"
"prefix=\"${CMAKE_INSTALL_PREFIX}\"

View File

@@ -1,24 +0,0 @@
# wf_jsonrpc
add_library(wf_jsonrpc STATIC
lib/wf/jsonrpc/src/wf/jsonrpc/api.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/proxy.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/server.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/method.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/request.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/response.c
lib/wf/jsonrpc/src/wf/jsonrpc/impl/error.c
)
target_link_libraries(wf_jsonrpc PUBLIC wf_timer)
target_include_directories(wf_jsonrpc PRIVATE
lib/wf/timer/include
lib/wf/jsonrpc/src
)
target_include_directories(wf_jsonrpc PUBLIC
lib/wf/jsonrpc/include
)
set_target_properties(wf_jsonrpc PROPERTIES C_VISIBILITY_PRESET hidden)

View File

@@ -1,18 +0,0 @@
# timer
add_library(wf_timer STATIC
lib/wf/timer/src/wf/timer/api.c
lib/wf/timer/src/wf/timer/impl/manager.c
lib/wf/timer/src/wf/timer/impl/timepoint.c
lib/wf/timer/src/wf/timer/impl/timer.c
)
target_include_directories(wf_timer PRIVATE
lib/wf/timer/src
)
target_include_directories(wf_timer PUBLIC
lib/wf/timer/include
)
set_target_properties(wf_timer PROPERTIES C_VISIBILITY_PRESET hidden)