Merge remote-tracking branch 'sunshine/master'
This commit is contained in:
@@ -15,14 +15,19 @@ if(BOOST_USE_STATIC)
|
|||||||
set(Boost_USE_STATIC_LIBS ON) # cmake-lint: disable=C0103
|
set(Boost_USE_STATIC_LIBS ON) # cmake-lint: disable=C0103
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.30")
|
||||||
|
cmake_policy(SET CMP0167 NEW) # Get BoostConfig.cmake from upstream
|
||||||
|
endif()
|
||||||
find_package(Boost CONFIG ${BOOST_VERSION} COMPONENTS ${BOOST_COMPONENTS})
|
find_package(Boost CONFIG ${BOOST_VERSION} COMPONENTS ${BOOST_COMPONENTS})
|
||||||
if(NOT Boost_FOUND)
|
if(NOT Boost_FOUND)
|
||||||
message(STATUS "Boost v${BOOST_VERSION}.x package not found in the system. Falling back to FetchContent.")
|
message(STATUS "Boost v${BOOST_VERSION}.x package not found in the system. Falling back to FetchContent.")
|
||||||
include(FetchContent)
|
include(FetchContent)
|
||||||
|
|
||||||
# Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24:
|
|
||||||
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
|
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
|
||||||
cmake_policy(SET CMP0135 NEW)
|
cmake_policy(SET CMP0135 NEW) # Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24
|
||||||
|
endif()
|
||||||
|
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.31.0")
|
||||||
|
cmake_policy(SET CMP0174 NEW) # Handle empty variables
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# more components required for compiling boost targets
|
# more components required for compiling boost targets
|
||||||
|
|||||||
@@ -8,6 +8,13 @@ if(NOT nlohmann_json_FOUND)
|
|||||||
message(STATUS "nlohmann_json v3.11.x package not found in the system. Falling back to FetchContent.")
|
message(STATUS "nlohmann_json v3.11.x package not found in the system. Falling back to FetchContent.")
|
||||||
include(FetchContent)
|
include(FetchContent)
|
||||||
|
|
||||||
|
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
|
||||||
|
cmake_policy(SET CMP0135 NEW) # Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24
|
||||||
|
endif()
|
||||||
|
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.31.0")
|
||||||
|
cmake_policy(SET CMP0174 NEW) # Handle empty variables
|
||||||
|
endif()
|
||||||
|
|
||||||
FetchContent_Declare(
|
FetchContent_Declare(
|
||||||
json
|
json
|
||||||
URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz
|
URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
#include "nvenc/nvenc_config.h"
|
#include "nvenc/nvenc_config.h"
|
||||||
|
|
||||||
namespace config {
|
namespace config {
|
||||||
|
// track modified config options
|
||||||
|
inline std::unordered_map<std::string, std::string> modified_config_settings;
|
||||||
|
|
||||||
struct video_t {
|
struct video_t {
|
||||||
bool headless_mode;
|
bool headless_mode;
|
||||||
bool limit_framerate;
|
bool limit_framerate;
|
||||||
|
|||||||
12
src/main.cpp
12
src/main.cpp
@@ -108,6 +108,11 @@ int main(int argc, char *argv[]) {
|
|||||||
|
|
||||||
mail::man = std::make_shared<safe::mail_raw_t>();
|
mail::man = std::make_shared<safe::mail_raw_t>();
|
||||||
|
|
||||||
|
// parse config file
|
||||||
|
if (config::parse(argc, argv)) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
auto log_deinit_guard = logging::init(config::sunshine.min_log_level, config::sunshine.log_file);
|
auto log_deinit_guard = logging::init(config::sunshine.min_log_level, config::sunshine.log_file);
|
||||||
if (!log_deinit_guard) {
|
if (!log_deinit_guard) {
|
||||||
BOOST_LOG(error) << "Logging failed to initialize"sv;
|
BOOST_LOG(error) << "Logging failed to initialize"sv;
|
||||||
@@ -121,10 +126,11 @@ int main(int argc, char *argv[]) {
|
|||||||
// Log publisher metadata
|
// Log publisher metadata
|
||||||
log_publisher_data();
|
log_publisher_data();
|
||||||
|
|
||||||
// parse config file
|
// Log modified_config_settings
|
||||||
if (config::parse(argc, argv)) {
|
for (auto &[name, val] : config::modified_config_settings) {
|
||||||
return 0;
|
BOOST_LOG(info) << "config: '"sv << name << "' = "sv << val;
|
||||||
}
|
}
|
||||||
|
config::modified_config_settings.clear();
|
||||||
|
|
||||||
if (!config::sunshine.cmd.name.empty()) {
|
if (!config::sunshine.cmd.name.empty()) {
|
||||||
auto fn = cmd_to_func.find(config::sunshine.cmd.name);
|
auto fn = cmd_to_func.find(config::sunshine.cmd.name);
|
||||||
|
|||||||
2
third-party/Simple-Web-Server
vendored
2
third-party/Simple-Web-Server
vendored
Submodule third-party/Simple-Web-Server updated: ab36f1576b...5b29c7004c
2
third-party/wayland-protocols
vendored
2
third-party/wayland-protocols
vendored
Submodule third-party/wayland-protocols updated: c7b582cb71...4313a51a17
2
third-party/wlr-protocols
vendored
2
third-party/wlr-protocols
vendored
Submodule third-party/wlr-protocols updated: ffb89ac790...2ec67ebd26
@@ -1,4 +1,4 @@
|
|||||||
cmake_minimum_required(VERSION 3.0)
|
cmake_minimum_required(VERSION 3.20)
|
||||||
|
|
||||||
project(sunshine_tools)
|
project(sunshine_tools)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user