diff --git a/CMakeLists.txt b/CMakeLists.txt index bdab81e758..32798f3ffe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,13 +3,13 @@ cmake_minimum_required(VERSION 3.14.1) project(rpcs3) if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9) - message(FATAL_ERROR "RPCS3 requires at least gcc-9.") - endif() + if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9) + message(FATAL_ERROR "RPCS3 requires at least gcc-9.") + endif() elseif(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0) - message(FATAL_ERROR "RPCS3 requires at least clang-11.0.") - endif() + if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0) + message(FATAL_ERROR "RPCS3 requires at least clang-11.0.") + endif() endif() # include build options @@ -21,34 +21,34 @@ set(CMAKE_CXX_STANDARD 20) include(CheckCXXCompilerFlag) if(NOT CMAKE_BUILD_TYPE) - message(STATUS "No build type selected, default to Release") - set(CMAKE_BUILD_TYPE "Release") + message(STATUS "No build type selected, default to Release") + set(CMAKE_BUILD_TYPE "Release") endif() if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug") - add_definitions(-DNDEBUG) + add_definitions(-DNDEBUG) elseif(NOT MSVC) - add_definitions(-D_DEBUG) + add_definitions(-D_DEBUG) endif() if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8) - message( FATAL_ERROR "RPCS3 can only be compiled on 64-bit platforms." ) + message( FATAL_ERROR "RPCS3 can only be compiled on 64-bit platforms." ) endif() find_program(CCACHE_FOUND ccache) if(CCACHE_FOUND) - set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) - set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) + set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) + set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) endif() if(WIN32) - add_definitions(-DUNICODE) - add_definitions(-D_WIN32_WINNT=0x0602) + add_definitions(-DUNICODE) + add_definitions(-D_WIN32_WINNT=0x0602) endif() if(APPLE) - include_directories(/opt/local/include) - link_directories(/opt/local/lib) + include_directories(/opt/local/include) + link_directories(/opt/local/lib) endif() # Warnings are silenced for 3rdparty code @@ -57,7 +57,7 @@ set(CMAKE_C_FLAGS -w) set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "") if(MSVC) - add_compile_options(/wd4530 /utf-8) # C++ exception handler used, but unwind semantics are not enabled + add_compile_options(/wd4530 /utf-8) # C++ exception handler used, but unwind semantics are not enabled endif() add_subdirectory(Vulkan EXCLUDE_FROM_ALL) @@ -68,7 +68,7 @@ unset(CMAKE_CXX_FLAGS) unset(CMAKE_C_FLAGS) if(NOT WIN32) - add_compile_options(-pthread) + add_compile_options(-pthread) endif() # TODO: do real installation, including copying directory structure diff --git a/rpcs3/CMakeLists.txt b/rpcs3/CMakeLists.txt index aa7bacd860..0867c96ec4 100644 --- a/rpcs3/CMakeLists.txt +++ b/rpcs3/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.8.2) if(USE_PRECOMPILED_HEADERS AND NOT COMMAND target_precompile_headers) - include(cotire) + include(cotire) endif() # Generate git-version.h at build time. @@ -12,27 +12,27 @@ include(ConfigureCompiler) set(ADDITIONAL_LIBS "") if(CMAKE_SYSTEM MATCHES "Linux") - #on some Linux distros shm_unlink and similar functions are in librt only - set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "rt") + #on some Linux distros shm_unlink and similar functions are in librt only + set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "rt") elseif(NOT MSVC AND NOT CMAKE_CXX_FLAGS MATCHES "LIBICONV_PLUG") - #it seems like glibc includes the iconv functions we use but other libc - #implementations like the one on OSX don't seem implement them - set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "iconv") + #it seems like glibc includes the iconv functions we use but other libc + #implementations like the one on OSX don't seem implement them + set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "iconv") endif() if(UNIX AND NOT APPLE) - # Optionally enable X11 for window management - find_package(X11) - if(X11_FOUND) - add_definitions(-DHAVE_X11) - endif() + # Optionally enable X11 for window management + find_package(X11) + if(X11_FOUND) + add_definitions(-DHAVE_X11) + endif() endif() if(NOT RPCS3_SRC_DIR) - set(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR}) - message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") + set(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR}) + message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") else() - message("-- Using Custom RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") + message("-- Using Custom RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") endif() # Qt5 @@ -46,43 +46,43 @@ add_subdirectory(Emu) add_subdirectory(rpcs3qt) set(RPCS3_SRC - display_sleep_control.cpp - headless_application.cpp - main.cpp - main_application.cpp - rpcs3_version.cpp - stb_image.cpp - stdafx.cpp + display_sleep_control.cpp + headless_application.cpp + main.cpp + main_application.cpp + rpcs3_version.cpp + stb_image.cpp + stdafx.cpp - Input/basic_keyboard_handler.cpp - Input/basic_mouse_handler.cpp - Input/ds3_pad_handler.cpp - Input/ds4_pad_handler.cpp - Input/dualsense_pad_handler.cpp - Input/evdev_joystick_handler.cpp - Input/hid_pad_handler.cpp - Input/keyboard_pad_handler.cpp - Input/mm_joystick_handler.cpp - Input/pad_thread.cpp - Input/xinput_pad_handler.cpp + Input/basic_keyboard_handler.cpp + Input/basic_mouse_handler.cpp + Input/ds3_pad_handler.cpp + Input/ds4_pad_handler.cpp + Input/dualsense_pad_handler.cpp + Input/evdev_joystick_handler.cpp + Input/hid_pad_handler.cpp + Input/keyboard_pad_handler.cpp + Input/mm_joystick_handler.cpp + Input/pad_thread.cpp + Input/xinput_pad_handler.cpp ) if(WIN32) - add_executable(rpcs3 WIN32 ${RPCS3_SRC}) + add_executable(rpcs3 WIN32 ${RPCS3_SRC}) elseif(APPLE) - add_executable(rpcs3 MACOSX_BUNDLE ${RPCS3_SRC} "${RPCS3_SRC_DIR}/rpcs3.icns") - set_target_properties(rpcs3 - PROPERTIES - MACOSX_BUNDLE_INFO_PLIST "${RPCS3_SRC_DIR}/rpcs3.plist.in") + add_executable(rpcs3 MACOSX_BUNDLE ${RPCS3_SRC} "${RPCS3_SRC_DIR}/rpcs3.icns") + set_target_properties(rpcs3 + PROPERTIES + MACOSX_BUNDLE_INFO_PLIST "${RPCS3_SRC_DIR}/rpcs3.plist.in") else() - add_executable(rpcs3 ${RPCS3_SRC}) + add_executable(rpcs3 ${RPCS3_SRC}) endif() gen_git_version(${RPCS3_SRC_DIR}) set_target_properties(rpcs3 - PROPERTIES - AUTOMOC ON - AUTOUIC ON) + PROPERTIES + AUTOMOC ON + AUTOUIC ON) target_link_libraries(rpcs3 rpcs3_emu rpcs3_ui) target_link_libraries(rpcs3 3rdparty::discord-rpc 3rdparty::qt5 3rdparty::hidapi 3rdparty::libusb 3rdparty::wolfssl 3rdparty::libcurl) @@ -90,88 +90,88 @@ target_link_libraries(rpcs3 ${ADDITIONAL_LIBS}) # Win resource file if(WIN32) - target_sources(rpcs3 PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/rpcs3.rc") + target_sources(rpcs3 PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/rpcs3.rc") endif() # Unix display manager if(X11_FOUND) - target_include_directories(rpcs3 PUBLIC ${X11_INCLUDE_DIR}) - target_link_libraries(rpcs3 ${X11_LIBRARIES}) + target_include_directories(rpcs3 PUBLIC ${X11_INCLUDE_DIR}) + target_link_libraries(rpcs3 ${X11_LIBRARIES}) elseif(USE_VULKAN AND UNIX AND NOT WAYLAND_FOUND AND NOT APPLE) - # Wayland has been checked in 3rdparty/CMakeLists.txt already. - message(FATAL_ERROR "RPCS3 requires either X11 or Wayland (or both) for Vulkan.") + # Wayland has been checked in 3rdparty/CMakeLists.txt already. + message(FATAL_ERROR "RPCS3 requires either X11 or Wayland (or both) for Vulkan.") endif() if(UNIX) - set(CMAKE_THREAD_PREFER_PTHREAD TRUE) - find_package(Threads REQUIRED) - target_link_libraries(rpcs3 Threads::Threads) + set(CMAKE_THREAD_PREFER_PTHREAD TRUE) + find_package(Threads REQUIRED) + target_link_libraries(rpcs3 Threads::Threads) endif() if(WIN32) - target_link_libraries(rpcs3 ws2_32.lib Iphlpapi.lib Winmm.lib Psapi.lib gdi32.lib setupapi.lib) + target_link_libraries(rpcs3 ws2_32.lib Iphlpapi.lib Winmm.lib Psapi.lib gdi32.lib setupapi.lib) else() - target_link_libraries(rpcs3 ${CMAKE_DL_LIBS}) + target_link_libraries(rpcs3 ${CMAKE_DL_LIBS}) endif() if(USE_PRECOMPILED_HEADERS) - if(COMMAND target_precompile_headers) - target_precompile_headers(rpcs3 PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") - else() - set_target_properties(rpcs3 PROPERTIES - COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" - COTIRE_ADD_UNITY_BUILD OFF) + if(COMMAND target_precompile_headers) + target_precompile_headers(rpcs3 PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") + else() + set_target_properties(rpcs3 PROPERTIES + COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" + COTIRE_ADD_UNITY_BUILD OFF) - cotire(rpcs3) - endif() + cotire(rpcs3) + endif() endif() # Copy icons to executable directory if(APPLE) - add_custom_command(TARGET rpcs3 POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy - ${RPCS3_SRC_DIR}/rpcs3.icns $/../Resources/rpcs3.icns - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/Icons $/../Resources/Icons - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $/../Resources/GuiConfigs - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/git $/../Resources/git - COMMAND "${Qt5_DIR}/../../../bin/macdeployqt" "${PROJECT_BINARY_DIR}/bin/rpcs3.app") + add_custom_command(TARGET rpcs3 POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy + ${RPCS3_SRC_DIR}/rpcs3.icns $/../Resources/rpcs3.icns + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/Icons $/../Resources/Icons + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $/../Resources/GuiConfigs + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/git $/../Resources/git + COMMAND "${Qt5_DIR}/../../../bin/macdeployqt" "${PROJECT_BINARY_DIR}/bin/rpcs3.app") elseif(UNIX) - add_custom_command(TARGET rpcs3 POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/Icons $/Icons) - add_custom_command(TARGET rpcs3 POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $/GuiConfigs) - add_custom_command(TARGET rpcs3 POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bin/git $/git) + add_custom_command(TARGET rpcs3 POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/Icons $/Icons) + add_custom_command(TARGET rpcs3 POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $/GuiConfigs) + add_custom_command(TARGET rpcs3 POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_directory + ${CMAKE_SOURCE_DIR}/bin/git $/git) elseif(WIN32) - add_custom_command(TARGET rpcs3 POST_BUILD - COMMAND "${CMAKE_COMMAND}" -E copy_directory "${CMAKE_SOURCE_DIR}/bin" "$" - COMMAND "${Qt5_DIR}/../../../bin/windeployqt" --no-angle --no-compiler-runtime --no-opengl-sw --no-patchqt --no-svg --no-translations --no-quick --plugindir "$/qt/plugins" --release "$") + add_custom_command(TARGET rpcs3 POST_BUILD + COMMAND "${CMAKE_COMMAND}" -E copy_directory "${CMAKE_SOURCE_DIR}/bin" "$" + COMMAND "${Qt5_DIR}/../../../bin/windeployqt" --no-angle --no-compiler-runtime --no-opengl-sw --no-patchqt --no-svg --no-translations --no-quick --plugindir "$/qt/plugins" --release "$") endif() # Unix installation if(UNIX AND NOT APPLE) - # Install the binary - install(TARGETS rpcs3 RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) - # Install the application icon and menu item - install(FILES rpcs3.svg - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps) - install(FILES rpcs3.png - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps) - install(FILES rpcs3.desktop - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications) - install(FILES rpcs3.appdata.xml - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/metainfo) - # Install other files - install(DIRECTORY ../bin/Icons - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) - install(DIRECTORY ../bin/GuiConfigs - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) - install(DIRECTORY ../bin/git - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) + # Install the binary + install(TARGETS rpcs3 RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) + # Install the application icon and menu item + install(FILES rpcs3.svg + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps) + install(FILES rpcs3.png + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps) + install(FILES rpcs3.desktop + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications) + install(FILES rpcs3.appdata.xml + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/metainfo) + # Install other files + install(DIRECTORY ../bin/Icons + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) + install(DIRECTORY ../bin/GuiConfigs + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) + install(DIRECTORY ../bin/git + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) endif() diff --git a/rpcs3/Emu/CMakeLists.txt b/rpcs3/Emu/CMakeLists.txt index 2560c8cef3..4748abddd4 100644 --- a/rpcs3/Emu/CMakeLists.txt +++ b/rpcs3/Emu/CMakeLists.txt @@ -1,518 +1,518 @@ add_library(rpcs3_emu - IdManager.cpp - localized_string.cpp - System.cpp - system_config.cpp - system_config_types.cpp - VFS.cpp - GDB.cpp - title.cpp - perf_meter.cpp + IdManager.cpp + localized_string.cpp + System.cpp + system_config.cpp + system_config_types.cpp + VFS.cpp + GDB.cpp + title.cpp + perf_meter.cpp ) # prevent WolfSSL from warning about not having harden options add_compile_definitions(WC_NO_HARDEN) target_link_libraries(rpcs3_emu - PRIVATE - 3rdparty::zlib 3rdparty::yaml-cpp - PUBLIC - 3rdparty::libevdev 3rdparty::flatbuffers) + PRIVATE + 3rdparty::zlib 3rdparty::yaml-cpp + PUBLIC + 3rdparty::libevdev 3rdparty::flatbuffers) find_package(Threads REQUIRED) target_link_libraries(rpcs3_emu - PUBLIC Threads::Threads) + PUBLIC Threads::Threads) # For stdafx.h target_include_directories(rpcs3_emu - PUBLIC - ${RPCS3_SRC_DIR}) + PUBLIC + ${RPCS3_SRC_DIR}) # Utilities target_sources(rpcs3_emu PRIVATE - ../util/atomic.cpp - ../util/logs.cpp - ../util/yaml.cpp - ../util/cereal.cpp - ../util/vm_native.cpp - ../util/dyn_lib.cpp - ../util/sysinfo.cpp - ../util/cpu_stats.cpp - ../../Utilities/bin_patch.cpp - ../../Utilities/cheat_info.cpp - ../../Utilities/cond.cpp - ../../Utilities/Config.cpp - ../../Utilities/File.cpp - ../../Utilities/JIT.cpp - ../../Utilities/LUrlParser.cpp - ../../Utilities/mutex.cpp - ../../Utilities/rXml.cpp - ../../Utilities/sema.cpp - ../../Utilities/StrFmt.cpp - ../../Utilities/Thread.cpp - ../../Utilities/version.cpp + ../util/atomic.cpp + ../util/logs.cpp + ../util/yaml.cpp + ../util/cereal.cpp + ../util/vm_native.cpp + ../util/dyn_lib.cpp + ../util/sysinfo.cpp + ../util/cpu_stats.cpp + ../../Utilities/bin_patch.cpp + ../../Utilities/cheat_info.cpp + ../../Utilities/cond.cpp + ../../Utilities/Config.cpp + ../../Utilities/File.cpp + ../../Utilities/JIT.cpp + ../../Utilities/LUrlParser.cpp + ../../Utilities/mutex.cpp + ../../Utilities/rXml.cpp + ../../Utilities/sema.cpp + ../../Utilities/StrFmt.cpp + ../../Utilities/Thread.cpp + ../../Utilities/version.cpp ) target_include_directories(rpcs3_emu PUBLIC "${CMAKE_SOURCE_DIR}") target_link_libraries(rpcs3_emu - PUBLIC - 3rdparty::pugixml - 3rdparty::span) + PUBLIC + 3rdparty::pugixml + 3rdparty::span) if(MSVC) - set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS /GR-) + set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS /GR-) else() - set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS -fno-rtti) + set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS -fno-rtti) endif() if(MSVC) - set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS /EHsc) + set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS /EHsc) else() - set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS -fexceptions) + set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS -fexceptions) endif() if(MSVC) - set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS /GR) + set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS /GR) else() - set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS -frtti) + set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS -frtti) endif() # Crypto target_sources(rpcs3_emu PRIVATE - ../Crypto/aes.cpp - ../Crypto/aesni.cpp - ../Crypto/ec.cpp - ../Crypto/key_vault.cpp - ../Crypto/lz.cpp - ../Crypto/md5.cpp - ../Crypto/sha1.cpp - ../Crypto/sha256.cpp - ../Crypto/unedat.cpp - ../Crypto/unpkg.cpp - ../Crypto/unself.cpp - ../Crypto/utils.cpp + ../Crypto/aes.cpp + ../Crypto/aesni.cpp + ../Crypto/ec.cpp + ../Crypto/key_vault.cpp + ../Crypto/lz.cpp + ../Crypto/md5.cpp + ../Crypto/sha1.cpp + ../Crypto/sha256.cpp + ../Crypto/unedat.cpp + ../Crypto/unpkg.cpp + ../Crypto/unself.cpp + ../Crypto/utils.cpp ) # Loader target_sources(rpcs3_emu PRIVATE - ../Loader/ELF.cpp - ../Loader/mself.cpp - ../Loader/PSF.cpp - ../Loader/PUP.cpp - ../Loader/TAR.cpp - ../Loader/TROPUSR.cpp - ../Loader/TRP.cpp + ../Loader/ELF.cpp + ../Loader/mself.cpp + ../Loader/PSF.cpp + ../Loader/PUP.cpp + ../Loader/TAR.cpp + ../Loader/TROPUSR.cpp + ../Loader/TRP.cpp ) # Audio target_sources(rpcs3_emu PRIVATE - Audio/AudioDumper.cpp - Audio/AudioBackend.cpp - Audio/AL/OpenALBackend.cpp + Audio/AudioDumper.cpp + Audio/AudioBackend.cpp + Audio/AL/OpenALBackend.cpp ) if(USE_ALSA) - find_package(ALSA) - if(ALSA_FOUND) - target_sources(rpcs3_emu PRIVATE Audio/ALSA/ALSABackend.cpp) - target_link_libraries(rpcs3_emu PUBLIC 3rdparty::alsa) - endif() + find_package(ALSA) + if(ALSA_FOUND) + target_sources(rpcs3_emu PRIVATE Audio/ALSA/ALSABackend.cpp) + target_link_libraries(rpcs3_emu PUBLIC 3rdparty::alsa) + endif() endif() if(USE_PULSE AND PULSE_FOUND) - target_sources(rpcs3_emu PRIVATE Audio/Pulse/PulseBackend.cpp) - target_link_libraries(rpcs3_emu PUBLIC 3rdparty::pulse) + target_sources(rpcs3_emu PRIVATE Audio/Pulse/PulseBackend.cpp) + target_link_libraries(rpcs3_emu PUBLIC 3rdparty::pulse) endif() if(USE_FAUDIO) - find_package(SDL2) - if(SDL2_FOUND AND NOT SDL2_VERSION VERSION_LESS 2.0.9) - target_sources(rpcs3_emu PRIVATE Audio/FAudio/FAudioBackend.cpp) - target_link_libraries(rpcs3_emu PUBLIC 3rdparty::faudio) - endif() + find_package(SDL2) + if(SDL2_FOUND AND NOT SDL2_VERSION VERSION_LESS 2.0.9) + target_sources(rpcs3_emu PRIVATE Audio/FAudio/FAudioBackend.cpp) + target_link_libraries(rpcs3_emu PUBLIC 3rdparty::faudio) + endif() endif() if(WIN32) - target_include_directories(rpcs3_emu PUBLIC "${RPCS3_SRC_DIR}/../3rdparty/XAudio2Redist/include") - target_link_libraries(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/../3rdparty/XAudio2Redist/libs/xaudio2_9redist.lib") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DELAYLOAD:xaudio2_9redist.dll") - target_sources(rpcs3_emu PRIVATE - Audio/XAudio2/XAudio2Backend.cpp - ) + target_include_directories(rpcs3_emu PUBLIC "${RPCS3_SRC_DIR}/../3rdparty/XAudio2Redist/include") + target_link_libraries(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/../3rdparty/XAudio2Redist/libs/xaudio2_9redist.lib") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DELAYLOAD:xaudio2_9redist.dll") + target_sources(rpcs3_emu PRIVATE + Audio/XAudio2/XAudio2Backend.cpp + ) endif() target_link_libraries(rpcs3_emu - PUBLIC - 3rdparty::openal) + PUBLIC + 3rdparty::openal) # Cell target_sources(rpcs3_emu PRIVATE - Cell/MFC.cpp - Cell/PPUAnalyser.cpp - Cell/PPUDisAsm.cpp - Cell/PPUFunction.cpp - Cell/PPUInterpreter.cpp - Cell/PPUModule.cpp - Cell/PPUThread.cpp - Cell/PPUTranslator.cpp - Cell/RawSPUThread.cpp - Cell/SPUAnalyser.cpp - Cell/SPUASMJITRecompiler.cpp - Cell/SPUDisAsm.cpp - Cell/SPUInterpreter.cpp - Cell/SPURecompiler.cpp - Cell/SPUThread.cpp - Cell/lv2/lv2.cpp - Cell/lv2/sys_bdemu.cpp - Cell/lv2/sys_btsetting.cpp - Cell/lv2/sys_cond.cpp - Cell/lv2/sys_console.cpp - Cell/lv2/sys_crypto_engine.cpp - Cell/lv2/sys_config.cpp - Cell/lv2/sys_dbg.cpp - Cell/lv2/sys_event.cpp - Cell/lv2/sys_event_flag.cpp - Cell/lv2/sys_fs.cpp - Cell/lv2/sys_gamepad.cpp - Cell/lv2/sys_gpio.cpp - Cell/lv2/sys_hid.cpp - Cell/lv2/sys_interrupt.cpp - Cell/lv2/sys_io.cpp - Cell/lv2/sys_lwcond.cpp - Cell/lv2/sys_lwmutex.cpp - Cell/lv2/sys_memory.cpp - Cell/lv2/sys_mmapper.cpp - Cell/lv2/sys_mutex.cpp - Cell/lv2/sys_net.cpp - Cell/lv2/sys_overlay.cpp - Cell/lv2/sys_ppu_thread.cpp - Cell/lv2/sys_process.cpp - Cell/lv2/sys_prx.cpp - Cell/lv2/sys_rsx.cpp - Cell/lv2/sys_rsxaudio.cpp - Cell/lv2/sys_rwlock.cpp - Cell/lv2/sys_semaphore.cpp - Cell/lv2/sys_spu.cpp - Cell/lv2/sys_sm.cpp - Cell/lv2/sys_ss.cpp - Cell/lv2/sys_storage.cpp - Cell/lv2/sys_time.cpp - Cell/lv2/sys_timer.cpp - Cell/lv2/sys_trace.cpp - Cell/lv2/sys_tty.cpp - Cell/lv2/sys_uart.cpp - Cell/lv2/sys_usbd.cpp - Cell/lv2/sys_vm.cpp - Cell/Modules/cellAdec.cpp - Cell/Modules/cellAtrac.cpp - Cell/Modules/cellAtracMulti.cpp - Cell/Modules/cellAudio.cpp - Cell/Modules/cellAudioOut.cpp - Cell/Modules/cellAuthDialog.cpp - Cell/Modules/cellAvconfExt.cpp - Cell/Modules/cellBgdl.cpp - Cell/Modules/cellCamera.cpp - Cell/Modules/cellCelp8Enc.cpp - Cell/Modules/cellCelpEnc.cpp - Cell/Modules/cellCrossController.cpp - Cell/Modules/cellDaisy.cpp - Cell/Modules/cellDmux.cpp - Cell/Modules/cellDtcpIpUtility.cpp - Cell/Modules/cellFiber.cpp - Cell/Modules/cellFont.cpp - Cell/Modules/cellFontFT.cpp - Cell/Modules/cell_FreeType2.cpp - Cell/Modules/cellFs.cpp - Cell/Modules/cellGame.cpp - Cell/Modules/cellGameExec.cpp - Cell/Modules/cellGcmSys.cpp - Cell/Modules/cellGem.cpp - Cell/Modules/cellGifDec.cpp - Cell/Modules/cellHttp.cpp - Cell/Modules/cellHttpUtil.cpp - Cell/Modules/cellImeJp.cpp - Cell/Modules/cellJpgDec.cpp - Cell/Modules/cellJpgEnc.cpp - Cell/Modules/cellKb.cpp - Cell/Modules/cellKey2char.cpp - Cell/Modules/cellL10n.cpp - Cell/Modules/cellLibprof.cpp - Cell/Modules/cellMic.cpp - Cell/Modules/cellMouse.cpp - Cell/Modules/cellMsgDialog.cpp - Cell/Modules/cellMusic.cpp - Cell/Modules/cellMusicDecode.cpp - Cell/Modules/cellMusicExport.cpp - Cell/Modules/cellNetAoi.cpp - Cell/Modules/cellNetCtl.cpp - Cell/Modules/cellOskDialog.cpp - Cell/Modules/cellOvis.cpp - Cell/Modules/cellPad.cpp - Cell/Modules/cellPamf.cpp - Cell/Modules/cellPesmUtility.cpp - Cell/Modules/cellPhotoDecode.cpp - Cell/Modules/cellPhotoExport.cpp - Cell/Modules/cellPhotoImport.cpp - Cell/Modules/cellPngDec.cpp - Cell/Modules/cellPngEnc.cpp - Cell/Modules/cellPrint.cpp - Cell/Modules/cellRec.cpp - Cell/Modules/cellRemotePlay.cpp - Cell/Modules/cellResc.cpp - Cell/Modules/cellRtcAlarm.cpp - Cell/Modules/cellRtc.cpp - Cell/Modules/cellRudp.cpp - Cell/Modules/cellSail.cpp - Cell/Modules/cellSailRec.cpp - Cell/Modules/cellSaveData.cpp - Cell/Modules/cellScreenshot.cpp - Cell/Modules/cellSearch.cpp - Cell/Modules/cellSheap.cpp - Cell/Modules/cellSpudll.cpp - Cell/Modules/cellSpurs.cpp - Cell/Modules/cellSpursJq.cpp - Cell/Modules/cellSpursSpu.cpp - Cell/Modules/cellSsl.cpp - Cell/Modules/cellStorage.cpp - Cell/Modules/cellSubDisplay.cpp - Cell/Modules/cellSync2.cpp - Cell/Modules/cellSync.cpp - Cell/Modules/cellSysconf.cpp - Cell/Modules/cellSysCache.cpp - Cell/Modules/cellSysmodule.cpp - Cell/Modules/cellSysutilAp.cpp - Cell/Modules/cellSysutilAvc2.cpp - Cell/Modules/cellSysutilAvc.cpp - Cell/Modules/cellSysutilAvcExt.cpp - Cell/Modules/cellSysutil.cpp - Cell/Modules/cellSysutilMisc.cpp - Cell/Modules/cellSysutilNpEula.cpp - Cell/Modules/cellUsbd.cpp - Cell/Modules/cellUsbpspcm.cpp - Cell/Modules/cellUserInfo.cpp - Cell/Modules/cellVdec.cpp - Cell/Modules/cellVideoExport.cpp - Cell/Modules/cellVideoOut.cpp - Cell/Modules/cellVideoPlayerUtility.cpp - Cell/Modules/cellVideoUpload.cpp - Cell/Modules/cellVoice.cpp - Cell/Modules/cellVpost.cpp - Cell/Modules/cellWebBrowser.cpp - Cell/Modules/libad_async.cpp - Cell/Modules/libad_core.cpp - Cell/Modules/libmedi.cpp - Cell/Modules/libmixer.cpp - Cell/Modules/libsnd3.cpp - Cell/Modules/libsynth2.cpp - Cell/Modules/sceNp2.cpp - Cell/Modules/sceNpClans.cpp - Cell/Modules/sceNpCommerce2.cpp - Cell/Modules/sceNp.cpp - Cell/Modules/sceNpMatchingInt.cpp - Cell/Modules/sceNpSns.cpp - Cell/Modules/sceNpTrophy.cpp - Cell/Modules/sceNpTus.cpp - Cell/Modules/sceNpUtil.cpp - Cell/Modules/StaticHLE.cpp - Cell/Modules/sys_crashdump.cpp - Cell/Modules/sys_game.cpp - Cell/Modules/sys_heap.cpp - Cell/Modules/sys_io_.cpp - Cell/Modules/sys_libc_.cpp - Cell/Modules/sys_libc.cpp - Cell/Modules/sys_lv2dbg.cpp - Cell/Modules/sys_lwcond_.cpp - Cell/Modules/sys_lwmutex_.cpp - Cell/Modules/sys_mempool.cpp - Cell/Modules/sys_mmapper_.cpp - Cell/Modules/sys_net_.cpp - Cell/Modules/sys_ppu_thread_.cpp - Cell/Modules/sys_prx_.cpp - Cell/Modules/sysPrxForUser.cpp - Cell/Modules/sys_rsxaudio_.cpp - Cell/Modules/sys_spinlock.cpp - Cell/Modules/sys_spu_.cpp + Cell/MFC.cpp + Cell/PPUAnalyser.cpp + Cell/PPUDisAsm.cpp + Cell/PPUFunction.cpp + Cell/PPUInterpreter.cpp + Cell/PPUModule.cpp + Cell/PPUThread.cpp + Cell/PPUTranslator.cpp + Cell/RawSPUThread.cpp + Cell/SPUAnalyser.cpp + Cell/SPUASMJITRecompiler.cpp + Cell/SPUDisAsm.cpp + Cell/SPUInterpreter.cpp + Cell/SPURecompiler.cpp + Cell/SPUThread.cpp + Cell/lv2/lv2.cpp + Cell/lv2/sys_bdemu.cpp + Cell/lv2/sys_btsetting.cpp + Cell/lv2/sys_cond.cpp + Cell/lv2/sys_console.cpp + Cell/lv2/sys_crypto_engine.cpp + Cell/lv2/sys_config.cpp + Cell/lv2/sys_dbg.cpp + Cell/lv2/sys_event.cpp + Cell/lv2/sys_event_flag.cpp + Cell/lv2/sys_fs.cpp + Cell/lv2/sys_gamepad.cpp + Cell/lv2/sys_gpio.cpp + Cell/lv2/sys_hid.cpp + Cell/lv2/sys_interrupt.cpp + Cell/lv2/sys_io.cpp + Cell/lv2/sys_lwcond.cpp + Cell/lv2/sys_lwmutex.cpp + Cell/lv2/sys_memory.cpp + Cell/lv2/sys_mmapper.cpp + Cell/lv2/sys_mutex.cpp + Cell/lv2/sys_net.cpp + Cell/lv2/sys_overlay.cpp + Cell/lv2/sys_ppu_thread.cpp + Cell/lv2/sys_process.cpp + Cell/lv2/sys_prx.cpp + Cell/lv2/sys_rsx.cpp + Cell/lv2/sys_rsxaudio.cpp + Cell/lv2/sys_rwlock.cpp + Cell/lv2/sys_semaphore.cpp + Cell/lv2/sys_spu.cpp + Cell/lv2/sys_sm.cpp + Cell/lv2/sys_ss.cpp + Cell/lv2/sys_storage.cpp + Cell/lv2/sys_time.cpp + Cell/lv2/sys_timer.cpp + Cell/lv2/sys_trace.cpp + Cell/lv2/sys_tty.cpp + Cell/lv2/sys_uart.cpp + Cell/lv2/sys_usbd.cpp + Cell/lv2/sys_vm.cpp + Cell/Modules/cellAdec.cpp + Cell/Modules/cellAtrac.cpp + Cell/Modules/cellAtracMulti.cpp + Cell/Modules/cellAudio.cpp + Cell/Modules/cellAudioOut.cpp + Cell/Modules/cellAuthDialog.cpp + Cell/Modules/cellAvconfExt.cpp + Cell/Modules/cellBgdl.cpp + Cell/Modules/cellCamera.cpp + Cell/Modules/cellCelp8Enc.cpp + Cell/Modules/cellCelpEnc.cpp + Cell/Modules/cellCrossController.cpp + Cell/Modules/cellDaisy.cpp + Cell/Modules/cellDmux.cpp + Cell/Modules/cellDtcpIpUtility.cpp + Cell/Modules/cellFiber.cpp + Cell/Modules/cellFont.cpp + Cell/Modules/cellFontFT.cpp + Cell/Modules/cell_FreeType2.cpp + Cell/Modules/cellFs.cpp + Cell/Modules/cellGame.cpp + Cell/Modules/cellGameExec.cpp + Cell/Modules/cellGcmSys.cpp + Cell/Modules/cellGem.cpp + Cell/Modules/cellGifDec.cpp + Cell/Modules/cellHttp.cpp + Cell/Modules/cellHttpUtil.cpp + Cell/Modules/cellImeJp.cpp + Cell/Modules/cellJpgDec.cpp + Cell/Modules/cellJpgEnc.cpp + Cell/Modules/cellKb.cpp + Cell/Modules/cellKey2char.cpp + Cell/Modules/cellL10n.cpp + Cell/Modules/cellLibprof.cpp + Cell/Modules/cellMic.cpp + Cell/Modules/cellMouse.cpp + Cell/Modules/cellMsgDialog.cpp + Cell/Modules/cellMusic.cpp + Cell/Modules/cellMusicDecode.cpp + Cell/Modules/cellMusicExport.cpp + Cell/Modules/cellNetAoi.cpp + Cell/Modules/cellNetCtl.cpp + Cell/Modules/cellOskDialog.cpp + Cell/Modules/cellOvis.cpp + Cell/Modules/cellPad.cpp + Cell/Modules/cellPamf.cpp + Cell/Modules/cellPesmUtility.cpp + Cell/Modules/cellPhotoDecode.cpp + Cell/Modules/cellPhotoExport.cpp + Cell/Modules/cellPhotoImport.cpp + Cell/Modules/cellPngDec.cpp + Cell/Modules/cellPngEnc.cpp + Cell/Modules/cellPrint.cpp + Cell/Modules/cellRec.cpp + Cell/Modules/cellRemotePlay.cpp + Cell/Modules/cellResc.cpp + Cell/Modules/cellRtcAlarm.cpp + Cell/Modules/cellRtc.cpp + Cell/Modules/cellRudp.cpp + Cell/Modules/cellSail.cpp + Cell/Modules/cellSailRec.cpp + Cell/Modules/cellSaveData.cpp + Cell/Modules/cellScreenshot.cpp + Cell/Modules/cellSearch.cpp + Cell/Modules/cellSheap.cpp + Cell/Modules/cellSpudll.cpp + Cell/Modules/cellSpurs.cpp + Cell/Modules/cellSpursJq.cpp + Cell/Modules/cellSpursSpu.cpp + Cell/Modules/cellSsl.cpp + Cell/Modules/cellStorage.cpp + Cell/Modules/cellSubDisplay.cpp + Cell/Modules/cellSync2.cpp + Cell/Modules/cellSync.cpp + Cell/Modules/cellSysconf.cpp + Cell/Modules/cellSysCache.cpp + Cell/Modules/cellSysmodule.cpp + Cell/Modules/cellSysutilAp.cpp + Cell/Modules/cellSysutilAvc2.cpp + Cell/Modules/cellSysutilAvc.cpp + Cell/Modules/cellSysutilAvcExt.cpp + Cell/Modules/cellSysutil.cpp + Cell/Modules/cellSysutilMisc.cpp + Cell/Modules/cellSysutilNpEula.cpp + Cell/Modules/cellUsbd.cpp + Cell/Modules/cellUsbpspcm.cpp + Cell/Modules/cellUserInfo.cpp + Cell/Modules/cellVdec.cpp + Cell/Modules/cellVideoExport.cpp + Cell/Modules/cellVideoOut.cpp + Cell/Modules/cellVideoPlayerUtility.cpp + Cell/Modules/cellVideoUpload.cpp + Cell/Modules/cellVoice.cpp + Cell/Modules/cellVpost.cpp + Cell/Modules/cellWebBrowser.cpp + Cell/Modules/libad_async.cpp + Cell/Modules/libad_core.cpp + Cell/Modules/libmedi.cpp + Cell/Modules/libmixer.cpp + Cell/Modules/libsnd3.cpp + Cell/Modules/libsynth2.cpp + Cell/Modules/sceNp2.cpp + Cell/Modules/sceNpClans.cpp + Cell/Modules/sceNpCommerce2.cpp + Cell/Modules/sceNp.cpp + Cell/Modules/sceNpMatchingInt.cpp + Cell/Modules/sceNpSns.cpp + Cell/Modules/sceNpTrophy.cpp + Cell/Modules/sceNpTus.cpp + Cell/Modules/sceNpUtil.cpp + Cell/Modules/StaticHLE.cpp + Cell/Modules/sys_crashdump.cpp + Cell/Modules/sys_game.cpp + Cell/Modules/sys_heap.cpp + Cell/Modules/sys_io_.cpp + Cell/Modules/sys_libc_.cpp + Cell/Modules/sys_libc.cpp + Cell/Modules/sys_lv2dbg.cpp + Cell/Modules/sys_lwcond_.cpp + Cell/Modules/sys_lwmutex_.cpp + Cell/Modules/sys_mempool.cpp + Cell/Modules/sys_mmapper_.cpp + Cell/Modules/sys_net_.cpp + Cell/Modules/sys_ppu_thread_.cpp + Cell/Modules/sys_prx_.cpp + Cell/Modules/sysPrxForUser.cpp + Cell/Modules/sys_rsxaudio_.cpp + Cell/Modules/sys_spinlock.cpp + Cell/Modules/sys_spu_.cpp ) if(NOT MSVC) - set_source_files_properties(Cell/PPUTranslator.cpp PROPERTIES COMPILE_FLAGS -fno-rtti) + set_source_files_properties(Cell/PPUTranslator.cpp PROPERTIES COMPILE_FLAGS -fno-rtti) endif() target_link_libraries(rpcs3_emu - PRIVATE - 3rdparty::stblib 3rdparty::libpng) + PRIVATE + 3rdparty::stblib 3rdparty::libpng) # CPU target_sources(rpcs3_emu PRIVATE - CPU/CPUThread.cpp - CPU/CPUTranslator.cpp + CPU/CPUThread.cpp + CPU/CPUTranslator.cpp ) target_link_libraries(rpcs3_emu - PUBLIC 3rdparty::llvm 3rdparty::asmjit) + PUBLIC 3rdparty::llvm 3rdparty::asmjit) # Io target_sources(rpcs3_emu PRIVATE - Io/interception.cpp - Io/KeyboardHandler.cpp - Io/pad_config.cpp - Io/pad_config_types.cpp - Io/PadHandler.cpp - Io/usb_device.cpp - Io/Skylander.cpp - Io/GHLtar.cpp - Io/Buzz.cpp - Io/Turntable.cpp + Io/interception.cpp + Io/KeyboardHandler.cpp + Io/pad_config.cpp + Io/pad_config_types.cpp + Io/PadHandler.cpp + Io/usb_device.cpp + Io/Skylander.cpp + Io/GHLtar.cpp + Io/Buzz.cpp + Io/Turntable.cpp ) # Np target_sources(rpcs3_emu PRIVATE - NP/fb_helpers.cpp - NP/np_contexts.cpp - NP/np_handler.cpp - NP/signaling_handler.cpp - NP/np_structs_extra.cpp - NP/rpcn_client.cpp - NP/rpcn_config.cpp + NP/fb_helpers.cpp + NP/np_contexts.cpp + NP/np_handler.cpp + NP/signaling_handler.cpp + NP/np_structs_extra.cpp + NP/rpcn_client.cpp + NP/rpcn_config.cpp ) # Memory target_sources(rpcs3_emu PRIVATE - Memory/vm.cpp + Memory/vm.cpp ) # RSX target_sources(rpcs3_emu PRIVATE - RSX/CgBinaryFragmentProgram.cpp - RSX/CgBinaryVertexProgram.cpp - RSX/gcm_enums.cpp - RSX/gcm_printing.cpp - RSX/GSRender.cpp - RSX/RSXFIFO.cpp - RSX/rsx_methods.cpp - RSX/RSXOffload.cpp - RSX/RSXTexture.cpp - RSX/RSXThread.cpp - RSX/rsx_utils.cpp - RSX/RSXDisAsm.cpp - RSX/Common/BufferUtils.cpp - RSX/Common/FragmentProgramDecompiler.cpp - RSX/Common/GLSLCommon.cpp - RSX/Common/ProgramStateCache.cpp - RSX/Common/surface_store.cpp - RSX/Common/TextureUtils.cpp - RSX/Common/texture_cache.cpp - RSX/Common/VertexProgramDecompiler.cpp - RSX/Null/NullGSRender.cpp - RSX/Overlays/overlay_animation.cpp - RSX/Overlays/overlay_edit_text.cpp - RSX/Overlays/overlay_fonts.cpp - RSX/Overlays/overlay_list_view.cpp - RSX/Overlays/overlay_message_dialog.cpp - RSX/Overlays/overlay_osk.cpp - RSX/Overlays/overlay_osk_panel.cpp - RSX/Overlays/overlay_perf_metrics.cpp - RSX/Overlays/overlay_progress_bar.cpp - RSX/Overlays/overlay_save_dialog.cpp - RSX/Overlays/overlay_utils.cpp - RSX/Overlays/overlays.cpp - RSX/Overlays/overlay_shader_compile_notification.cpp - RSX/Overlays/overlay_trophy_notification.cpp - RSX/Overlays/Shaders/shader_loading_dialog.cpp - RSX/Overlays/Shaders/shader_loading_dialog_native.cpp - RSX/Capture/rsx_capture.cpp - RSX/Capture/rsx_replay.cpp - RSX/GL/GLCommonDecompiler.cpp - RSX/GL/GLCompute.cpp - RSX/GL/GLDraw.cpp - RSX/GL/GLFragmentProgram.cpp - RSX/GL/GLGSRender.cpp - RSX/GL/GLHelpers.cpp - RSX/GL/GLOverlays.cpp - RSX/GL/GLPipelineCompiler.cpp - RSX/GL/GLPresent.cpp - RSX/GL/GLRenderTargets.cpp - RSX/GL/GLShaderInterpreter.cpp - RSX/GL/GLTexture.cpp - RSX/GL/GLVertexBuffers.cpp - RSX/GL/GLVertexProgram.cpp - RSX/GL/GLTextureCache.cpp - RSX/GL/OpenGL.cpp + RSX/CgBinaryFragmentProgram.cpp + RSX/CgBinaryVertexProgram.cpp + RSX/gcm_enums.cpp + RSX/gcm_printing.cpp + RSX/GSRender.cpp + RSX/RSXFIFO.cpp + RSX/rsx_methods.cpp + RSX/RSXOffload.cpp + RSX/RSXTexture.cpp + RSX/RSXThread.cpp + RSX/rsx_utils.cpp + RSX/RSXDisAsm.cpp + RSX/Common/BufferUtils.cpp + RSX/Common/FragmentProgramDecompiler.cpp + RSX/Common/GLSLCommon.cpp + RSX/Common/ProgramStateCache.cpp + RSX/Common/surface_store.cpp + RSX/Common/TextureUtils.cpp + RSX/Common/texture_cache.cpp + RSX/Common/VertexProgramDecompiler.cpp + RSX/Null/NullGSRender.cpp + RSX/Overlays/overlay_animation.cpp + RSX/Overlays/overlay_edit_text.cpp + RSX/Overlays/overlay_fonts.cpp + RSX/Overlays/overlay_list_view.cpp + RSX/Overlays/overlay_message_dialog.cpp + RSX/Overlays/overlay_osk.cpp + RSX/Overlays/overlay_osk_panel.cpp + RSX/Overlays/overlay_perf_metrics.cpp + RSX/Overlays/overlay_progress_bar.cpp + RSX/Overlays/overlay_save_dialog.cpp + RSX/Overlays/overlay_utils.cpp + RSX/Overlays/overlays.cpp + RSX/Overlays/overlay_shader_compile_notification.cpp + RSX/Overlays/overlay_trophy_notification.cpp + RSX/Overlays/Shaders/shader_loading_dialog.cpp + RSX/Overlays/Shaders/shader_loading_dialog_native.cpp + RSX/Capture/rsx_capture.cpp + RSX/Capture/rsx_replay.cpp + RSX/GL/GLCommonDecompiler.cpp + RSX/GL/GLCompute.cpp + RSX/GL/GLDraw.cpp + RSX/GL/GLFragmentProgram.cpp + RSX/GL/GLGSRender.cpp + RSX/GL/GLHelpers.cpp + RSX/GL/GLOverlays.cpp + RSX/GL/GLPipelineCompiler.cpp + RSX/GL/GLPresent.cpp + RSX/GL/GLRenderTargets.cpp + RSX/GL/GLShaderInterpreter.cpp + RSX/GL/GLTexture.cpp + RSX/GL/GLVertexBuffers.cpp + RSX/GL/GLVertexProgram.cpp + RSX/GL/GLTextureCache.cpp + RSX/GL/OpenGL.cpp ) if(TARGET 3rdparty_vulkan) - target_sources(rpcs3_emu PRIVATE - RSX/VK/vkutils/barriers.cpp - RSX/VK/vkutils/buffer_object.cpp - RSX/VK/vkutils/chip_class.cpp - RSX/VK/vkutils/commands.cpp - RSX/VK/vkutils/data_heap.cpp - RSX/VK/vkutils/image.cpp - RSX/VK/vkutils/image_helpers.cpp - RSX/VK/vkutils/scratch.cpp - RSX/VK/vkutils/sync.cpp - RSX/VK/vkutils/memory.cpp - RSX/VK/vkutils/device.cpp - RSX/VK/vkutils/sampler.cpp - RSX/VK/vkutils/shared.cpp - RSX/VK/VKAsyncScheduler.cpp - RSX/VK/VKCommandStream.cpp - RSX/VK/VKCommonDecompiler.cpp - RSX/VK/VKCompute.cpp - RSX/VK/VKDMA.cpp - RSX/VK/VKDraw.cpp - RSX/VK/VKFormats.cpp - RSX/VK/VKFragmentProgram.cpp - RSX/VK/VKFramebuffer.cpp - RSX/VK/VKGSRender.cpp - RSX/VK/VKHelpers.cpp - RSX/VK/VKMemAlloc.cpp - RSX/VK/VKOverlays.cpp - RSX/VK/VKPipelineCompiler.cpp - RSX/VK/VKPresent.cpp - RSX/VK/VKProgramPipeline.cpp - RSX/VK/VKQueryPool.cpp - RSX/VK/VKRenderPass.cpp - RSX/VK/VKResolveHelper.cpp - RSX/VK/VKResourceManager.cpp - RSX/VK/VKShaderInterpreter.cpp - RSX/VK/VKTexture.cpp - RSX/VK/VKVertexBuffers.cpp - RSX/VK/VKVertexProgram.cpp - RSX/VK/VKTextureCache.cpp - ) + target_sources(rpcs3_emu PRIVATE + RSX/VK/vkutils/barriers.cpp + RSX/VK/vkutils/buffer_object.cpp + RSX/VK/vkutils/chip_class.cpp + RSX/VK/vkutils/commands.cpp + RSX/VK/vkutils/data_heap.cpp + RSX/VK/vkutils/image.cpp + RSX/VK/vkutils/image_helpers.cpp + RSX/VK/vkutils/scratch.cpp + RSX/VK/vkutils/sync.cpp + RSX/VK/vkutils/memory.cpp + RSX/VK/vkutils/device.cpp + RSX/VK/vkutils/sampler.cpp + RSX/VK/vkutils/shared.cpp + RSX/VK/VKAsyncScheduler.cpp + RSX/VK/VKCommandStream.cpp + RSX/VK/VKCommonDecompiler.cpp + RSX/VK/VKCompute.cpp + RSX/VK/VKDMA.cpp + RSX/VK/VKDraw.cpp + RSX/VK/VKFormats.cpp + RSX/VK/VKFragmentProgram.cpp + RSX/VK/VKFramebuffer.cpp + RSX/VK/VKGSRender.cpp + RSX/VK/VKHelpers.cpp + RSX/VK/VKMemAlloc.cpp + RSX/VK/VKOverlays.cpp + RSX/VK/VKPipelineCompiler.cpp + RSX/VK/VKPresent.cpp + RSX/VK/VKProgramPipeline.cpp + RSX/VK/VKQueryPool.cpp + RSX/VK/VKRenderPass.cpp + RSX/VK/VKResolveHelper.cpp + RSX/VK/VKResourceManager.cpp + RSX/VK/VKShaderInterpreter.cpp + RSX/VK/VKTexture.cpp + RSX/VK/VKVertexBuffers.cpp + RSX/VK/VKVertexProgram.cpp + RSX/VK/VKTextureCache.cpp + ) endif() target_link_libraries(rpcs3_emu - PUBLIC - 3rdparty::ffmpeg 3rdparty::cereal - 3rdparty::opengl 3rdparty::stblib - 3rdparty::vulkan 3rdparty::glew - 3rdparty::libusb 3rdparty::wolfssl - PRIVATE - 3rdparty::span 3rdparty::xxhash + PUBLIC + 3rdparty::ffmpeg 3rdparty::cereal + 3rdparty::opengl 3rdparty::stblib + 3rdparty::vulkan 3rdparty::glew + 3rdparty::libusb 3rdparty::wolfssl + PRIVATE + 3rdparty::span 3rdparty::xxhash ) if(USE_PRECOMPILED_HEADERS) - if(COMMAND target_precompile_headers) - target_precompile_headers(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") - else() - # Setup cotire - option(UNITY_BUILD_EMU "Use unity build for rpcs3_emu target" OFF) + if(COMMAND target_precompile_headers) + target_precompile_headers(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") + else() + # Setup cotire + option(UNITY_BUILD_EMU "Use unity build for rpcs3_emu target" OFF) - set_target_properties(rpcs3_emu PROPERTIES - COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" - COTIRE_ADD_UNITY_BUILD ${UNITY_BUILD_EMU}) + set_target_properties(rpcs3_emu PROPERTIES + COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" + COTIRE_ADD_UNITY_BUILD ${UNITY_BUILD_EMU}) - cotire(rpcs3_emu) - endif() + cotire(rpcs3_emu) + endif() endif() diff --git a/rpcs3/rpcs3qt/CMakeLists.txt b/rpcs3/rpcs3qt/CMakeLists.txt index 711d1cd329..35ea019d41 100644 --- a/rpcs3/rpcs3qt/CMakeLists.txt +++ b/rpcs3/rpcs3qt/CMakeLists.txt @@ -2,113 +2,113 @@ add_compile_definitions(WC_NO_HARDEN) set(SRC_FILES - about_dialog.cpp - auto_pause_settings_dialog.cpp - breakpoint_handler.cpp - breakpoint_list.cpp - call_stack_list.cpp - cg_disasm_window.cpp - cheat_manager.cpp - config_adapter.cpp - curl_handle.cpp - custom_dialog.cpp - custom_table_widget_item.cpp - debugger_frame.cpp - debugger_list.cpp - downloader.cpp - _discord_utils.cpp - emu_settings.cpp - fatal_error_dialog.cpp - find_dialog.cpp - game_compatibility.cpp - game_list.cpp - game_list_frame.cpp - game_list_grid.cpp - game_list_grid_delegate.cpp - gui_application.cpp - gl_gs_frame.cpp - gs_frame.cpp - gui_settings.cpp - input_dialog.cpp - instruction_editor_dialog.cpp - kernel_explorer.cpp - localized.cpp - localized_emu.h - log_frame.cpp - log_viewer.cpp - main_window.cpp - memory_string_searcher.cpp - memory_viewer_panel.cpp - microphone_creator.cpp - msg_dialog_frame.cpp - osk_dialog_frame.cpp - pad_led_settings_dialog.cpp - pad_settings_dialog.cpp - patch_manager_dialog.cpp - persistent_settings.cpp - pkg_install_dialog.cpp - progress_dialog.cpp - qt_utils.cpp - register_editor_dialog.cpp - render_creator.cpp - rpcn_settings_dialog.cpp - rsx_debugger.cpp - save_data_dialog.cpp - save_data_info_dialog.cpp - save_data_list_dialog.cpp - save_manager_dialog.cpp - screenshot_manager_dialog.cpp - screenshot_preview.cpp - settings.cpp - settings_dialog.cpp - skylander_dialog.cpp - syntax_highlighter.cpp - tooltips.cpp - trophy_manager_dialog.cpp - trophy_notification_frame.cpp - trophy_notification_helper.cpp - update_manager.cpp - user_account.cpp - user_manager_dialog.cpp - vfs_dialog.cpp - vfs_dialog_tab.cpp - welcome_dialog.cpp + about_dialog.cpp + auto_pause_settings_dialog.cpp + breakpoint_handler.cpp + breakpoint_list.cpp + call_stack_list.cpp + cg_disasm_window.cpp + cheat_manager.cpp + config_adapter.cpp + curl_handle.cpp + custom_dialog.cpp + custom_table_widget_item.cpp + debugger_frame.cpp + debugger_list.cpp + downloader.cpp + _discord_utils.cpp + emu_settings.cpp + fatal_error_dialog.cpp + find_dialog.cpp + game_compatibility.cpp + game_list.cpp + game_list_frame.cpp + game_list_grid.cpp + game_list_grid_delegate.cpp + gui_application.cpp + gl_gs_frame.cpp + gs_frame.cpp + gui_settings.cpp + input_dialog.cpp + instruction_editor_dialog.cpp + kernel_explorer.cpp + localized.cpp + localized_emu.h + log_frame.cpp + log_viewer.cpp + main_window.cpp + memory_string_searcher.cpp + memory_viewer_panel.cpp + microphone_creator.cpp + msg_dialog_frame.cpp + osk_dialog_frame.cpp + pad_led_settings_dialog.cpp + pad_settings_dialog.cpp + patch_manager_dialog.cpp + persistent_settings.cpp + pkg_install_dialog.cpp + progress_dialog.cpp + qt_utils.cpp + register_editor_dialog.cpp + render_creator.cpp + rpcn_settings_dialog.cpp + rsx_debugger.cpp + save_data_dialog.cpp + save_data_info_dialog.cpp + save_data_list_dialog.cpp + save_manager_dialog.cpp + screenshot_manager_dialog.cpp + screenshot_preview.cpp + settings.cpp + settings_dialog.cpp + skylander_dialog.cpp + syntax_highlighter.cpp + tooltips.cpp + trophy_manager_dialog.cpp + trophy_notification_frame.cpp + trophy_notification_helper.cpp + update_manager.cpp + user_account.cpp + user_manager_dialog.cpp + vfs_dialog.cpp + vfs_dialog_tab.cpp + welcome_dialog.cpp ) set(UI_FILES - about_dialog.ui - main_window.ui - pad_led_settings_dialog.ui - pad_settings_dialog.ui - settings_dialog.ui - welcome_dialog.ui + about_dialog.ui + main_window.ui + pad_led_settings_dialog.ui + pad_settings_dialog.ui + settings_dialog.ui + welcome_dialog.ui ) set(RES_FILES "../resources.qrc") if(WIN32) - list(APPEND RES_FILES "../windows.qrc") + list(APPEND RES_FILES "../windows.qrc") endif() add_library(rpcs3_ui ${SRC_FILES} ${UI_FILES} ${RES_FILES}) set_target_properties(rpcs3_ui - PROPERTIES - AUTOMOC ON - AUTOUIC ON - AUTORCC ON) + PROPERTIES + AUTOMOC ON + AUTOUIC ON + AUTORCC ON) target_link_libraries(rpcs3_ui - PUBLIC - 3rdparty::qt5 3rdparty::yaml-cpp + PUBLIC + 3rdparty::qt5 3rdparty::yaml-cpp - PRIVATE - rpcs3_emu - 3rdparty::zlib 3rdparty::pugixml - 3rdparty::discord-rpc - 3rdparty::hidapi - 3rdparty::libusb - 3rdparty::libpng - 3rdparty::7z - 3rdparty::wolfssl - 3rdparty::libcurl) + PRIVATE + rpcs3_emu + 3rdparty::zlib 3rdparty::pugixml + 3rdparty::discord-rpc + 3rdparty::hidapi + 3rdparty::libusb + 3rdparty::libpng + 3rdparty::7z + 3rdparty::wolfssl + 3rdparty::libcurl)