1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-22 10:42:36 +01:00
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 Add cereal dependency 2016-07-30 18:39:26 +02:00
discord-rpc Discord Rich Presence Integration (Thanks to @Megamouse for fixing the windows build) 2018-04-19 04:47:56 +04:00
ffmpeg@7b7ae7b067 Update ffmpeg submodule with updated libs and headers for linux 2017-08-19 20:05:33 +03:00
GL GL: Update glext.h to ver 20180114 2018-02-12 01:58:14 +04:00
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 Dynamic XAudio version detection 2016-07-21 17:46:46 +03:00
OpenAL openAL: Update to 1.18.2 2018-02-12 01:58:14 +04:00
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 Optimizations (#1680) 2016-04-25 13:49:12 +03:00
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 RPCS3 QT (#2645) 2017-06-04 17:48:33 +03:00
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