summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--CMakeModules/CopyYuzuQt5Deps.cmake2
-rw-r--r--CMakeModules/CopyYuzuSDLDeps.cmake2
-rw-r--r--CMakeModules/CopyYuzuUnicornDeps.cmake2
-rw-r--r--appveyor.yml14
-rw-r--r--externals/cmake-modules/WindowsCopyFiles.cmake4
6 files changed, 17 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 86d2423ed..56743bb1b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -124,7 +124,7 @@ else()
124 # /EHsc - C++-only exception handling semantics 124 # /EHsc - C++-only exception handling semantics
125 # /Zc:throwingNew - let codegen assume `operator new` will never return null 125 # /Zc:throwingNew - let codegen assume `operator new` will never return null
126 # /Zc:inline - let codegen omit inline functions in object files 126 # /Zc:inline - let codegen omit inline functions in object files
127 set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} /EHsc /std:c++latest /Zc:throwingNew,inline" CACHE STRING "" FORCE) 127 set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} /EHsc /Zc:throwingNew,inline" CACHE STRING "" FORCE)
128 128
129 # /MDd - Multi-threaded Debug Runtime DLL 129 # /MDd - Multi-threaded Debug Runtime DLL
130 set(CMAKE_C_FLAGS_DEBUG "/Od /MDd" CACHE STRING "" FORCE) 130 set(CMAKE_C_FLAGS_DEBUG "/Od /MDd" CACHE STRING "" FORCE)
diff --git a/CMakeModules/CopyYuzuQt5Deps.cmake b/CMakeModules/CopyYuzuQt5Deps.cmake
index ed24c742c..bfad52c4a 100644
--- a/CMakeModules/CopyYuzuQt5Deps.cmake
+++ b/CMakeModules/CopyYuzuQt5Deps.cmake
@@ -1,6 +1,6 @@
1function(copy_yuzu_Qt5_deps target_dir) 1function(copy_yuzu_Qt5_deps target_dir)
2 include(WindowsCopyFiles) 2 include(WindowsCopyFiles)
3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/") 3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/")
4 set(Qt5_DLL_DIR "${Qt5_DIR}/../../../bin") 4 set(Qt5_DLL_DIR "${Qt5_DIR}/../../../bin")
5 set(Qt5_PLATFORMS_DIR "${Qt5_DIR}/../../../plugins/platforms/") 5 set(Qt5_PLATFORMS_DIR "${Qt5_DIR}/../../../plugins/platforms/")
6 set(PLATFORMS ${DLL_DEST}platforms/) 6 set(PLATFORMS ${DLL_DEST}platforms/)
diff --git a/CMakeModules/CopyYuzuSDLDeps.cmake b/CMakeModules/CopyYuzuSDLDeps.cmake
index 5963684f4..e6f455960 100644
--- a/CMakeModules/CopyYuzuSDLDeps.cmake
+++ b/CMakeModules/CopyYuzuSDLDeps.cmake
@@ -1,5 +1,5 @@
1function(copy_yuzu_SDL_deps target_dir) 1function(copy_yuzu_SDL_deps target_dir)
2 include(WindowsCopyFiles) 2 include(WindowsCopyFiles)
3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/") 3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/")
4 windows_copy_files(${target_dir} ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll) 4 windows_copy_files(${target_dir} ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll)
5endfunction(copy_yuzu_SDL_deps) 5endfunction(copy_yuzu_SDL_deps)
diff --git a/CMakeModules/CopyYuzuUnicornDeps.cmake b/CMakeModules/CopyYuzuUnicornDeps.cmake
index 7af0ef023..c32f717c8 100644
--- a/CMakeModules/CopyYuzuUnicornDeps.cmake
+++ b/CMakeModules/CopyYuzuUnicornDeps.cmake
@@ -1,6 +1,6 @@
1function(copy_yuzu_unicorn_deps target_dir) 1function(copy_yuzu_unicorn_deps target_dir)
2 include(WindowsCopyFiles) 2 include(WindowsCopyFiles)
3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/") 3 set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/")
4 windows_copy_files(${target_dir} ${UNICORN_DLL_DIR} ${DLL_DEST} 4 windows_copy_files(${target_dir} ${UNICORN_DLL_DIR} ${DLL_DEST}
5 libgcc_s_seh-1.dll 5 libgcc_s_seh-1.dll
6 libwinpthread-1.dll 6 libwinpthread-1.dll
diff --git a/appveyor.yml b/appveyor.yml
index 72cda26a7..fb16cae17 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -36,12 +36,20 @@ install:
36 } 36 }
37 37
38before_build: 38before_build:
39 # Install Ninja
40 - set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip"
41 - appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
42 - 7z x ninja.zip -oC:\projects\deps\ninja > nul
43 - set PATH=C:\projects\deps\ninja;%PATH%
44 - ninja --version
45 - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
46
39 - mkdir %BUILD_TYPE%_build 47 - mkdir %BUILD_TYPE%_build
40 - cd %BUILD_TYPE%_build 48 - cd %BUILD_TYPE%_build
41 - ps: | 49 - ps: |
42 if ($env:BUILD_TYPE -eq 'msvc') { 50 if ($env:BUILD_TYPE -eq 'msvc') {
43 # redirect stderr and change the exit code to prevent powershell from cancelling the build if cmake prints a warning 51 # redirect stderr and change the exit code to prevent powershell from cancelling the build if cmake prints a warning
44 cmd /C 'cmake -G "Visual Studio 15 2017 Win64" -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_BUNDLED_UNICORN=1 .. 2>&1 && exit 0' 52 cmd /C 'cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_BUNDLED_UNICORN=1 .. 2>&1 && exit 0'
45 } else { 53 } else {
46 C:\msys64\usr\bin\bash.exe -lc "cmake -G 'MSYS Makefiles' -DYUZU_BUILD_UNICORN=1 -DCMAKE_BUILD_TYPE=Release .. 2>&1" 54 C:\msys64\usr\bin\bash.exe -lc "cmake -G 'MSYS Makefiles' -DYUZU_BUILD_UNICORN=1 -DCMAKE_BUILD_TYPE=Release .. 2>&1"
47 } 55 }
@@ -51,7 +59,7 @@ build_script:
51 - ps: | 59 - ps: |
52 if ($env:BUILD_TYPE -eq 'msvc') { 60 if ($env:BUILD_TYPE -eq 'msvc') {
53 # https://www.appveyor.com/docs/build-phase 61 # https://www.appveyor.com/docs/build-phase
54 msbuild msvc_build/yuzu.sln /maxcpucount /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" 62 ninja -C msvc_build
55 } else { 63 } else {
56 C:\msys64\usr\bin\bash.exe -lc 'mingw32-make -C mingw_build/ 2>&1' 64 C:\msys64\usr\bin\bash.exe -lc 'mingw32-make -C mingw_build/ 2>&1'
57 } 65 }
@@ -80,7 +88,7 @@ after_build:
80 $env:BUILD_SYMBOLS = $MSVC_BUILD_PDB 88 $env:BUILD_SYMBOLS = $MSVC_BUILD_PDB
81 $env:BUILD_UPDATE = $MSVC_SEVENZIP 89 $env:BUILD_UPDATE = $MSVC_SEVENZIP
82 90
83 $BUILD_DIR = ".\msvc_build\bin\Release" 91 $BUILD_DIR = ".\msvc_build\bin"
84 92
85 # Make a debug symbol upload 93 # Make a debug symbol upload
86 mkdir pdb 94 mkdir pdb
diff --git a/externals/cmake-modules/WindowsCopyFiles.cmake b/externals/cmake-modules/WindowsCopyFiles.cmake
index cd0c2ce47..a21b2e2d7 100644
--- a/externals/cmake-modules/WindowsCopyFiles.cmake
+++ b/externals/cmake-modules/WindowsCopyFiles.cmake
@@ -22,7 +22,7 @@ function(windows_copy_files TARGET SOURCE_DIR DEST_DIR)
22 # cmake adds an extra check for command success which doesn't work too well with robocopy 22 # cmake adds an extra check for command success which doesn't work too well with robocopy
23 # so trick it into thinking the command was successful with the || cmd /c "exit /b 0" 23 # so trick it into thinking the command was successful with the || cmd /c "exit /b 0"
24 add_custom_command(TARGET ${TARGET} POST_BUILD 24 add_custom_command(TARGET ${TARGET} POST_BUILD
25 COMMAND if not exist ${DEST_DIR} mkdir ${DEST_DIR} 2> nul 25 COMMAND ${CMAKE_COMMAND} -E make_directory ${DEST_DIR}
26 COMMAND robocopy ${SOURCE_DIR} ${DEST_DIR} ${ARGN} /NJH /NJS /NDL /NFL /NC /NS /NP || cmd /c "exit /b 0" 26 COMMAND robocopy ${SOURCE_DIR} ${DEST_DIR} ${ARGN} /NJH /NJS /NDL /NFL /NC /NS /NP || cmd /c "exit /b 0"
27 ) 27 )
28endfunction() \ No newline at end of file 28endfunction()