From c63db8842cce4588f33564c61745c100e7c44f75 Mon Sep 17 00:00:00 2001 From: Danila Malyutin Date: Wed, 12 Aug 2015 20:20:58 +0300 Subject: [PATCH 1/3] Add llvm build to appveyor --- appveyor.yml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 80e30342a8..a305da93bf 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,8 +1,10 @@ version: 1.0.{build} os: Visual Studio 2015 -configuration: Release +configuration: + - Release + - ReleaseLLVM platform: x64 -clone_folder: c:\projects\rpcs3 +clone_folder: c:\rpcs3 clone_depth: 1 test: off @@ -14,19 +16,21 @@ before_build: - git submodule update --init --depth 3 asmjit minidx9 # until git for win 2.5 release with commit checkout - git submodule update --init ffmpeg - - 7z x wxWidgets.7z -aos -oC:\projects\rpcs3\wxWidgets > null - - cmake -G "Visual Studio 14 Win64" + - 7z x wxWidgets.7z -aos -oC:\rpcs3\wxWidgets > null + - if %configuration%==Release (cmake -G "Visual Studio 14 Win64") + else (7z x llvmlibs.7z -aos -oC:\rpcs3 > null && cmake -G "Visual Studio 14 Win64" -DLLVM_DIR=C:/rpcs3/llvm_build/share/llvm/cmake) build_script: - cmake --build . --config Release -- /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" install: - ps: Start-FileDownload 'https://402331b94f8e4b87ae2ef4677347f7956cf3861f.googledrive.com/host/0B6v_qtb9hkicfmt0NG0wTTRtUmF4X3VTQk5Oc2JidEVKVnUteDA1dXdrYlNsVW9kREpsSHc/wxWidgets.7z' - - set WXWIN=C:\projects\rpcs3\wxWidgets; - - set OPENALDIR=C:\projects\rpcs3\OpenAL; + - ps: Start-FileDownload 'https://402331b94f8e4b87ae2ef4677347f7956cf3861f.googledrive.com/host/0B6v_qtb9hkicfmt0NG0wTTRtUmF4X3VTQk5Oc2JidEVKVnUteDA1dXdrYlNsVW9kREpsSHc/llvmlibs.7z' + - set WXWIN=C:\rpcs3\wxWidgets + - set OPENALDIR=C:\rpcs3\OpenAL - set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;C:\wxWidgets;%PATH% - set COMMIT_SHA=%APPVEYOR_REPO_COMMIT:~0,8% artifacts: - path: bin - name: rpcs3-$(COMMIT_SHA) \ No newline at end of file + name: rpcs3-$(configuration)-$(COMMIT_SHA) \ No newline at end of file From 99156c61e47284d4f4b68b05db865102a234055a Mon Sep 17 00:00:00 2001 From: Danila Malyutin Date: Thu, 13 Aug 2015 00:34:54 +0300 Subject: [PATCH 2/3] Fix wrong XAudio lib being linked --- appveyor.yml | 4 ++++ rpcs3/CMakeLists.txt | 7 +++++-- rpcs3/Emu/Audio/XAudio2/XAudio2Thread.h | 3 ++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index a305da93bf..691436ecfa 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -8,6 +8,10 @@ clone_folder: c:\rpcs3 clone_depth: 1 test: off +matrix: + allow_failures: + - configuration: ReleaseLLVM + branches: except: - ppu_recompiler diff --git a/rpcs3/CMakeLists.txt b/rpcs3/CMakeLists.txt index 2f9c389394..0ee59a52f2 100644 --- a/rpcs3/CMakeLists.txt +++ b/rpcs3/CMakeLists.txt @@ -97,6 +97,9 @@ ${LLVM_INCLUDE_DIRS} "${RPCS3_SRC_DIR}/.." "${RPCS3_SRC_DIR}/../asmjit/src/asmjit" ) +if(WIN32) + include_directories(BEFORE "${RPCS3_SRC_DIR}/../minidx9/Include") +endif() if(LLVM_FOUND) add_definitions(${LLVM_DEFINITIONS}) @@ -145,9 +148,9 @@ endif() if(WIN32) # I'm not sure we need all of these libs, but we link them in vs target_link_libraries(rpcs3 odbc32.lib odbccp32.lib comctl32.lib ws2_32.lib shlwapi.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib) if(LLVM_FOUND) - target_link_libraries(rpcs3 asmjit.lib xaudio2.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${LLVM_LIBS} ${ADDITIONAL_LIBS}) + target_link_libraries(rpcs3 asmjit.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${LLVM_LIBS} ${ADDITIONAL_LIBS}) else() - target_link_libraries(rpcs3 asmjit.lib xaudio2.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${ADDITIONAL_LIBS}) + target_link_libraries(rpcs3 asmjit.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${ADDITIONAL_LIBS}) endif() else() if(LLVM_FOUND) diff --git a/rpcs3/Emu/Audio/XAudio2/XAudio2Thread.h b/rpcs3/Emu/Audio/XAudio2/XAudio2Thread.h index 17eda37f13..b9bdfd2ba7 100644 --- a/rpcs3/Emu/Audio/XAudio2/XAudio2Thread.h +++ b/rpcs3/Emu/Audio/XAudio2/XAudio2Thread.h @@ -2,8 +2,9 @@ #include "Emu/Audio/AudioThread.h" #if defined (_WIN32) - +#define _WIN32_WINNT 0x0601 // This is to be sure that correct (2.7) header is included #include "XAudio2.h" // XAudio2 2.8 available only on Win8+, used XAudio2 2.7 from dxsdk +#undef _WIN32_WINNT class XAudio2Thread : public AudioThread { From 1d09408e38ba3e2d14bcfaa36ffe2b9ea9d4e116 Mon Sep 17 00:00:00 2001 From: Danila Malyutin Date: Thu, 13 Aug 2015 01:34:34 +0300 Subject: [PATCH 3/3] Disable regular (non-llvm) builds to save time because appveyor wouldn't run them in parallel. llvm builds are only ~1 min longer anyway. --- appveyor.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 691436ecfa..c00686952d 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,17 +1,13 @@ version: 1.0.{build} os: Visual Studio 2015 configuration: - - Release +# - Release - ReleaseLLVM platform: x64 clone_folder: c:\rpcs3 clone_depth: 1 test: off -matrix: - allow_failures: - - configuration: ReleaseLLVM - branches: except: - ppu_recompiler