summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2019-10-05 19:29:35 -0400
committerGravatar GitHub2019-10-05 19:29:35 -0400
commit6f511c8006f73206519731db8bd7117fb629b56f (patch)
tree19d08b8008c7171da99e28ba1882032d2e9371b6
parentMerge pull request #2944 from lioncash/ast (diff)
parentqt: Change titlebar formatting (diff)
downloadyuzu-6f511c8006f73206519731db8bd7117fb629b56f.tar.gz
yuzu-6f511c8006f73206519731db8bd7117fb629b56f.tar.xz
yuzu-6f511c8006f73206519731db8bd7117fb629b56f.zip
Merge pull request #2943 from DarkLordZach/azure-titlebars-v2
ci: Add custom titlebars for mainline and patreon
-rw-r--r--.ci/scripts/linux/docker.sh2
-rw-r--r--.ci/scripts/linux/exec.sh2
-rw-r--r--.ci/scripts/windows/docker.sh2
-rw-r--r--.ci/scripts/windows/exec.sh2
-rw-r--r--.ci/templates/build-msvc.yml3
-rw-r--r--.ci/templates/build-single.yml3
-rw-r--r--.ci/templates/build-standard.yml6
-rw-r--r--.ci/templates/build-testing.yml4
-rw-r--r--.ci/yuzu-mainline-step2.yml5
-rw-r--r--.ci/yuzu-patreon-step2.yml4
-rw-r--r--src/common/CMakeLists.txt12
-rw-r--r--src/common/scm_rev.cpp.in6
-rw-r--r--src/common/scm_rev.h3
-rw-r--r--src/yuzu/main.cpp21
14 files changed, 62 insertions, 13 deletions
diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh
index 296b14e56..090ca75f1 100644
--- a/.ci/scripts/linux/docker.sh
+++ b/.ci/scripts/linux/docker.sh
@@ -5,7 +5,7 @@ cd /yuzu
5ccache -s 5ccache -s
6 6
7mkdir build || true && cd build 7mkdir build || true && cd build
8cmake .. -G Ninja -DYUZU_USE_BUNDLED_UNICORN=ON -DYUZU_USE_QT_WEB_ENGINE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${ENABLE_COMPATIBILITY_REPORTING:-"OFF"} -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DUSE_DISCORD_PRESENCE=ON 8cmake .. -G Ninja -DDISPLAY_VERSION=$1 -DYUZU_USE_BUNDLED_UNICORN=ON -DYUZU_USE_QT_WEB_ENGINE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${ENABLE_COMPATIBILITY_REPORTING:-"OFF"} -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DUSE_DISCORD_PRESENCE=ON
9 9
10ninja 10ninja
11 11
diff --git a/.ci/scripts/linux/exec.sh b/.ci/scripts/linux/exec.sh
index a5a6c34b9..9fafa9208 100644
--- a/.ci/scripts/linux/exec.sh
+++ b/.ci/scripts/linux/exec.sh
@@ -2,4 +2,4 @@
2 2
3mkdir -p "ccache" || true 3mkdir -p "ccache" || true
4chmod a+x ./.ci/scripts/linux/docker.sh 4chmod a+x ./.ci/scripts/linux/docker.sh
5docker run -e ENABLE_COMPATIBILITY_REPORTING -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-fresh /bin/bash /yuzu/.ci/scripts/linux/docker.sh 5docker run -e ENABLE_COMPATIBILITY_REPORTING -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-fresh /bin/bash /yuzu/.ci/scripts/linux/docker.sh $1
diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh
index f7093363b..e8f26933a 100644
--- a/.ci/scripts/windows/docker.sh
+++ b/.ci/scripts/windows/docker.sh
@@ -13,7 +13,7 @@ echo '' >> /bin/cmd
13chmod +x /bin/cmd 13chmod +x /bin/cmd
14 14
15mkdir build || true && cd build 15mkdir build || true && cd build
16cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE="$(pwd)/../CMakeModules/MinGWCross.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_UNICORN=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DCMAKE_BUILD_TYPE=Release 16cmake .. -G Ninja -DDISPLAY_VERSION=$1 -DCMAKE_TOOLCHAIN_FILE="$(pwd)/../CMakeModules/MinGWCross.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_UNICORN=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DCMAKE_BUILD_TYPE=Release
17ninja 17ninja
18 18
19# Clean up the dirty hacks 19# Clean up the dirty hacks
diff --git a/.ci/scripts/windows/exec.sh b/.ci/scripts/windows/exec.sh
index d6a994856..4155ed5fc 100644
--- a/.ci/scripts/windows/exec.sh
+++ b/.ci/scripts/windows/exec.sh
@@ -2,4 +2,4 @@
2 2
3mkdir -p "ccache" || true 3mkdir -p "ccache" || true
4chmod a+x ./.ci/scripts/windows/docker.sh 4chmod a+x ./.ci/scripts/windows/docker.sh
5docker run -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-mingw /bin/bash -ex /yuzu/.ci/scripts/windows/docker.sh 5docker run -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-mingw /bin/bash -ex /yuzu/.ci/scripts/windows/docker.sh $1
diff --git a/.ci/templates/build-msvc.yml b/.ci/templates/build-msvc.yml
index 906afa382..b44a08247 100644
--- a/.ci/templates/build-msvc.yml
+++ b/.ci/templates/build-msvc.yml
@@ -1,9 +1,10 @@
1parameters: 1parameters:
2 artifactSource: 'true' 2 artifactSource: 'true'
3 cache: 'false' 3 cache: 'false'
4 version: ''
4 5
5steps: 6steps:
6- script: mkdir build && cd build && set DATE=`date '+%Y.%m.%d'` && set CI=true && set AZURE_REPO_NAME=yuzu-emu/yuzu-$(BuildName) && set AZURE_REPO_TAG=$(BuildName)-$DATE && cmake -G "Visual Studio 15 2017 Win64" --config Release -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_BUNDLED_UNICORN=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DUSE_DISCORD_PRESENCE=ON .. && cd .. 7- script: mkdir build && cd build && cmake -G "Visual Studio 15 2017 Win64" --config Release -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_BUNDLED_UNICORN=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DUSE_DISCORD_PRESENCE=ON -DDISPLAY_VERSION=${{ parameters['version'] }} .. && cd ..
7 displayName: 'Configure CMake' 8 displayName: 'Configure CMake'
8- task: MSBuild@1 9- task: MSBuild@1
9 displayName: 'Build' 10 displayName: 'Build'
diff --git a/.ci/templates/build-single.yml b/.ci/templates/build-single.yml
index 002f5d24f..7b27693be 100644
--- a/.ci/templates/build-single.yml
+++ b/.ci/templates/build-single.yml
@@ -1,6 +1,7 @@
1parameters: 1parameters:
2 artifactSource: 'true' 2 artifactSource: 'true'
3 cache: 'false' 3 cache: 'false'
4 version: ''
4 5
5steps: 6steps:
6- task: DockerInstaller@0 7- task: DockerInstaller@0
@@ -13,7 +14,7 @@ steps:
13 key: yuzu-v1-$(BuildName)-$(BuildSuffix)-$(CacheSuffix) 14 key: yuzu-v1-$(BuildName)-$(BuildSuffix)-$(CacheSuffix)
14 path: $(System.DefaultWorkingDirectory)/ccache 15 path: $(System.DefaultWorkingDirectory)/ccache
15 cacheHitVar: CACHE_RESTORED 16 cacheHitVar: CACHE_RESTORED
16- script: export DATE=`date '+%Y.%m.%d'` && export CI=true && export AZURE_REPO_NAME=yuzu-emu/yuzu-$(BuildName) && export AZURE_REPO_TAG=$(BuildName)-$DATE && chmod a+x ./.ci/scripts/$(ScriptFolder)/exec.sh && ./.ci/scripts/$(ScriptFolder)/exec.sh 17- script: chmod a+x ./.ci/scripts/$(ScriptFolder)/exec.sh && ./.ci/scripts/$(ScriptFolder)/exec.sh ${{ parameters['version'] }}
17 displayName: 'Build' 18 displayName: 'Build'
18- script: chmod a+x ./.ci/scripts/$(ScriptFolder)/upload.sh && RELEASE_NAME=$(BuildName) ./.ci/scripts/$(ScriptFolder)/upload.sh 19- script: chmod a+x ./.ci/scripts/$(ScriptFolder)/upload.sh && RELEASE_NAME=$(BuildName) ./.ci/scripts/$(ScriptFolder)/upload.sh
19 displayName: 'Package Artifacts' 20 displayName: 'Package Artifacts'
diff --git a/.ci/templates/build-standard.yml b/.ci/templates/build-standard.yml
index aa180894e..7422c8346 100644
--- a/.ci/templates/build-standard.yml
+++ b/.ci/templates/build-standard.yml
@@ -1,3 +1,6 @@
1parameters:
2 version: ''
3
1jobs: 4jobs:
2- job: build 5- job: build
3 displayName: 'standard' 6 displayName: 'standard'
@@ -20,4 +23,5 @@ jobs:
20 - template: ./build-single.yml 23 - template: ./build-single.yml
21 parameters: 24 parameters:
22 artifactSource: 'false' 25 artifactSource: 'false'
23 cache: $(parameters.cache) \ No newline at end of file 26 cache: $(parameters.cache)
27 version: $(parameters.version) \ No newline at end of file
diff --git a/.ci/templates/build-testing.yml b/.ci/templates/build-testing.yml
index 4c9625944..30c8aaac3 100644
--- a/.ci/templates/build-testing.yml
+++ b/.ci/templates/build-testing.yml
@@ -1,3 +1,6 @@
1parameters:
2 version: ''
3
1jobs: 4jobs:
2- job: build_test 5- job: build_test
3 displayName: 'testing' 6 displayName: 'testing'
@@ -31,3 +34,4 @@ jobs:
31 parameters: 34 parameters:
32 artifactSource: 'false' 35 artifactSource: 'false'
33 cache: 'false' 36 cache: 'false'
37 version: $(parameters.version) \ No newline at end of file
diff --git a/.ci/yuzu-mainline-step2.yml b/.ci/yuzu-mainline-step2.yml
index 0c1af397b..a098f0a4e 100644
--- a/.ci/yuzu-mainline-step2.yml
+++ b/.ci/yuzu-mainline-step2.yml
@@ -1,6 +1,9 @@
1trigger: 1trigger:
2- master 2- master
3 3
4variables:
5 DisplayVersion: $[counter(variables['DisplayPrefix'], 1)]
6
4stages: 7stages:
5- stage: format 8- stage: format
6 displayName: 'format' 9 displayName: 'format'
@@ -34,6 +37,7 @@ stages:
34 parameters: 37 parameters:
35 artifactSource: 'false' 38 artifactSource: 'false'
36 cache: 'true' 39 cache: 'true'
40 version: $(DisplayVersion)
37- stage: build_win 41- stage: build_win
38 dependsOn: format 42 dependsOn: format
39 displayName: 'build-windows' 43 displayName: 'build-windows'
@@ -51,6 +55,7 @@ stages:
51 parameters: 55 parameters:
52 artifactSource: 'false' 56 artifactSource: 'false'
53 cache: 'true' 57 cache: 'true'
58 version: $(DisplayVersion)
54- stage: release 59- stage: release
55 displayName: 'Release' 60 displayName: 'Release'
56 dependsOn: 61 dependsOn:
diff --git a/.ci/yuzu-patreon-step2.yml b/.ci/yuzu-patreon-step2.yml
index 23e45d9dd..6c628350f 100644
--- a/.ci/yuzu-patreon-step2.yml
+++ b/.ci/yuzu-patreon-step2.yml
@@ -1,6 +1,9 @@
1trigger: 1trigger:
2- master 2- master
3 3
4variables:
5 DisplayVersion: $[counter(variables['DisplayPrefix'], 1)]
6
4stages: 7stages:
5- stage: format 8- stage: format
6 displayName: 'format' 9 displayName: 'format'
@@ -28,3 +31,4 @@ stages:
28 parameters: 31 parameters:
29 artifactSource: 'false' 32 artifactSource: 'false'
30 cache: $(parameters.cache) 33 cache: $(parameters.cache)
34 version: $(DisplayVersion)
diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt
index 0ed96c0d4..906c486fd 100644
--- a/src/common/CMakeLists.txt
+++ b/src/common/CMakeLists.txt
@@ -15,11 +15,23 @@ if (DEFINED ENV{CI})
15 set(BUILD_TAG $ENV{AZURE_REPO_TAG}) 15 set(BUILD_TAG $ENV{AZURE_REPO_TAG})
16 endif() 16 endif()
17endif() 17endif()
18if (DEFINED ENV{TITLEBARFORMATIDLE})
19 set(TITLE_BAR_FORMAT_IDLE $ENV{TITLEBARFORMATIDLE})
20endif ()
21if (DEFINED ENV{TITLEBARFORMATRUNNING})
22 set(TITLE_BAR_FORMAT_RUNNING $ENV{TITLEBARFORMATRUNNING})
23endif ()
24if (DEFINED ENV{DISPLAYVERSION})
25 set(DISPLAY_VERSION $ENV{DISPLAYVERSION})
26endif ()
18add_custom_command(OUTPUT scm_rev.cpp 27add_custom_command(OUTPUT scm_rev.cpp
19 COMMAND ${CMAKE_COMMAND} 28 COMMAND ${CMAKE_COMMAND}
20 -DSRC_DIR="${CMAKE_SOURCE_DIR}" 29 -DSRC_DIR="${CMAKE_SOURCE_DIR}"
21 -DBUILD_REPOSITORY="${BUILD_REPOSITORY}" 30 -DBUILD_REPOSITORY="${BUILD_REPOSITORY}"
31 -DTITLE_BAR_FORMAT_IDLE="${TITLE_BAR_FORMAT_IDLE}"
32 -DTITLE_BAR_FORMAT_RUNNING="${TITLE_BAR_FORMAT_RUNNING}"
22 -DBUILD_TAG="${BUILD_TAG}" 33 -DBUILD_TAG="${BUILD_TAG}"
34 -DBUILD_ID="${DISPLAY_VERSION}"
23 -P "${CMAKE_SOURCE_DIR}/CMakeModules/GenerateSCMRev.cmake" 35 -P "${CMAKE_SOURCE_DIR}/CMakeModules/GenerateSCMRev.cmake"
24 DEPENDS 36 DEPENDS
25 # WARNING! It was too much work to try and make a common location for this list, 37 # WARNING! It was too much work to try and make a common location for this list,
diff --git a/src/common/scm_rev.cpp.in b/src/common/scm_rev.cpp.in
index d69038f65..5f126f324 100644
--- a/src/common/scm_rev.cpp.in
+++ b/src/common/scm_rev.cpp.in
@@ -11,6 +11,9 @@
11#define BUILD_DATE "@BUILD_DATE@" 11#define BUILD_DATE "@BUILD_DATE@"
12#define BUILD_FULLNAME "@BUILD_FULLNAME@" 12#define BUILD_FULLNAME "@BUILD_FULLNAME@"
13#define BUILD_VERSION "@BUILD_VERSION@" 13#define BUILD_VERSION "@BUILD_VERSION@"
14#define BUILD_ID "@BUILD_ID@"
15#define TITLE_BAR_FORMAT_IDLE "@TITLE_BAR_FORMAT_IDLE@"
16#define TITLE_BAR_FORMAT_RUNNING "@TITLE_BAR_FORMAT_RUNNING@"
14#define SHADER_CACHE_VERSION "@SHADER_CACHE_VERSION@" 17#define SHADER_CACHE_VERSION "@SHADER_CACHE_VERSION@"
15 18
16namespace Common { 19namespace Common {
@@ -22,6 +25,9 @@ const char g_build_name[] = BUILD_NAME;
22const char g_build_date[] = BUILD_DATE; 25const char g_build_date[] = BUILD_DATE;
23const char g_build_fullname[] = BUILD_FULLNAME; 26const char g_build_fullname[] = BUILD_FULLNAME;
24const char g_build_version[] = BUILD_VERSION; 27const char g_build_version[] = BUILD_VERSION;
28const char g_build_id[] = BUILD_ID;
29const char g_title_bar_format_idle[] = TITLE_BAR_FORMAT_IDLE;
30const char g_title_bar_format_running[] = TITLE_BAR_FORMAT_RUNNING;
25const char g_shader_cache_version[] = SHADER_CACHE_VERSION; 31const char g_shader_cache_version[] = SHADER_CACHE_VERSION;
26 32
27} // namespace 33} // namespace
diff --git a/src/common/scm_rev.h b/src/common/scm_rev.h
index 666bf0367..563015ec9 100644
--- a/src/common/scm_rev.h
+++ b/src/common/scm_rev.h
@@ -13,6 +13,9 @@ extern const char g_build_name[];
13extern const char g_build_date[]; 13extern const char g_build_date[];
14extern const char g_build_fullname[]; 14extern const char g_build_fullname[];
15extern const char g_build_version[]; 15extern const char g_build_version[];
16extern const char g_build_id[];
17extern const char g_title_bar_format_idle[];
18extern const char g_title_bar_format_running[];
16extern const char g_shader_cache_version[]; 19extern const char g_shader_cache_version[];
17 20
18} // namespace Common 21} // namespace Common
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 2d82df739..197e704b4 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -1889,15 +1889,24 @@ void GMainWindow::OnCaptureScreenshot() {
1889} 1889}
1890 1890
1891void GMainWindow::UpdateWindowTitle(const QString& title_name) { 1891void GMainWindow::UpdateWindowTitle(const QString& title_name) {
1892 const QString full_name = QString::fromUtf8(Common::g_build_fullname); 1892 const auto full_name = std::string(Common::g_build_fullname);
1893 const QString branch_name = QString::fromUtf8(Common::g_scm_branch); 1893 const auto branch_name = std::string(Common::g_scm_branch);
1894 const QString description = QString::fromUtf8(Common::g_scm_desc); 1894 const auto description = std::string(Common::g_scm_desc);
1895 const auto build_id = std::string(Common::g_build_id);
1896
1897 const auto date =
1898 QDateTime::currentDateTime().toString(QStringLiteral("yyyy-MM-dd")).toStdString();
1895 1899
1896 if (title_name.isEmpty()) { 1900 if (title_name.isEmpty()) {
1897 setWindowTitle(QStringLiteral("yuzu %1| %2-%3").arg(full_name, branch_name, description)); 1901 const auto fmt = std::string(Common::g_title_bar_format_idle);
1902 setWindowTitle(QString::fromStdString(fmt::format(fmt.empty() ? "yuzu {0}| {1}-{2}" : fmt,
1903 full_name, branch_name, description,
1904 std::string{}, date, build_id)));
1898 } else { 1905 } else {
1899 setWindowTitle(QStringLiteral("yuzu %1| %4 | %2-%3") 1906 const auto fmt = std::string(Common::g_title_bar_format_idle);
1900 .arg(full_name, branch_name, description, title_name)); 1907 setWindowTitle(QString::fromStdString(
1908 fmt::format(fmt.empty() ? "yuzu {0}| {3} | {1}-{2}" : fmt, full_name, branch_name,
1909 description, std::string{}, date, build_id)));
1901 } 1910 }
1902} 1911}
1903 1912