mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-12-22 16:30:57 +01:00
web_service: Add CMake flag to enable.
This commit is contained in:
parent
8af3ebb149
commit
33b012e86b
5 changed files with 32 additions and 14 deletions
|
@ -11,6 +11,8 @@ option(CITRA_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" OFF)
|
||||||
option(ENABLE_QT "Enable the Qt frontend" ON)
|
option(ENABLE_QT "Enable the Qt frontend" ON)
|
||||||
option(CITRA_USE_BUNDLED_QT "Download bundled Qt binaries" OFF)
|
option(CITRA_USE_BUNDLED_QT "Download bundled Qt binaries" OFF)
|
||||||
|
|
||||||
|
option(ENABLE_WEB_SERVICE "Enable web services (telemetry, etc.)" ON)
|
||||||
|
|
||||||
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/.git/hooks/pre-commit)
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/.git/hooks/pre-commit)
|
||||||
message(STATUS "Copying pre-commit hook")
|
message(STATUS "Copying pre-commit hook")
|
||||||
file(COPY hooks/pre-commit
|
file(COPY hooks/pre-commit
|
||||||
|
@ -223,6 +225,9 @@ if (ENABLE_QT)
|
||||||
find_package(Qt5 REQUIRED COMPONENTS Widgets OpenGL ${QT_PREFIX_HINT})
|
find_package(Qt5 REQUIRED COMPONENTS Widgets OpenGL ${QT_PREFIX_HINT})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (ENABLE_WEB_SERVICE)
|
||||||
|
add_definitions(-DENABLE_WEB_SERVICE)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Platform-specific library requirements
|
# Platform-specific library requirements
|
||||||
# ======================================
|
# ======================================
|
||||||
|
|
22
externals/CMakeLists.txt
vendored
22
externals/CMakeLists.txt
vendored
|
@ -4,12 +4,6 @@
|
||||||
add_library(catch-single-include INTERFACE)
|
add_library(catch-single-include INTERFACE)
|
||||||
target_include_directories(catch-single-include INTERFACE catch/single_include)
|
target_include_directories(catch-single-include INTERFACE catch/single_include)
|
||||||
|
|
||||||
# CPR
|
|
||||||
option(BUILD_TESTING OFF)
|
|
||||||
option(BUILD_CPR_TESTS OFF)
|
|
||||||
add_subdirectory(cpr)
|
|
||||||
target_include_directories(cpr INTERFACE ./cpr/include)
|
|
||||||
|
|
||||||
# Crypto++
|
# Crypto++
|
||||||
add_subdirectory(cryptopp)
|
add_subdirectory(cryptopp)
|
||||||
|
|
||||||
|
@ -34,10 +28,6 @@ add_subdirectory(glad)
|
||||||
# inih
|
# inih
|
||||||
add_subdirectory(inih)
|
add_subdirectory(inih)
|
||||||
|
|
||||||
# JSON
|
|
||||||
add_library(json-headers INTERFACE)
|
|
||||||
target_include_directories(json-headers INTERFACE ./json/src)
|
|
||||||
|
|
||||||
# MicroProfile
|
# MicroProfile
|
||||||
add_library(microprofile INTERFACE)
|
add_library(microprofile INTERFACE)
|
||||||
target_include_directories(microprofile INTERFACE ./microprofile)
|
target_include_directories(microprofile INTERFACE ./microprofile)
|
||||||
|
@ -62,3 +52,15 @@ endif()
|
||||||
# ENet
|
# ENet
|
||||||
add_subdirectory(enet)
|
add_subdirectory(enet)
|
||||||
target_include_directories(enet INTERFACE ./enet/include)
|
target_include_directories(enet INTERFACE ./enet/include)
|
||||||
|
|
||||||
|
if (ENABLE_WEB_SERVICE)
|
||||||
|
# CPR
|
||||||
|
option(BUILD_TESTING OFF)
|
||||||
|
option(BUILD_CPR_TESTS OFF)
|
||||||
|
add_subdirectory(cpr)
|
||||||
|
target_include_directories(cpr INTERFACE ./cpr/include)
|
||||||
|
|
||||||
|
# JSON
|
||||||
|
add_library(json-headers INTERFACE)
|
||||||
|
target_include_directories(json-headers INTERFACE ./json/src)
|
||||||
|
endif()
|
||||||
|
|
|
@ -14,4 +14,6 @@ endif()
|
||||||
if (ENABLE_QT)
|
if (ENABLE_QT)
|
||||||
add_subdirectory(citra_qt)
|
add_subdirectory(citra_qt)
|
||||||
endif()
|
endif()
|
||||||
add_subdirectory(web_service)
|
if (ENABLE_WEB_SERVICE)
|
||||||
|
add_subdirectory(web_service)
|
||||||
|
endif()
|
||||||
|
|
|
@ -386,5 +386,8 @@ set(HEADERS
|
||||||
|
|
||||||
create_directory_groups(${SRCS} ${HEADERS})
|
create_directory_groups(${SRCS} ${HEADERS})
|
||||||
add_library(core STATIC ${SRCS} ${HEADERS})
|
add_library(core STATIC ${SRCS} ${HEADERS})
|
||||||
target_link_libraries(core PUBLIC common PRIVATE audio_core video_core web_service)
|
target_link_libraries(core PUBLIC common PRIVATE audio_core video_core)
|
||||||
target_link_libraries(core PUBLIC Boost::boost PRIVATE cryptopp dynarmic fmt)
|
target_link_libraries(core PUBLIC Boost::boost PRIVATE cryptopp dynarmic fmt)
|
||||||
|
if (ENABLE_WEB_SERVICE)
|
||||||
|
target_link_libraries(core PUBLIC json-headers web_service)
|
||||||
|
endif()
|
||||||
|
|
|
@ -6,13 +6,19 @@
|
||||||
|
|
||||||
#include "common/scm_rev.h"
|
#include "common/scm_rev.h"
|
||||||
#include "core/telemetry_session.h"
|
#include "core/telemetry_session.h"
|
||||||
#include "web_services/telemetry_json.h"
|
|
||||||
|
#ifdef ENABLE_WEB_SERVICE
|
||||||
|
#include "web_service/telemetry_json.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
|
|
||||||
TelemetrySession::TelemetrySession() {
|
TelemetrySession::TelemetrySession() {
|
||||||
|
#ifdef ENABLE_WEB_SERVICE
|
||||||
backend = std::make_unique<WebService::TelemetryJson>();
|
backend = std::make_unique<WebService::TelemetryJson>();
|
||||||
|
#else
|
||||||
|
backend = std::make_unique<Telemetry::NullVisitor>();
|
||||||
|
#endif
|
||||||
// Log one-time session start information
|
// Log one-time session start information
|
||||||
const auto duration{std::chrono::steady_clock::now().time_since_epoch()};
|
const auto duration{std::chrono::steady_clock::now().time_since_epoch()};
|
||||||
const auto start_time{std::chrono::duration_cast<std::chrono::microseconds>(duration).count()};
|
const auto start_time{std::chrono::duration_cast<std::chrono::microseconds>(duration).count()};
|
||||||
|
|
Loading…
Reference in a new issue