mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-19 20:32:15 +02:00
libobs, UI: Add support for beta builds
Allows the ability to specify beta builds in addition to release candidate builds
This commit is contained in:
parent
5be6681687
commit
1655ebf18f
@ -65,21 +65,34 @@ include(GNUInstallDirs)
|
||||
include(CheckCCompilerFlag)
|
||||
include(CheckCXXCompilerFlag)
|
||||
|
||||
# Must be a string in the format of "x.x.x-rcx"
|
||||
set(OBS_RELEASE_CANDIDATE_MAJOR 0)
|
||||
set(OBS_RELEASE_CANDIDATE_MINOR 0)
|
||||
set(OBS_RELEASE_CANDIDATE_PATCH 0)
|
||||
set(OBS_RELEASE_CANDIDATE 0)
|
||||
set(OBS_BETA_MAJOR 0)
|
||||
set(OBS_BETA_MINOR 0)
|
||||
set(OBS_BETA_PATCH 0)
|
||||
set(OBS_BETA 0)
|
||||
|
||||
# Must be a string in the format of "x.x.x-rcx" or "x.x.x-betax"
|
||||
if(DEFINED RELEASE_CANDIDATE)
|
||||
set(OBS_VERSION "${RELEASE_CANDIDATE}")
|
||||
string(REPLACE "-rc" "." RC_SPLIT ${RELEASE_CANDIDATE})
|
||||
string(REPLACE "." ";" RC_SPLIT ${RC_SPLIT})
|
||||
message(WARNING "******************************************************************************\nRelease candidate deteced, OBS_VERSION is now: ${OBS_VERSION}\n******************************************************************************")
|
||||
message(WARNING "******************************************************************************\nRelease candidate detected, OBS_VERSION is now: ${OBS_VERSION}\n******************************************************************************")
|
||||
list(GET RC_SPLIT 0 OBS_RELEASE_CANDIDATE_MAJOR)
|
||||
list(GET RC_SPLIT 1 OBS_RELEASE_CANDIDATE_MINOR)
|
||||
list(GET RC_SPLIT 2 OBS_RELEASE_CANDIDATE_PATCH)
|
||||
list(GET RC_SPLIT 3 OBS_RELEASE_CANDIDATE)
|
||||
else()
|
||||
set(OBS_RELEASE_CANDIDATE_MAJOR 0)
|
||||
set(OBS_RELEASE_CANDIDATE_MINOR 0)
|
||||
set(OBS_RELEASE_CANDIDATE_PATCH 0)
|
||||
set(OBS_RELEASE_CANDIDATE 0)
|
||||
elseif(DEFINED BETA)
|
||||
set(OBS_VERSION "${BETA}")
|
||||
string(REPLACE "-beta" "." BETA_SPLIT ${BETA})
|
||||
string(REPLACE "." ";" BETA_SPLIT ${BETA_SPLIT})
|
||||
message(WARNING "******************************************************************************\nBeta detected, OBS_VERSION is now: ${OBS_VERSION}\n******************************************************************************")
|
||||
list(GET BETA_SPLIT 0 OBS_BETA_MAJOR)
|
||||
list(GET BETA_SPLIT 1 OBS_BETA_MINOR)
|
||||
list(GET BETA_SPLIT 2 OBS_BETA_PATCH)
|
||||
list(GET BETA_SPLIT 3 OBS_BETA)
|
||||
endif()
|
||||
|
||||
# Binary Versioning for Windows
|
||||
|
@ -2119,6 +2119,7 @@ void OBSBasic::ReceivedIntroJson(const QString &text)
|
||||
const std::string &version = item["version"].string_value();
|
||||
const std::string &url = item["url"].string_value();
|
||||
int increment = item["increment"].int_value();
|
||||
int beta = item["Beta"].int_value();
|
||||
int rc = item["RC"].int_value();
|
||||
|
||||
int major = 0;
|
||||
@ -2129,9 +2130,12 @@ void OBSBasic::ReceivedIntroJson(const QString &text)
|
||||
if (major == OBS_RELEASE_CANDIDATE_MAJOR &&
|
||||
minor == OBS_RELEASE_CANDIDATE_MINOR &&
|
||||
rc == OBS_RELEASE_CANDIDATE) {
|
||||
#elif OBS_BETA > 0
|
||||
if (major == OBS_BETA_MAJOR && minor == OBS_BETA_MINOR &&
|
||||
beta == OBS_BETA) {
|
||||
#else
|
||||
if (major == LIBOBS_API_MAJOR_VER &&
|
||||
minor == LIBOBS_API_MINOR_VER && rc == 0) {
|
||||
minor == LIBOBS_API_MINOR_VER && rc == 0 && beta == 0) {
|
||||
#endif
|
||||
info_url = url;
|
||||
info_increment = increment;
|
||||
@ -2146,6 +2150,9 @@ void OBSBasic::ReceivedIntroJson(const QString &text)
|
||||
#if OBS_RELEASE_CANDIDATE > 0
|
||||
uint32_t lastVersion = config_get_int(App()->GlobalConfig(), "General",
|
||||
"LastRCVersion");
|
||||
#elif OBS_BETA > 0
|
||||
uint32_t lastVersion = config_get_int(App()->GlobalConfig(), "General",
|
||||
"LastBetaVersion");
|
||||
#else
|
||||
uint32_t lastVersion =
|
||||
config_get_int(App()->GlobalConfig(), "General", "LastVersion");
|
||||
@ -2155,6 +2162,8 @@ void OBSBasic::ReceivedIntroJson(const QString &text)
|
||||
|
||||
#if OBS_RELEASE_CANDIDATE > 0
|
||||
if (lastVersion < OBS_RELEASE_CANDIDATE_VER) {
|
||||
#elif OBS_BETA > 0
|
||||
if (lastVersion < OBS_BETA_VER) {
|
||||
#else
|
||||
if ((lastVersion & ~0xFFFF) < (LIBOBS_API_VER & ~0xFFFF)) {
|
||||
#endif
|
||||
@ -2173,7 +2182,9 @@ void OBSBasic::ReceivedIntroJson(const QString &text)
|
||||
info_increment);
|
||||
|
||||
/* Don't show What's New dialog for new users */
|
||||
#if !defined(OBS_RELEASE_CANDIDATE) || OBS_RELEASE_CANDIDATE == 0
|
||||
#if !defined(OBS_RELEASE_CANDIDATE) || OBS_RELEASE_CANDIDATE == 0 || \
|
||||
!defined(OBS_BETA) || OBS_BETA == 0
|
||||
|
||||
if (!lastVersion) {
|
||||
return;
|
||||
}
|
||||
@ -2645,6 +2656,9 @@ OBSBasic::~OBSBasic()
|
||||
#if OBS_RELEASE_CANDIDATE > 0
|
||||
config_set_int(App()->GlobalConfig(), "General", "LastRCVersion",
|
||||
OBS_RELEASE_CANDIDATE_VER);
|
||||
#elif OBS_BETA > 0
|
||||
config_set_int(App()->GlobalConfig(), "General", "LastBetaVersion",
|
||||
OBS_BETA_VER);
|
||||
#endif
|
||||
|
||||
bool alwaysOnTop = IsAlwaysOnTop(this);
|
||||
|
@ -63,6 +63,11 @@
|
||||
#define OBS_RELEASE_CANDIDATE_PATCH 0
|
||||
#define OBS_RELEASE_CANDIDATE_VER 0
|
||||
#define OBS_RELEASE_CANDIDATE 0
|
||||
#define OBS_BETA_MAJOR 0
|
||||
#define OBS_BETA_MINOR 0
|
||||
#define OBS_BETA_PATCH 0
|
||||
#define OBS_BETA_VER 0
|
||||
#define OBS_BETA 0
|
||||
#endif
|
||||
|
||||
#define OBS_INSTALL_DATA_PATH OBS_INSTALL_PREFIX OBS_DATA_PATH
|
||||
|
@ -40,3 +40,13 @@
|
||||
OBS_RELEASE_CANDIDATE_MINOR, \
|
||||
OBS_RELEASE_CANDIDATE_PATCH)
|
||||
#define OBS_RELEASE_CANDIDATE @OBS_RELEASE_CANDIDATE@
|
||||
|
||||
/* Same thing for beta builds */
|
||||
#define OBS_BETA_MAJOR @OBS_BETA_MAJOR@
|
||||
#define OBS_BETA_MINOR @OBS_BETA_MINOR@
|
||||
#define OBS_BETA_PATCH @OBS_BETA_PATCH@
|
||||
#define OBS_BETA_VER \
|
||||
MAKE_SEMANTIC_VERSION(OBS_BETA_MAJOR, \
|
||||
OBS_BETA_MINOR, \
|
||||
OBS_BETA_PATCH)
|
||||
#define OBS_BETA @OBS_BETA@
|
||||
|
Loading…
Reference in New Issue
Block a user