rpcsx/rpcs3/Emu/RSX/D3D12
Lassi Hämäläinen 7aef811ff7 CMake: Refactor CMake build (#5032)
* CMake: Refactor build to multiple libraries

- Refactor CMake build system by creating separate libraries for
  different components
- Create interface libraries for most dependencies and add 3rdparty::*
  ALIAS targets for ease of use and use them to try specifying correct
  dependencies for each target
- Prefer 3rdparty:: ALIAS when linking dependencies
- Exclude xxHash subdirectory from ALL build target
- Add USE_SYSTEM_ZLIB option to select between using included ZLib and
  the ZLib in CMake search path

* Add cstring include to Log.cpp

* CMake: Add 3rdparty::glew interface target

* Add Visual Studio CMakeSettings.json to gitignore

* CMake: Move building and finding LLVM to 3rdparty/llvm.cmake script

- LLVM is now built under 3rdparty/ directory in the binary directory

* CMake: Move finding Qt5 to 3rdparty/qt5.cmake script

- Script has to be included in rpcs3/CMakeLists.txt because it defines
  Qt5::moc target which isn't available in that folder if it is
  included in 3rdparty directory
- Set AUTOMOC and AUTOUIC properties for targets requiring them (rpcs3
  and rpcs3_ui) instead of setting CMAKE_AUTOMOC and CMAKE_AUTOUIC so
  those properties are not defined for all targets under rpcs3 dir

* CMake: Remove redundant code from rpcs3/CMakeLists.txt

* CMake: Add BUILD_LLVM_SUBMODULE option instead of hardcoded check

- Add BUILD_LLVM_SUBMODULE option (defaults to ON) to allow controlling
  usage of the LLVM submodule.
- Move option definitions to root CMakeLists

* CMake: Remove separate Emu subtargets

- Based on discussion in pull request #5032, I decided to combine
  subtargets under Emu folder back to a single rpcs3_emu target

* CMake: Remove utilities, loader and crypto targets: merge them to Emu

- Removed separate targets and merged them into rpcs3_emu target as
  recommended in pull request (#5032) conversations. Separating targets
  probably later in a separate pull request

* Fix relative includes in pad_thread.cpp

* Fix Travis-CI cloning all submodules needlessly
2018-09-18 13:07:33 +03:00
..
CMakeLists.txt CMake: Refactor CMake build (#5032) 2018-09-18 13:07:33 +03:00
D3D12Buffer.cpp rsx: Fix endianness order when immediate mode register is updated, but used as register lookup 2018-09-03 18:24:20 +03:00
D3D12CommonDecompiler.cpp rsx: Improve vertex textures support 2018-07-12 18:02:28 +03:00
D3D12CommonDecompiler.h rsx: Make fragment state dynamic to reduce shader permutations 2017-08-26 21:53:54 +03:00
D3D12Formats.cpp rsx: Implement QUAD_STRIP 2017-08-26 21:53:54 +03:00
D3D12Formats.h typos 2018-05-14 21:14:39 +04:00
D3D12FragmentProgramDecompiler.cpp c++17: use std::size 2018-09-06 13:15:59 +03:00
D3D12FragmentProgramDecompiler.h typos 2018-05-14 21:14:39 +04:00
D3D12GSRender.cpp cleanup: remove unnecessary return and namespace declaration 2018-09-06 13:15:59 +03:00
D3D12GSRender.h Rsx: rewrite address translation 2018-08-13 16:16:34 +03:00
D3D12MemoryHelpers.cpp Cleanup semaphore<> (sema.h) and mutex.h (shared_mutex) 2018-09-03 23:00:36 +03:00
D3D12MemoryHelpers.h rsx: ZCULL rewrite and other improvements 2018-03-13 18:55:03 +03:00
D3D12Overlay.cpp dx12: Fix error reporting 2017-06-29 13:13:19 +03:00
D3D12PipelineState.cpp d3d12: restore working graphics 2018-09-03 18:24:20 +03:00
D3D12PipelineState.h rsx/vulkan: Add post-compilation key validation and dynamically determine attachment write maks based on decompiled shader 2018-03-13 18:55:03 +03:00
D3D12RenderTargetSets.cpp Rsx: rewrite address translation 2018-08-13 16:16:34 +03:00
D3D12RenderTargetSets.h Update GSL and yaml-cpp submodules 2018-08-25 01:15:47 +03:00
D3D12Texture.cpp Remove Volume Texture Compression (VTC) tiling for Vulkan, DX12 and ATI (OpenGL). 2018-03-23 12:01:30 +03:00
D3D12Utils.cpp The rest 2016-05-23 16:22:25 +03:00
D3D12Utils.h typos 2018-05-14 21:14:39 +04:00
D3D12VertexProgramDecompiler.cpp rsx/vp: CodeGen improvements 2018-07-07 16:20:33 +03:00
D3D12VertexProgramDecompiler.h rsx/vp: CodeGen improvements 2018-07-07 16:20:33 +03:00
d3dx12.h Moves GL, minidx12, OpenAL, stblib to 3rdparty 2016-03-20 22:20:23 +00:00