summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-x.ci/scripts/clang/docker.sh1
-rwxr-xr-x.ci/scripts/linux/docker.sh1
-rw-r--r--.ci/templates/build-msvc.yml4
-rw-r--r--.github/workflows/verify.yml3
-rw-r--r--.gitmodules3
-rw-r--r--CMakeLists.txt10
m---------externals/vcpkg0
-rw-r--r--vcpkg.json29
8 files changed, 44 insertions, 7 deletions
diff --git a/.ci/scripts/clang/docker.sh b/.ci/scripts/clang/docker.sh
index e9719645c..db736f72b 100755
--- a/.ci/scripts/clang/docker.sh
+++ b/.ci/scripts/clang/docker.sh
@@ -11,7 +11,6 @@ cmake .. \
11 -DCMAKE_CXX_COMPILER=/usr/lib/ccache/clang++ \ 11 -DCMAKE_CXX_COMPILER=/usr/lib/ccache/clang++ \
12 -DCMAKE_C_COMPILER=/usr/lib/ccache/clang \ 12 -DCMAKE_C_COMPILER=/usr/lib/ccache/clang \
13 -DCMAKE_INSTALL_PREFIX="/usr" \ 13 -DCMAKE_INSTALL_PREFIX="/usr" \
14 -DCMAKE_TOOLCHAIN_FILE=${VCPKG_TOOLCHAIN_FILE} \
15 -DDISPLAY_VERSION=$1 \ 14 -DDISPLAY_VERSION=$1 \
16 -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \ 15 -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \
17 -DENABLE_QT_TRANSLATION=ON \ 16 -DENABLE_QT_TRANSLATION=ON \
diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh
index d4787f684..436155b3d 100755
--- a/.ci/scripts/linux/docker.sh
+++ b/.ci/scripts/linux/docker.sh
@@ -12,7 +12,6 @@ cmake .. \
12 -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ \ 12 -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ \
13 -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc \ 13 -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc \
14 -DCMAKE_INSTALL_PREFIX="/usr" \ 14 -DCMAKE_INSTALL_PREFIX="/usr" \
15 -DCMAKE_TOOLCHAIN_FILE=${VCPKG_TOOLCHAIN_FILE} \
16 -DDISPLAY_VERSION=$1 \ 15 -DDISPLAY_VERSION=$1 \
17 -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \ 16 -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \
18 -DENABLE_QT_TRANSLATION=ON \ 17 -DENABLE_QT_TRANSLATION=ON \
diff --git a/.ci/templates/build-msvc.yml b/.ci/templates/build-msvc.yml
index cca3189fa..5d2e86179 100644
--- a/.ci/templates/build-msvc.yml
+++ b/.ci/templates/build-msvc.yml
@@ -6,9 +6,7 @@ parameters:
6steps: 6steps:
7- script: choco install vulkan-sdk 7- script: choco install vulkan-sdk
8 displayName: 'Install vulkan-sdk' 8 displayName: 'Install vulkan-sdk'
9- script: python -m pip install --upgrade pip conan 9- script: refreshenv && mkdir build && cd build && cmake -G "Visual Studio 17 2022" -A x64 -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DYUZU_TESTS=OFF -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DDISPLAY_VERSION=${{ parameters['version'] }} -DCMAKE_BUILD_TYPE=Release -DYUZU_TESTS=OFF -DYUZU_USE_BUNDLED_VCPKG=ON .. && cd ..
10 displayName: 'Install conan'
11- script: refreshenv && mkdir build && cd build && cmake -G "Visual Studio 17 2022" -A x64 -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DYUZU_TESTS=OFF -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DDISPLAY_VERSION=${{ parameters['version'] }} -DCMAKE_BUILD_TYPE=Release .. && cd ..
12 displayName: 'Configure CMake' 10 displayName: 'Configure CMake'
13- task: MSBuild@1 11- task: MSBuild@1
14 displayName: 'Build' 12 displayName: 'Build'
diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml
index c1886b9f3..88e3a9a72 100644
--- a/.github/workflows/verify.yml
+++ b/.github/workflows/verify.yml
@@ -80,7 +80,6 @@ jobs:
80 shell: cmd 80 shell: cmd
81 run: | 81 run: |
82 choco install vulkan-sdk wget 82 choco install vulkan-sdk wget
83 python -m pip install --upgrade pip conan
84 call refreshenv 83 call refreshenv
85 wget https://github.com/mbitsnbites/buildcache/releases/download/v0.27.6/buildcache-windows.zip 84 wget https://github.com/mbitsnbites/buildcache/releases/download/v0.27.6/buildcache-windows.zip
86 7z x buildcache-windows.zip 85 7z x buildcache-windows.zip
@@ -100,7 +99,7 @@ jobs:
100 run: | 99 run: |
101 glslangValidator --version 100 glslangValidator --version
102 mkdir build 101 mkdir build
103 cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release 102 cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DYUZU_TESTS=OFF -DYUZU_USE_BUNDLED_VCPKG=ON
104 - name: Build 103 - name: Build
105 run: cmake --build build 104 run: cmake --build build
106 - name: Cache Summary 105 - name: Cache Summary
diff --git a/.gitmodules b/.gitmodules
index dc92d0a4b..846e41d26 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -40,3 +40,6 @@
40[submodule "externals/ffmpeg/ffmpeg"] 40[submodule "externals/ffmpeg/ffmpeg"]
41 path = externals/ffmpeg/ffmpeg 41 path = externals/ffmpeg/ffmpeg
42 url = https://git.ffmpeg.org/ffmpeg.git 42 url = https://git.ffmpeg.org/ffmpeg.git
43[submodule "externals/vcpkg"]
44 path = externals/vcpkg
45 url = https://github.com/Microsoft/vcpkg.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index aed076dea..6993b6967 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,6 +35,16 @@ option(YUZU_USE_BUNDLED_OPUS "Compile bundled opus" ON)
35 35
36option(YUZU_TESTS "Compile tests" ON) 36option(YUZU_TESTS "Compile tests" ON)
37 37
38option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" OFF)
39
40if (YUZU_USE_BUNDLED_VCPKG)
41 include(${CMAKE_SOURCE_DIR}/externals/vcpkg/scripts/buildsystems/vcpkg.cmake)
42elseif(NOT "$ENV{VCPKG_TOOLCHAIN_FILE}" STREQUAL "")
43 # Disable manifest mode (use vcpkg classic mode) when using a custom vcpkg installation
44 option(VCPKG_MANIFEST_MODE "")
45 include("$ENV{VCPKG_TOOLCHAIN_FILE}")
46endif()
47
38# Default to a Release build 48# Default to a Release build
39get_property(IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) 49get_property(IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
40if (NOT IS_MULTI_CONFIG AND NOT CMAKE_BUILD_TYPE) 50if (NOT IS_MULTI_CONFIG AND NOT CMAKE_BUILD_TYPE)
diff --git a/externals/vcpkg b/externals/vcpkg
new file mode 160000
Subproject cef0b3ec767df6e83806899fe9525f6cf8d7bc9
diff --git a/vcpkg.json b/vcpkg.json
new file mode 100644
index 000000000..8d3c5919a
--- /dev/null
+++ b/vcpkg.json
@@ -0,0 +1,29 @@
1{
2 "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg/master/scripts/vcpkg.schema.json",
3 "name": "yuzu",
4 "version": "1.0",
5 "dependencies": [
6 "boost-algorithm",
7 "boost-asio",
8 "boost-bind",
9 "boost-config",
10 "boost-container",
11 "boost-context",
12 "boost-crc",
13 "boost-functional",
14 "boost-icl",
15 "boost-intrusive",
16 "boost-mpl",
17 "boost-process",
18 "boost-range",
19 "boost-spirit",
20 "boost-test",
21 "boost-timer",
22 "boost-variant",
23 "fmt",
24 "lz4",
25 "nlohmann-json",
26 "zlib",
27 "zstd"
28 ]
29}