rpcs3/3rdparty
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
..
cereal@42a45b6e15
discord-rpc
ffmpeg@7b7ae7b067
GL
GPUOpen/include GPUOpen: drop bogus include 2018-05-24 20:00:35 +04:00
GSL@1995e86d1a Update GSL and yaml-cpp submodules 2018-08-25 01:15:47 +03:00
hidapi@4c2750112e Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00
libpng@b78804f9a2 libpng: use official repository instead of the fork from RPCS3 and update submodule 2018-06-14 21:55:39 +04:00
minidx12
OpenAL
pugixml@8436f2a69b pugixml: update submodule and build integration 2018-06-24 02:02:36 +04:00
stblib 3rdparty: update stb_image.h and stb_truetype.h 2018-06-09 11:06:55 +03:00
XAudio2_7
xxHash@3064d42e7d rsx: initial capture/replay functionality (#4510) 2018-05-13 12:18:05 +03:00
yaml-cpp@c90c08ccc9 Update GSL and yaml-cpp submodules 2018-08-25 01:15:47 +03:00
zlib@cacf7f1d4e
CMakeLists.txt CMake: Refactor CMake build (#5032) 2018-09-18 13:07:33 +03:00
libpng.vcxproj Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00
llvm.cmake CMake: Refactor CMake build (#5032) 2018-09-18 13:07:33 +03:00
pnglibconf.vcxproj Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00
qt5.cmake CMake: Refactor CMake build (#5032) 2018-09-18 13:07:33 +03:00
xxhash.vcxproj Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00
yaml-cpp.vcxproj Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00
yaml-cpp.vcxproj.filters yaml-cpp: update submodule and build integration 2018-06-13 04:25:34 +04:00
zlib.props libpng: use official repository instead of the fork from RPCS3 and update submodule 2018-06-14 21:55:39 +04:00
zlib.vcxproj Update Project to Visual Studio 2017. 2018-08-25 01:15:47 +03:00