unified missmatched indentation in CMake files

This commit is contained in:
p01arst0rm 2021-04-20 20:11:17 +01:00 committed by Ivan
parent ddea45160b
commit bcfae17219
4 changed files with 621 additions and 621 deletions

View file

@ -3,13 +3,13 @@ cmake_minimum_required(VERSION 3.14.1)
project(rpcs3) project(rpcs3)
if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU") if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9) if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9)
message(FATAL_ERROR "RPCS3 requires at least gcc-9.") message(FATAL_ERROR "RPCS3 requires at least gcc-9.")
endif() endif()
elseif(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") elseif(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0) if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0)
message(FATAL_ERROR "RPCS3 requires at least clang-11.0.") message(FATAL_ERROR "RPCS3 requires at least clang-11.0.")
endif() endif()
endif() endif()
# include build options # include build options
@ -21,34 +21,34 @@ set(CMAKE_CXX_STANDARD 20)
include(CheckCXXCompilerFlag) include(CheckCXXCompilerFlag)
if(NOT CMAKE_BUILD_TYPE) if(NOT CMAKE_BUILD_TYPE)
message(STATUS "No build type selected, default to Release") message(STATUS "No build type selected, default to Release")
set(CMAKE_BUILD_TYPE "Release") set(CMAKE_BUILD_TYPE "Release")
endif() endif()
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug") if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
add_definitions(-DNDEBUG) add_definitions(-DNDEBUG)
elseif(NOT MSVC) elseif(NOT MSVC)
add_definitions(-D_DEBUG) add_definitions(-D_DEBUG)
endif() endif()
if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8) 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() endif()
find_program(CCACHE_FOUND ccache) find_program(CCACHE_FOUND ccache)
if(CCACHE_FOUND) if(CCACHE_FOUND)
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
endif() endif()
if(WIN32) if(WIN32)
add_definitions(-DUNICODE) add_definitions(-DUNICODE)
add_definitions(-D_WIN32_WINNT=0x0602) add_definitions(-D_WIN32_WINNT=0x0602)
endif() endif()
if(APPLE) if(APPLE)
include_directories(/opt/local/include) include_directories(/opt/local/include)
link_directories(/opt/local/lib) link_directories(/opt/local/lib)
endif() endif()
# Warnings are silenced for 3rdparty code # Warnings are silenced for 3rdparty code
@ -57,7 +57,7 @@ set(CMAKE_C_FLAGS -w)
set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "") set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "")
if(MSVC) 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() endif()
add_subdirectory(Vulkan EXCLUDE_FROM_ALL) add_subdirectory(Vulkan EXCLUDE_FROM_ALL)
@ -68,7 +68,7 @@ unset(CMAKE_CXX_FLAGS)
unset(CMAKE_C_FLAGS) unset(CMAKE_C_FLAGS)
if(NOT WIN32) if(NOT WIN32)
add_compile_options(-pthread) add_compile_options(-pthread)
endif() endif()
# TODO: do real installation, including copying directory structure # TODO: do real installation, including copying directory structure

View file

@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.8.2) cmake_minimum_required(VERSION 3.8.2)
if(USE_PRECOMPILED_HEADERS AND NOT COMMAND target_precompile_headers) if(USE_PRECOMPILED_HEADERS AND NOT COMMAND target_precompile_headers)
include(cotire) include(cotire)
endif() endif()
# Generate git-version.h at build time. # Generate git-version.h at build time.
@ -12,27 +12,27 @@ include(ConfigureCompiler)
set(ADDITIONAL_LIBS "") set(ADDITIONAL_LIBS "")
if(CMAKE_SYSTEM MATCHES "Linux") if(CMAKE_SYSTEM MATCHES "Linux")
#on some Linux distros shm_unlink and similar functions are in librt only #on some Linux distros shm_unlink and similar functions are in librt only
set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "rt") set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "rt")
elseif(NOT MSVC AND NOT CMAKE_CXX_FLAGS MATCHES "LIBICONV_PLUG") elseif(NOT MSVC AND NOT CMAKE_CXX_FLAGS MATCHES "LIBICONV_PLUG")
#it seems like glibc includes the iconv functions we use but other libc #it seems like glibc includes the iconv functions we use but other libc
#implementations like the one on OSX don't seem implement them #implementations like the one on OSX don't seem implement them
set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "iconv") set(ADDITIONAL_LIBS ${ADDITIONAL_LIBS} "iconv")
endif() endif()
if(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
# Optionally enable X11 for window management # Optionally enable X11 for window management
find_package(X11) find_package(X11)
if(X11_FOUND) if(X11_FOUND)
add_definitions(-DHAVE_X11) add_definitions(-DHAVE_X11)
endif() endif()
endif() endif()
if(NOT RPCS3_SRC_DIR) if(NOT RPCS3_SRC_DIR)
set(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR}) set(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR})
message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}")
else() else()
message("-- Using Custom RPCS3_SRC_DIR=${RPCS3_SRC_DIR}") message("-- Using Custom RPCS3_SRC_DIR=${RPCS3_SRC_DIR}")
endif() endif()
# Qt5 # Qt5
@ -46,43 +46,43 @@ add_subdirectory(Emu)
add_subdirectory(rpcs3qt) add_subdirectory(rpcs3qt)
set(RPCS3_SRC set(RPCS3_SRC
display_sleep_control.cpp display_sleep_control.cpp
headless_application.cpp headless_application.cpp
main.cpp main.cpp
main_application.cpp main_application.cpp
rpcs3_version.cpp rpcs3_version.cpp
stb_image.cpp stb_image.cpp
stdafx.cpp stdafx.cpp
Input/basic_keyboard_handler.cpp Input/basic_keyboard_handler.cpp
Input/basic_mouse_handler.cpp Input/basic_mouse_handler.cpp
Input/ds3_pad_handler.cpp Input/ds3_pad_handler.cpp
Input/ds4_pad_handler.cpp Input/ds4_pad_handler.cpp
Input/dualsense_pad_handler.cpp Input/dualsense_pad_handler.cpp
Input/evdev_joystick_handler.cpp Input/evdev_joystick_handler.cpp
Input/hid_pad_handler.cpp Input/hid_pad_handler.cpp
Input/keyboard_pad_handler.cpp Input/keyboard_pad_handler.cpp
Input/mm_joystick_handler.cpp Input/mm_joystick_handler.cpp
Input/pad_thread.cpp Input/pad_thread.cpp
Input/xinput_pad_handler.cpp Input/xinput_pad_handler.cpp
) )
if(WIN32) if(WIN32)
add_executable(rpcs3 WIN32 ${RPCS3_SRC}) add_executable(rpcs3 WIN32 ${RPCS3_SRC})
elseif(APPLE) elseif(APPLE)
add_executable(rpcs3 MACOSX_BUNDLE ${RPCS3_SRC} "${RPCS3_SRC_DIR}/rpcs3.icns") add_executable(rpcs3 MACOSX_BUNDLE ${RPCS3_SRC} "${RPCS3_SRC_DIR}/rpcs3.icns")
set_target_properties(rpcs3 set_target_properties(rpcs3
PROPERTIES PROPERTIES
MACOSX_BUNDLE_INFO_PLIST "${RPCS3_SRC_DIR}/rpcs3.plist.in") MACOSX_BUNDLE_INFO_PLIST "${RPCS3_SRC_DIR}/rpcs3.plist.in")
else() else()
add_executable(rpcs3 ${RPCS3_SRC}) add_executable(rpcs3 ${RPCS3_SRC})
endif() endif()
gen_git_version(${RPCS3_SRC_DIR}) gen_git_version(${RPCS3_SRC_DIR})
set_target_properties(rpcs3 set_target_properties(rpcs3
PROPERTIES PROPERTIES
AUTOMOC ON AUTOMOC ON
AUTOUIC ON) AUTOUIC ON)
target_link_libraries(rpcs3 rpcs3_emu rpcs3_ui) 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) 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 # Win resource file
if(WIN32) if(WIN32)
target_sources(rpcs3 PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/rpcs3.rc") target_sources(rpcs3 PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/rpcs3.rc")
endif() endif()
# Unix display manager # Unix display manager
if(X11_FOUND) if(X11_FOUND)
target_include_directories(rpcs3 PUBLIC ${X11_INCLUDE_DIR}) target_include_directories(rpcs3 PUBLIC ${X11_INCLUDE_DIR})
target_link_libraries(rpcs3 ${X11_LIBRARIES}) target_link_libraries(rpcs3 ${X11_LIBRARIES})
elseif(USE_VULKAN AND UNIX AND NOT WAYLAND_FOUND AND NOT APPLE) elseif(USE_VULKAN AND UNIX AND NOT WAYLAND_FOUND AND NOT APPLE)
# Wayland has been checked in 3rdparty/CMakeLists.txt already. # Wayland has been checked in 3rdparty/CMakeLists.txt already.
message(FATAL_ERROR "RPCS3 requires either X11 or Wayland (or both) for Vulkan.") message(FATAL_ERROR "RPCS3 requires either X11 or Wayland (or both) for Vulkan.")
endif() endif()
if(UNIX) if(UNIX)
set(CMAKE_THREAD_PREFER_PTHREAD TRUE) set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
find_package(Threads REQUIRED) find_package(Threads REQUIRED)
target_link_libraries(rpcs3 Threads::Threads) target_link_libraries(rpcs3 Threads::Threads)
endif() endif()
if(WIN32) 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() else()
target_link_libraries(rpcs3 ${CMAKE_DL_LIBS}) target_link_libraries(rpcs3 ${CMAKE_DL_LIBS})
endif() endif()
if(USE_PRECOMPILED_HEADERS) if(USE_PRECOMPILED_HEADERS)
if(COMMAND target_precompile_headers) if(COMMAND target_precompile_headers)
target_precompile_headers(rpcs3 PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") target_precompile_headers(rpcs3 PRIVATE "${RPCS3_SRC_DIR}/stdafx.h")
else() else()
set_target_properties(rpcs3 PROPERTIES set_target_properties(rpcs3 PROPERTIES
COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h"
COTIRE_ADD_UNITY_BUILD OFF) COTIRE_ADD_UNITY_BUILD OFF)
cotire(rpcs3) cotire(rpcs3)
endif() endif()
endif() endif()
# Copy icons to executable directory # Copy icons to executable directory
if(APPLE) if(APPLE)
add_custom_command(TARGET rpcs3 POST_BUILD add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${RPCS3_SRC_DIR}/rpcs3.icns $<TARGET_FILE_DIR:rpcs3>/../Resources/rpcs3.icns ${RPCS3_SRC_DIR}/rpcs3.icns $<TARGET_FILE_DIR:rpcs3>/../Resources/rpcs3.icns
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/Icons $<TARGET_FILE_DIR:rpcs3>/../Resources/Icons ${CMAKE_SOURCE_DIR}/bin/Icons $<TARGET_FILE_DIR:rpcs3>/../Resources/Icons
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/GuiConfigs $<TARGET_FILE_DIR:rpcs3>/../Resources/GuiConfigs ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $<TARGET_FILE_DIR:rpcs3>/../Resources/GuiConfigs
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/git $<TARGET_FILE_DIR:rpcs3>/../Resources/git ${CMAKE_SOURCE_DIR}/bin/git $<TARGET_FILE_DIR:rpcs3>/../Resources/git
COMMAND "${Qt5_DIR}/../../../bin/macdeployqt" "${PROJECT_BINARY_DIR}/bin/rpcs3.app") COMMAND "${Qt5_DIR}/../../../bin/macdeployqt" "${PROJECT_BINARY_DIR}/bin/rpcs3.app")
elseif(UNIX) elseif(UNIX)
add_custom_command(TARGET rpcs3 POST_BUILD add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/Icons $<TARGET_FILE_DIR:rpcs3>/Icons) ${CMAKE_SOURCE_DIR}/bin/Icons $<TARGET_FILE_DIR:rpcs3>/Icons)
add_custom_command(TARGET rpcs3 POST_BUILD add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/GuiConfigs $<TARGET_FILE_DIR:rpcs3>/GuiConfigs) ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $<TARGET_FILE_DIR:rpcs3>/GuiConfigs)
add_custom_command(TARGET rpcs3 POST_BUILD add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/bin/git $<TARGET_FILE_DIR:rpcs3>/git) ${CMAKE_SOURCE_DIR}/bin/git $<TARGET_FILE_DIR:rpcs3>/git)
elseif(WIN32) elseif(WIN32)
add_custom_command(TARGET rpcs3 POST_BUILD add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND "${CMAKE_COMMAND}" -E copy_directory "${CMAKE_SOURCE_DIR}/bin" "$<TARGET_FILE_DIR:rpcs3>" COMMAND "${CMAKE_COMMAND}" -E copy_directory "${CMAKE_SOURCE_DIR}/bin" "$<TARGET_FILE_DIR:rpcs3>"
COMMAND "${Qt5_DIR}/../../../bin/windeployqt" --no-angle --no-compiler-runtime --no-opengl-sw --no-patchqt --no-svg --no-translations --no-quick --plugindir "$<TARGET_FILE_DIR:rpcs3>/qt/plugins" --release "$<TARGET_FILE:rpcs3>") COMMAND "${Qt5_DIR}/../../../bin/windeployqt" --no-angle --no-compiler-runtime --no-opengl-sw --no-patchqt --no-svg --no-translations --no-quick --plugindir "$<TARGET_FILE_DIR:rpcs3>/qt/plugins" --release "$<TARGET_FILE:rpcs3>")
endif() endif()
# Unix installation # Unix installation
if(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
# Install the binary # Install the binary
install(TARGETS rpcs3 RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) install(TARGETS rpcs3 RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
# Install the application icon and menu item # Install the application icon and menu item
install(FILES rpcs3.svg install(FILES rpcs3.svg
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps)
install(FILES rpcs3.png install(FILES rpcs3.png
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps)
install(FILES rpcs3.desktop install(FILES rpcs3.desktop
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications)
install(FILES rpcs3.appdata.xml install(FILES rpcs3.appdata.xml
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/metainfo) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/metainfo)
# Install other files # Install other files
install(DIRECTORY ../bin/Icons install(DIRECTORY ../bin/Icons
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3)
install(DIRECTORY ../bin/GuiConfigs install(DIRECTORY ../bin/GuiConfigs
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3)
install(DIRECTORY ../bin/git install(DIRECTORY ../bin/git
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3) DESTINATION ${CMAKE_INSTALL_PREFIX}/share/rpcs3)
endif() endif()

View file

@ -1,518 +1,518 @@
add_library(rpcs3_emu add_library(rpcs3_emu
IdManager.cpp IdManager.cpp
localized_string.cpp localized_string.cpp
System.cpp System.cpp
system_config.cpp system_config.cpp
system_config_types.cpp system_config_types.cpp
VFS.cpp VFS.cpp
GDB.cpp GDB.cpp
title.cpp title.cpp
perf_meter.cpp perf_meter.cpp
) )
# prevent WolfSSL from warning about not having harden options # prevent WolfSSL from warning about not having harden options
add_compile_definitions(WC_NO_HARDEN) add_compile_definitions(WC_NO_HARDEN)
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PRIVATE PRIVATE
3rdparty::zlib 3rdparty::yaml-cpp 3rdparty::zlib 3rdparty::yaml-cpp
PUBLIC PUBLIC
3rdparty::libevdev 3rdparty::flatbuffers) 3rdparty::libevdev 3rdparty::flatbuffers)
find_package(Threads REQUIRED) find_package(Threads REQUIRED)
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PUBLIC Threads::Threads) PUBLIC Threads::Threads)
# For stdafx.h # For stdafx.h
target_include_directories(rpcs3_emu target_include_directories(rpcs3_emu
PUBLIC PUBLIC
${RPCS3_SRC_DIR}) ${RPCS3_SRC_DIR})
# Utilities # Utilities
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
../util/atomic.cpp ../util/atomic.cpp
../util/logs.cpp ../util/logs.cpp
../util/yaml.cpp ../util/yaml.cpp
../util/cereal.cpp ../util/cereal.cpp
../util/vm_native.cpp ../util/vm_native.cpp
../util/dyn_lib.cpp ../util/dyn_lib.cpp
../util/sysinfo.cpp ../util/sysinfo.cpp
../util/cpu_stats.cpp ../util/cpu_stats.cpp
../../Utilities/bin_patch.cpp ../../Utilities/bin_patch.cpp
../../Utilities/cheat_info.cpp ../../Utilities/cheat_info.cpp
../../Utilities/cond.cpp ../../Utilities/cond.cpp
../../Utilities/Config.cpp ../../Utilities/Config.cpp
../../Utilities/File.cpp ../../Utilities/File.cpp
../../Utilities/JIT.cpp ../../Utilities/JIT.cpp
../../Utilities/LUrlParser.cpp ../../Utilities/LUrlParser.cpp
../../Utilities/mutex.cpp ../../Utilities/mutex.cpp
../../Utilities/rXml.cpp ../../Utilities/rXml.cpp
../../Utilities/sema.cpp ../../Utilities/sema.cpp
../../Utilities/StrFmt.cpp ../../Utilities/StrFmt.cpp
../../Utilities/Thread.cpp ../../Utilities/Thread.cpp
../../Utilities/version.cpp ../../Utilities/version.cpp
) )
target_include_directories(rpcs3_emu PUBLIC "${CMAKE_SOURCE_DIR}") target_include_directories(rpcs3_emu PUBLIC "${CMAKE_SOURCE_DIR}")
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PUBLIC PUBLIC
3rdparty::pugixml 3rdparty::pugixml
3rdparty::span) 3rdparty::span)
if(MSVC) 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() 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() endif()
if(MSVC) 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() else()
set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS -fexceptions) set_source_files_properties("../util/yaml.cpp" PROPERTIES COMPILE_FLAGS -fexceptions)
endif() endif()
if(MSVC) 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() else()
set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS -frtti) set_source_files_properties("../util/cereal.cpp" PROPERTIES COMPILE_FLAGS -frtti)
endif() endif()
# Crypto # Crypto
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
../Crypto/aes.cpp ../Crypto/aes.cpp
../Crypto/aesni.cpp ../Crypto/aesni.cpp
../Crypto/ec.cpp ../Crypto/ec.cpp
../Crypto/key_vault.cpp ../Crypto/key_vault.cpp
../Crypto/lz.cpp ../Crypto/lz.cpp
../Crypto/md5.cpp ../Crypto/md5.cpp
../Crypto/sha1.cpp ../Crypto/sha1.cpp
../Crypto/sha256.cpp ../Crypto/sha256.cpp
../Crypto/unedat.cpp ../Crypto/unedat.cpp
../Crypto/unpkg.cpp ../Crypto/unpkg.cpp
../Crypto/unself.cpp ../Crypto/unself.cpp
../Crypto/utils.cpp ../Crypto/utils.cpp
) )
# Loader # Loader
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
../Loader/ELF.cpp ../Loader/ELF.cpp
../Loader/mself.cpp ../Loader/mself.cpp
../Loader/PSF.cpp ../Loader/PSF.cpp
../Loader/PUP.cpp ../Loader/PUP.cpp
../Loader/TAR.cpp ../Loader/TAR.cpp
../Loader/TROPUSR.cpp ../Loader/TROPUSR.cpp
../Loader/TRP.cpp ../Loader/TRP.cpp
) )
# Audio # Audio
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
Audio/AudioDumper.cpp Audio/AudioDumper.cpp
Audio/AudioBackend.cpp Audio/AudioBackend.cpp
Audio/AL/OpenALBackend.cpp Audio/AL/OpenALBackend.cpp
) )
if(USE_ALSA) if(USE_ALSA)
find_package(ALSA) find_package(ALSA)
if(ALSA_FOUND) if(ALSA_FOUND)
target_sources(rpcs3_emu PRIVATE Audio/ALSA/ALSABackend.cpp) target_sources(rpcs3_emu PRIVATE Audio/ALSA/ALSABackend.cpp)
target_link_libraries(rpcs3_emu PUBLIC 3rdparty::alsa) target_link_libraries(rpcs3_emu PUBLIC 3rdparty::alsa)
endif() endif()
endif() endif()
if(USE_PULSE AND PULSE_FOUND) if(USE_PULSE AND PULSE_FOUND)
target_sources(rpcs3_emu PRIVATE Audio/Pulse/PulseBackend.cpp) target_sources(rpcs3_emu PRIVATE Audio/Pulse/PulseBackend.cpp)
target_link_libraries(rpcs3_emu PUBLIC 3rdparty::pulse) target_link_libraries(rpcs3_emu PUBLIC 3rdparty::pulse)
endif() endif()
if(USE_FAUDIO) if(USE_FAUDIO)
find_package(SDL2) find_package(SDL2)
if(SDL2_FOUND AND NOT SDL2_VERSION VERSION_LESS 2.0.9) if(SDL2_FOUND AND NOT SDL2_VERSION VERSION_LESS 2.0.9)
target_sources(rpcs3_emu PRIVATE Audio/FAudio/FAudioBackend.cpp) target_sources(rpcs3_emu PRIVATE Audio/FAudio/FAudioBackend.cpp)
target_link_libraries(rpcs3_emu PUBLIC 3rdparty::faudio) target_link_libraries(rpcs3_emu PUBLIC 3rdparty::faudio)
endif() endif()
endif() endif()
if(WIN32) if(WIN32)
target_include_directories(rpcs3_emu PUBLIC "${RPCS3_SRC_DIR}/../3rdparty/XAudio2Redist/include") 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") 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") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DELAYLOAD:xaudio2_9redist.dll")
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
Audio/XAudio2/XAudio2Backend.cpp Audio/XAudio2/XAudio2Backend.cpp
) )
endif() endif()
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PUBLIC PUBLIC
3rdparty::openal) 3rdparty::openal)
# Cell # Cell
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
Cell/MFC.cpp Cell/MFC.cpp
Cell/PPUAnalyser.cpp Cell/PPUAnalyser.cpp
Cell/PPUDisAsm.cpp Cell/PPUDisAsm.cpp
Cell/PPUFunction.cpp Cell/PPUFunction.cpp
Cell/PPUInterpreter.cpp Cell/PPUInterpreter.cpp
Cell/PPUModule.cpp Cell/PPUModule.cpp
Cell/PPUThread.cpp Cell/PPUThread.cpp
Cell/PPUTranslator.cpp Cell/PPUTranslator.cpp
Cell/RawSPUThread.cpp Cell/RawSPUThread.cpp
Cell/SPUAnalyser.cpp Cell/SPUAnalyser.cpp
Cell/SPUASMJITRecompiler.cpp Cell/SPUASMJITRecompiler.cpp
Cell/SPUDisAsm.cpp Cell/SPUDisAsm.cpp
Cell/SPUInterpreter.cpp Cell/SPUInterpreter.cpp
Cell/SPURecompiler.cpp Cell/SPURecompiler.cpp
Cell/SPUThread.cpp Cell/SPUThread.cpp
Cell/lv2/lv2.cpp Cell/lv2/lv2.cpp
Cell/lv2/sys_bdemu.cpp Cell/lv2/sys_bdemu.cpp
Cell/lv2/sys_btsetting.cpp Cell/lv2/sys_btsetting.cpp
Cell/lv2/sys_cond.cpp Cell/lv2/sys_cond.cpp
Cell/lv2/sys_console.cpp Cell/lv2/sys_console.cpp
Cell/lv2/sys_crypto_engine.cpp Cell/lv2/sys_crypto_engine.cpp
Cell/lv2/sys_config.cpp Cell/lv2/sys_config.cpp
Cell/lv2/sys_dbg.cpp Cell/lv2/sys_dbg.cpp
Cell/lv2/sys_event.cpp Cell/lv2/sys_event.cpp
Cell/lv2/sys_event_flag.cpp Cell/lv2/sys_event_flag.cpp
Cell/lv2/sys_fs.cpp Cell/lv2/sys_fs.cpp
Cell/lv2/sys_gamepad.cpp Cell/lv2/sys_gamepad.cpp
Cell/lv2/sys_gpio.cpp Cell/lv2/sys_gpio.cpp
Cell/lv2/sys_hid.cpp Cell/lv2/sys_hid.cpp
Cell/lv2/sys_interrupt.cpp Cell/lv2/sys_interrupt.cpp
Cell/lv2/sys_io.cpp Cell/lv2/sys_io.cpp
Cell/lv2/sys_lwcond.cpp Cell/lv2/sys_lwcond.cpp
Cell/lv2/sys_lwmutex.cpp Cell/lv2/sys_lwmutex.cpp
Cell/lv2/sys_memory.cpp Cell/lv2/sys_memory.cpp
Cell/lv2/sys_mmapper.cpp Cell/lv2/sys_mmapper.cpp
Cell/lv2/sys_mutex.cpp Cell/lv2/sys_mutex.cpp
Cell/lv2/sys_net.cpp Cell/lv2/sys_net.cpp
Cell/lv2/sys_overlay.cpp Cell/lv2/sys_overlay.cpp
Cell/lv2/sys_ppu_thread.cpp Cell/lv2/sys_ppu_thread.cpp
Cell/lv2/sys_process.cpp Cell/lv2/sys_process.cpp
Cell/lv2/sys_prx.cpp Cell/lv2/sys_prx.cpp
Cell/lv2/sys_rsx.cpp Cell/lv2/sys_rsx.cpp
Cell/lv2/sys_rsxaudio.cpp Cell/lv2/sys_rsxaudio.cpp
Cell/lv2/sys_rwlock.cpp Cell/lv2/sys_rwlock.cpp
Cell/lv2/sys_semaphore.cpp Cell/lv2/sys_semaphore.cpp
Cell/lv2/sys_spu.cpp Cell/lv2/sys_spu.cpp
Cell/lv2/sys_sm.cpp Cell/lv2/sys_sm.cpp
Cell/lv2/sys_ss.cpp Cell/lv2/sys_ss.cpp
Cell/lv2/sys_storage.cpp Cell/lv2/sys_storage.cpp
Cell/lv2/sys_time.cpp Cell/lv2/sys_time.cpp
Cell/lv2/sys_timer.cpp Cell/lv2/sys_timer.cpp
Cell/lv2/sys_trace.cpp Cell/lv2/sys_trace.cpp
Cell/lv2/sys_tty.cpp Cell/lv2/sys_tty.cpp
Cell/lv2/sys_uart.cpp Cell/lv2/sys_uart.cpp
Cell/lv2/sys_usbd.cpp Cell/lv2/sys_usbd.cpp
Cell/lv2/sys_vm.cpp Cell/lv2/sys_vm.cpp
Cell/Modules/cellAdec.cpp Cell/Modules/cellAdec.cpp
Cell/Modules/cellAtrac.cpp Cell/Modules/cellAtrac.cpp
Cell/Modules/cellAtracMulti.cpp Cell/Modules/cellAtracMulti.cpp
Cell/Modules/cellAudio.cpp Cell/Modules/cellAudio.cpp
Cell/Modules/cellAudioOut.cpp Cell/Modules/cellAudioOut.cpp
Cell/Modules/cellAuthDialog.cpp Cell/Modules/cellAuthDialog.cpp
Cell/Modules/cellAvconfExt.cpp Cell/Modules/cellAvconfExt.cpp
Cell/Modules/cellBgdl.cpp Cell/Modules/cellBgdl.cpp
Cell/Modules/cellCamera.cpp Cell/Modules/cellCamera.cpp
Cell/Modules/cellCelp8Enc.cpp Cell/Modules/cellCelp8Enc.cpp
Cell/Modules/cellCelpEnc.cpp Cell/Modules/cellCelpEnc.cpp
Cell/Modules/cellCrossController.cpp Cell/Modules/cellCrossController.cpp
Cell/Modules/cellDaisy.cpp Cell/Modules/cellDaisy.cpp
Cell/Modules/cellDmux.cpp Cell/Modules/cellDmux.cpp
Cell/Modules/cellDtcpIpUtility.cpp Cell/Modules/cellDtcpIpUtility.cpp
Cell/Modules/cellFiber.cpp Cell/Modules/cellFiber.cpp
Cell/Modules/cellFont.cpp Cell/Modules/cellFont.cpp
Cell/Modules/cellFontFT.cpp Cell/Modules/cellFontFT.cpp
Cell/Modules/cell_FreeType2.cpp Cell/Modules/cell_FreeType2.cpp
Cell/Modules/cellFs.cpp Cell/Modules/cellFs.cpp
Cell/Modules/cellGame.cpp Cell/Modules/cellGame.cpp
Cell/Modules/cellGameExec.cpp Cell/Modules/cellGameExec.cpp
Cell/Modules/cellGcmSys.cpp Cell/Modules/cellGcmSys.cpp
Cell/Modules/cellGem.cpp Cell/Modules/cellGem.cpp
Cell/Modules/cellGifDec.cpp Cell/Modules/cellGifDec.cpp
Cell/Modules/cellHttp.cpp Cell/Modules/cellHttp.cpp
Cell/Modules/cellHttpUtil.cpp Cell/Modules/cellHttpUtil.cpp
Cell/Modules/cellImeJp.cpp Cell/Modules/cellImeJp.cpp
Cell/Modules/cellJpgDec.cpp Cell/Modules/cellJpgDec.cpp
Cell/Modules/cellJpgEnc.cpp Cell/Modules/cellJpgEnc.cpp
Cell/Modules/cellKb.cpp Cell/Modules/cellKb.cpp
Cell/Modules/cellKey2char.cpp Cell/Modules/cellKey2char.cpp
Cell/Modules/cellL10n.cpp Cell/Modules/cellL10n.cpp
Cell/Modules/cellLibprof.cpp Cell/Modules/cellLibprof.cpp
Cell/Modules/cellMic.cpp Cell/Modules/cellMic.cpp
Cell/Modules/cellMouse.cpp Cell/Modules/cellMouse.cpp
Cell/Modules/cellMsgDialog.cpp Cell/Modules/cellMsgDialog.cpp
Cell/Modules/cellMusic.cpp Cell/Modules/cellMusic.cpp
Cell/Modules/cellMusicDecode.cpp Cell/Modules/cellMusicDecode.cpp
Cell/Modules/cellMusicExport.cpp Cell/Modules/cellMusicExport.cpp
Cell/Modules/cellNetAoi.cpp Cell/Modules/cellNetAoi.cpp
Cell/Modules/cellNetCtl.cpp Cell/Modules/cellNetCtl.cpp
Cell/Modules/cellOskDialog.cpp Cell/Modules/cellOskDialog.cpp
Cell/Modules/cellOvis.cpp Cell/Modules/cellOvis.cpp
Cell/Modules/cellPad.cpp Cell/Modules/cellPad.cpp
Cell/Modules/cellPamf.cpp Cell/Modules/cellPamf.cpp
Cell/Modules/cellPesmUtility.cpp Cell/Modules/cellPesmUtility.cpp
Cell/Modules/cellPhotoDecode.cpp Cell/Modules/cellPhotoDecode.cpp
Cell/Modules/cellPhotoExport.cpp Cell/Modules/cellPhotoExport.cpp
Cell/Modules/cellPhotoImport.cpp Cell/Modules/cellPhotoImport.cpp
Cell/Modules/cellPngDec.cpp Cell/Modules/cellPngDec.cpp
Cell/Modules/cellPngEnc.cpp Cell/Modules/cellPngEnc.cpp
Cell/Modules/cellPrint.cpp Cell/Modules/cellPrint.cpp
Cell/Modules/cellRec.cpp Cell/Modules/cellRec.cpp
Cell/Modules/cellRemotePlay.cpp Cell/Modules/cellRemotePlay.cpp
Cell/Modules/cellResc.cpp Cell/Modules/cellResc.cpp
Cell/Modules/cellRtcAlarm.cpp Cell/Modules/cellRtcAlarm.cpp
Cell/Modules/cellRtc.cpp Cell/Modules/cellRtc.cpp
Cell/Modules/cellRudp.cpp Cell/Modules/cellRudp.cpp
Cell/Modules/cellSail.cpp Cell/Modules/cellSail.cpp
Cell/Modules/cellSailRec.cpp Cell/Modules/cellSailRec.cpp
Cell/Modules/cellSaveData.cpp Cell/Modules/cellSaveData.cpp
Cell/Modules/cellScreenshot.cpp Cell/Modules/cellScreenshot.cpp
Cell/Modules/cellSearch.cpp Cell/Modules/cellSearch.cpp
Cell/Modules/cellSheap.cpp Cell/Modules/cellSheap.cpp
Cell/Modules/cellSpudll.cpp Cell/Modules/cellSpudll.cpp
Cell/Modules/cellSpurs.cpp Cell/Modules/cellSpurs.cpp
Cell/Modules/cellSpursJq.cpp Cell/Modules/cellSpursJq.cpp
Cell/Modules/cellSpursSpu.cpp Cell/Modules/cellSpursSpu.cpp
Cell/Modules/cellSsl.cpp Cell/Modules/cellSsl.cpp
Cell/Modules/cellStorage.cpp Cell/Modules/cellStorage.cpp
Cell/Modules/cellSubDisplay.cpp Cell/Modules/cellSubDisplay.cpp
Cell/Modules/cellSync2.cpp Cell/Modules/cellSync2.cpp
Cell/Modules/cellSync.cpp Cell/Modules/cellSync.cpp
Cell/Modules/cellSysconf.cpp Cell/Modules/cellSysconf.cpp
Cell/Modules/cellSysCache.cpp Cell/Modules/cellSysCache.cpp
Cell/Modules/cellSysmodule.cpp Cell/Modules/cellSysmodule.cpp
Cell/Modules/cellSysutilAp.cpp Cell/Modules/cellSysutilAp.cpp
Cell/Modules/cellSysutilAvc2.cpp Cell/Modules/cellSysutilAvc2.cpp
Cell/Modules/cellSysutilAvc.cpp Cell/Modules/cellSysutilAvc.cpp
Cell/Modules/cellSysutilAvcExt.cpp Cell/Modules/cellSysutilAvcExt.cpp
Cell/Modules/cellSysutil.cpp Cell/Modules/cellSysutil.cpp
Cell/Modules/cellSysutilMisc.cpp Cell/Modules/cellSysutilMisc.cpp
Cell/Modules/cellSysutilNpEula.cpp Cell/Modules/cellSysutilNpEula.cpp
Cell/Modules/cellUsbd.cpp Cell/Modules/cellUsbd.cpp
Cell/Modules/cellUsbpspcm.cpp Cell/Modules/cellUsbpspcm.cpp
Cell/Modules/cellUserInfo.cpp Cell/Modules/cellUserInfo.cpp
Cell/Modules/cellVdec.cpp Cell/Modules/cellVdec.cpp
Cell/Modules/cellVideoExport.cpp Cell/Modules/cellVideoExport.cpp
Cell/Modules/cellVideoOut.cpp Cell/Modules/cellVideoOut.cpp
Cell/Modules/cellVideoPlayerUtility.cpp Cell/Modules/cellVideoPlayerUtility.cpp
Cell/Modules/cellVideoUpload.cpp Cell/Modules/cellVideoUpload.cpp
Cell/Modules/cellVoice.cpp Cell/Modules/cellVoice.cpp
Cell/Modules/cellVpost.cpp Cell/Modules/cellVpost.cpp
Cell/Modules/cellWebBrowser.cpp Cell/Modules/cellWebBrowser.cpp
Cell/Modules/libad_async.cpp Cell/Modules/libad_async.cpp
Cell/Modules/libad_core.cpp Cell/Modules/libad_core.cpp
Cell/Modules/libmedi.cpp Cell/Modules/libmedi.cpp
Cell/Modules/libmixer.cpp Cell/Modules/libmixer.cpp
Cell/Modules/libsnd3.cpp Cell/Modules/libsnd3.cpp
Cell/Modules/libsynth2.cpp Cell/Modules/libsynth2.cpp
Cell/Modules/sceNp2.cpp Cell/Modules/sceNp2.cpp
Cell/Modules/sceNpClans.cpp Cell/Modules/sceNpClans.cpp
Cell/Modules/sceNpCommerce2.cpp Cell/Modules/sceNpCommerce2.cpp
Cell/Modules/sceNp.cpp Cell/Modules/sceNp.cpp
Cell/Modules/sceNpMatchingInt.cpp Cell/Modules/sceNpMatchingInt.cpp
Cell/Modules/sceNpSns.cpp Cell/Modules/sceNpSns.cpp
Cell/Modules/sceNpTrophy.cpp Cell/Modules/sceNpTrophy.cpp
Cell/Modules/sceNpTus.cpp Cell/Modules/sceNpTus.cpp
Cell/Modules/sceNpUtil.cpp Cell/Modules/sceNpUtil.cpp
Cell/Modules/StaticHLE.cpp Cell/Modules/StaticHLE.cpp
Cell/Modules/sys_crashdump.cpp Cell/Modules/sys_crashdump.cpp
Cell/Modules/sys_game.cpp Cell/Modules/sys_game.cpp
Cell/Modules/sys_heap.cpp Cell/Modules/sys_heap.cpp
Cell/Modules/sys_io_.cpp Cell/Modules/sys_io_.cpp
Cell/Modules/sys_libc_.cpp Cell/Modules/sys_libc_.cpp
Cell/Modules/sys_libc.cpp Cell/Modules/sys_libc.cpp
Cell/Modules/sys_lv2dbg.cpp Cell/Modules/sys_lv2dbg.cpp
Cell/Modules/sys_lwcond_.cpp Cell/Modules/sys_lwcond_.cpp
Cell/Modules/sys_lwmutex_.cpp Cell/Modules/sys_lwmutex_.cpp
Cell/Modules/sys_mempool.cpp Cell/Modules/sys_mempool.cpp
Cell/Modules/sys_mmapper_.cpp Cell/Modules/sys_mmapper_.cpp
Cell/Modules/sys_net_.cpp Cell/Modules/sys_net_.cpp
Cell/Modules/sys_ppu_thread_.cpp Cell/Modules/sys_ppu_thread_.cpp
Cell/Modules/sys_prx_.cpp Cell/Modules/sys_prx_.cpp
Cell/Modules/sysPrxForUser.cpp Cell/Modules/sysPrxForUser.cpp
Cell/Modules/sys_rsxaudio_.cpp Cell/Modules/sys_rsxaudio_.cpp
Cell/Modules/sys_spinlock.cpp Cell/Modules/sys_spinlock.cpp
Cell/Modules/sys_spu_.cpp Cell/Modules/sys_spu_.cpp
) )
if(NOT MSVC) 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() endif()
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PRIVATE PRIVATE
3rdparty::stblib 3rdparty::libpng) 3rdparty::stblib 3rdparty::libpng)
# CPU # CPU
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
CPU/CPUThread.cpp CPU/CPUThread.cpp
CPU/CPUTranslator.cpp CPU/CPUTranslator.cpp
) )
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PUBLIC 3rdparty::llvm 3rdparty::asmjit) PUBLIC 3rdparty::llvm 3rdparty::asmjit)
# Io # Io
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
Io/interception.cpp Io/interception.cpp
Io/KeyboardHandler.cpp Io/KeyboardHandler.cpp
Io/pad_config.cpp Io/pad_config.cpp
Io/pad_config_types.cpp Io/pad_config_types.cpp
Io/PadHandler.cpp Io/PadHandler.cpp
Io/usb_device.cpp Io/usb_device.cpp
Io/Skylander.cpp Io/Skylander.cpp
Io/GHLtar.cpp Io/GHLtar.cpp
Io/Buzz.cpp Io/Buzz.cpp
Io/Turntable.cpp Io/Turntable.cpp
) )
# Np # Np
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
NP/fb_helpers.cpp NP/fb_helpers.cpp
NP/np_contexts.cpp NP/np_contexts.cpp
NP/np_handler.cpp NP/np_handler.cpp
NP/signaling_handler.cpp NP/signaling_handler.cpp
NP/np_structs_extra.cpp NP/np_structs_extra.cpp
NP/rpcn_client.cpp NP/rpcn_client.cpp
NP/rpcn_config.cpp NP/rpcn_config.cpp
) )
# Memory # Memory
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
Memory/vm.cpp Memory/vm.cpp
) )
# RSX # RSX
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
RSX/CgBinaryFragmentProgram.cpp RSX/CgBinaryFragmentProgram.cpp
RSX/CgBinaryVertexProgram.cpp RSX/CgBinaryVertexProgram.cpp
RSX/gcm_enums.cpp RSX/gcm_enums.cpp
RSX/gcm_printing.cpp RSX/gcm_printing.cpp
RSX/GSRender.cpp RSX/GSRender.cpp
RSX/RSXFIFO.cpp RSX/RSXFIFO.cpp
RSX/rsx_methods.cpp RSX/rsx_methods.cpp
RSX/RSXOffload.cpp RSX/RSXOffload.cpp
RSX/RSXTexture.cpp RSX/RSXTexture.cpp
RSX/RSXThread.cpp RSX/RSXThread.cpp
RSX/rsx_utils.cpp RSX/rsx_utils.cpp
RSX/RSXDisAsm.cpp RSX/RSXDisAsm.cpp
RSX/Common/BufferUtils.cpp RSX/Common/BufferUtils.cpp
RSX/Common/FragmentProgramDecompiler.cpp RSX/Common/FragmentProgramDecompiler.cpp
RSX/Common/GLSLCommon.cpp RSX/Common/GLSLCommon.cpp
RSX/Common/ProgramStateCache.cpp RSX/Common/ProgramStateCache.cpp
RSX/Common/surface_store.cpp RSX/Common/surface_store.cpp
RSX/Common/TextureUtils.cpp RSX/Common/TextureUtils.cpp
RSX/Common/texture_cache.cpp RSX/Common/texture_cache.cpp
RSX/Common/VertexProgramDecompiler.cpp RSX/Common/VertexProgramDecompiler.cpp
RSX/Null/NullGSRender.cpp RSX/Null/NullGSRender.cpp
RSX/Overlays/overlay_animation.cpp RSX/Overlays/overlay_animation.cpp
RSX/Overlays/overlay_edit_text.cpp RSX/Overlays/overlay_edit_text.cpp
RSX/Overlays/overlay_fonts.cpp RSX/Overlays/overlay_fonts.cpp
RSX/Overlays/overlay_list_view.cpp RSX/Overlays/overlay_list_view.cpp
RSX/Overlays/overlay_message_dialog.cpp RSX/Overlays/overlay_message_dialog.cpp
RSX/Overlays/overlay_osk.cpp RSX/Overlays/overlay_osk.cpp
RSX/Overlays/overlay_osk_panel.cpp RSX/Overlays/overlay_osk_panel.cpp
RSX/Overlays/overlay_perf_metrics.cpp RSX/Overlays/overlay_perf_metrics.cpp
RSX/Overlays/overlay_progress_bar.cpp RSX/Overlays/overlay_progress_bar.cpp
RSX/Overlays/overlay_save_dialog.cpp RSX/Overlays/overlay_save_dialog.cpp
RSX/Overlays/overlay_utils.cpp RSX/Overlays/overlay_utils.cpp
RSX/Overlays/overlays.cpp RSX/Overlays/overlays.cpp
RSX/Overlays/overlay_shader_compile_notification.cpp RSX/Overlays/overlay_shader_compile_notification.cpp
RSX/Overlays/overlay_trophy_notification.cpp RSX/Overlays/overlay_trophy_notification.cpp
RSX/Overlays/Shaders/shader_loading_dialog.cpp RSX/Overlays/Shaders/shader_loading_dialog.cpp
RSX/Overlays/Shaders/shader_loading_dialog_native.cpp RSX/Overlays/Shaders/shader_loading_dialog_native.cpp
RSX/Capture/rsx_capture.cpp RSX/Capture/rsx_capture.cpp
RSX/Capture/rsx_replay.cpp RSX/Capture/rsx_replay.cpp
RSX/GL/GLCommonDecompiler.cpp RSX/GL/GLCommonDecompiler.cpp
RSX/GL/GLCompute.cpp RSX/GL/GLCompute.cpp
RSX/GL/GLDraw.cpp RSX/GL/GLDraw.cpp
RSX/GL/GLFragmentProgram.cpp RSX/GL/GLFragmentProgram.cpp
RSX/GL/GLGSRender.cpp RSX/GL/GLGSRender.cpp
RSX/GL/GLHelpers.cpp RSX/GL/GLHelpers.cpp
RSX/GL/GLOverlays.cpp RSX/GL/GLOverlays.cpp
RSX/GL/GLPipelineCompiler.cpp RSX/GL/GLPipelineCompiler.cpp
RSX/GL/GLPresent.cpp RSX/GL/GLPresent.cpp
RSX/GL/GLRenderTargets.cpp RSX/GL/GLRenderTargets.cpp
RSX/GL/GLShaderInterpreter.cpp RSX/GL/GLShaderInterpreter.cpp
RSX/GL/GLTexture.cpp RSX/GL/GLTexture.cpp
RSX/GL/GLVertexBuffers.cpp RSX/GL/GLVertexBuffers.cpp
RSX/GL/GLVertexProgram.cpp RSX/GL/GLVertexProgram.cpp
RSX/GL/GLTextureCache.cpp RSX/GL/GLTextureCache.cpp
RSX/GL/OpenGL.cpp RSX/GL/OpenGL.cpp
) )
if(TARGET 3rdparty_vulkan) if(TARGET 3rdparty_vulkan)
target_sources(rpcs3_emu PRIVATE target_sources(rpcs3_emu PRIVATE
RSX/VK/vkutils/barriers.cpp RSX/VK/vkutils/barriers.cpp
RSX/VK/vkutils/buffer_object.cpp RSX/VK/vkutils/buffer_object.cpp
RSX/VK/vkutils/chip_class.cpp RSX/VK/vkutils/chip_class.cpp
RSX/VK/vkutils/commands.cpp RSX/VK/vkutils/commands.cpp
RSX/VK/vkutils/data_heap.cpp RSX/VK/vkutils/data_heap.cpp
RSX/VK/vkutils/image.cpp RSX/VK/vkutils/image.cpp
RSX/VK/vkutils/image_helpers.cpp RSX/VK/vkutils/image_helpers.cpp
RSX/VK/vkutils/scratch.cpp RSX/VK/vkutils/scratch.cpp
RSX/VK/vkutils/sync.cpp RSX/VK/vkutils/sync.cpp
RSX/VK/vkutils/memory.cpp RSX/VK/vkutils/memory.cpp
RSX/VK/vkutils/device.cpp RSX/VK/vkutils/device.cpp
RSX/VK/vkutils/sampler.cpp RSX/VK/vkutils/sampler.cpp
RSX/VK/vkutils/shared.cpp RSX/VK/vkutils/shared.cpp
RSX/VK/VKAsyncScheduler.cpp RSX/VK/VKAsyncScheduler.cpp
RSX/VK/VKCommandStream.cpp RSX/VK/VKCommandStream.cpp
RSX/VK/VKCommonDecompiler.cpp RSX/VK/VKCommonDecompiler.cpp
RSX/VK/VKCompute.cpp RSX/VK/VKCompute.cpp
RSX/VK/VKDMA.cpp RSX/VK/VKDMA.cpp
RSX/VK/VKDraw.cpp RSX/VK/VKDraw.cpp
RSX/VK/VKFormats.cpp RSX/VK/VKFormats.cpp
RSX/VK/VKFragmentProgram.cpp RSX/VK/VKFragmentProgram.cpp
RSX/VK/VKFramebuffer.cpp RSX/VK/VKFramebuffer.cpp
RSX/VK/VKGSRender.cpp RSX/VK/VKGSRender.cpp
RSX/VK/VKHelpers.cpp RSX/VK/VKHelpers.cpp
RSX/VK/VKMemAlloc.cpp RSX/VK/VKMemAlloc.cpp
RSX/VK/VKOverlays.cpp RSX/VK/VKOverlays.cpp
RSX/VK/VKPipelineCompiler.cpp RSX/VK/VKPipelineCompiler.cpp
RSX/VK/VKPresent.cpp RSX/VK/VKPresent.cpp
RSX/VK/VKProgramPipeline.cpp RSX/VK/VKProgramPipeline.cpp
RSX/VK/VKQueryPool.cpp RSX/VK/VKQueryPool.cpp
RSX/VK/VKRenderPass.cpp RSX/VK/VKRenderPass.cpp
RSX/VK/VKResolveHelper.cpp RSX/VK/VKResolveHelper.cpp
RSX/VK/VKResourceManager.cpp RSX/VK/VKResourceManager.cpp
RSX/VK/VKShaderInterpreter.cpp RSX/VK/VKShaderInterpreter.cpp
RSX/VK/VKTexture.cpp RSX/VK/VKTexture.cpp
RSX/VK/VKVertexBuffers.cpp RSX/VK/VKVertexBuffers.cpp
RSX/VK/VKVertexProgram.cpp RSX/VK/VKVertexProgram.cpp
RSX/VK/VKTextureCache.cpp RSX/VK/VKTextureCache.cpp
) )
endif() endif()
target_link_libraries(rpcs3_emu target_link_libraries(rpcs3_emu
PUBLIC PUBLIC
3rdparty::ffmpeg 3rdparty::cereal 3rdparty::ffmpeg 3rdparty::cereal
3rdparty::opengl 3rdparty::stblib 3rdparty::opengl 3rdparty::stblib
3rdparty::vulkan 3rdparty::glew 3rdparty::vulkan 3rdparty::glew
3rdparty::libusb 3rdparty::wolfssl 3rdparty::libusb 3rdparty::wolfssl
PRIVATE PRIVATE
3rdparty::span 3rdparty::xxhash 3rdparty::span 3rdparty::xxhash
) )
if(USE_PRECOMPILED_HEADERS) if(USE_PRECOMPILED_HEADERS)
if(COMMAND target_precompile_headers) if(COMMAND target_precompile_headers)
target_precompile_headers(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/stdafx.h") target_precompile_headers(rpcs3_emu PRIVATE "${RPCS3_SRC_DIR}/stdafx.h")
else() else()
# Setup cotire # Setup cotire
option(UNITY_BUILD_EMU "Use unity build for rpcs3_emu target" OFF) option(UNITY_BUILD_EMU "Use unity build for rpcs3_emu target" OFF)
set_target_properties(rpcs3_emu PROPERTIES set_target_properties(rpcs3_emu PROPERTIES
COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h" COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h"
COTIRE_ADD_UNITY_BUILD ${UNITY_BUILD_EMU}) COTIRE_ADD_UNITY_BUILD ${UNITY_BUILD_EMU})
cotire(rpcs3_emu) cotire(rpcs3_emu)
endif() endif()
endif() endif()

View file

@ -2,113 +2,113 @@
add_compile_definitions(WC_NO_HARDEN) add_compile_definitions(WC_NO_HARDEN)
set(SRC_FILES set(SRC_FILES
about_dialog.cpp about_dialog.cpp
auto_pause_settings_dialog.cpp auto_pause_settings_dialog.cpp
breakpoint_handler.cpp breakpoint_handler.cpp
breakpoint_list.cpp breakpoint_list.cpp
call_stack_list.cpp call_stack_list.cpp
cg_disasm_window.cpp cg_disasm_window.cpp
cheat_manager.cpp cheat_manager.cpp
config_adapter.cpp config_adapter.cpp
curl_handle.cpp curl_handle.cpp
custom_dialog.cpp custom_dialog.cpp
custom_table_widget_item.cpp custom_table_widget_item.cpp
debugger_frame.cpp debugger_frame.cpp
debugger_list.cpp debugger_list.cpp
downloader.cpp downloader.cpp
_discord_utils.cpp _discord_utils.cpp
emu_settings.cpp emu_settings.cpp
fatal_error_dialog.cpp fatal_error_dialog.cpp
find_dialog.cpp find_dialog.cpp
game_compatibility.cpp game_compatibility.cpp
game_list.cpp game_list.cpp
game_list_frame.cpp game_list_frame.cpp
game_list_grid.cpp game_list_grid.cpp
game_list_grid_delegate.cpp game_list_grid_delegate.cpp
gui_application.cpp gui_application.cpp
gl_gs_frame.cpp gl_gs_frame.cpp
gs_frame.cpp gs_frame.cpp
gui_settings.cpp gui_settings.cpp
input_dialog.cpp input_dialog.cpp
instruction_editor_dialog.cpp instruction_editor_dialog.cpp
kernel_explorer.cpp kernel_explorer.cpp
localized.cpp localized.cpp
localized_emu.h localized_emu.h
log_frame.cpp log_frame.cpp
log_viewer.cpp log_viewer.cpp
main_window.cpp main_window.cpp
memory_string_searcher.cpp memory_string_searcher.cpp
memory_viewer_panel.cpp memory_viewer_panel.cpp
microphone_creator.cpp microphone_creator.cpp
msg_dialog_frame.cpp msg_dialog_frame.cpp
osk_dialog_frame.cpp osk_dialog_frame.cpp
pad_led_settings_dialog.cpp pad_led_settings_dialog.cpp
pad_settings_dialog.cpp pad_settings_dialog.cpp
patch_manager_dialog.cpp patch_manager_dialog.cpp
persistent_settings.cpp persistent_settings.cpp
pkg_install_dialog.cpp pkg_install_dialog.cpp
progress_dialog.cpp progress_dialog.cpp
qt_utils.cpp qt_utils.cpp
register_editor_dialog.cpp register_editor_dialog.cpp
render_creator.cpp render_creator.cpp
rpcn_settings_dialog.cpp rpcn_settings_dialog.cpp
rsx_debugger.cpp rsx_debugger.cpp
save_data_dialog.cpp save_data_dialog.cpp
save_data_info_dialog.cpp save_data_info_dialog.cpp
save_data_list_dialog.cpp save_data_list_dialog.cpp
save_manager_dialog.cpp save_manager_dialog.cpp
screenshot_manager_dialog.cpp screenshot_manager_dialog.cpp
screenshot_preview.cpp screenshot_preview.cpp
settings.cpp settings.cpp
settings_dialog.cpp settings_dialog.cpp
skylander_dialog.cpp skylander_dialog.cpp
syntax_highlighter.cpp syntax_highlighter.cpp
tooltips.cpp tooltips.cpp
trophy_manager_dialog.cpp trophy_manager_dialog.cpp
trophy_notification_frame.cpp trophy_notification_frame.cpp
trophy_notification_helper.cpp trophy_notification_helper.cpp
update_manager.cpp update_manager.cpp
user_account.cpp user_account.cpp
user_manager_dialog.cpp user_manager_dialog.cpp
vfs_dialog.cpp vfs_dialog.cpp
vfs_dialog_tab.cpp vfs_dialog_tab.cpp
welcome_dialog.cpp welcome_dialog.cpp
) )
set(UI_FILES set(UI_FILES
about_dialog.ui about_dialog.ui
main_window.ui main_window.ui
pad_led_settings_dialog.ui pad_led_settings_dialog.ui
pad_settings_dialog.ui pad_settings_dialog.ui
settings_dialog.ui settings_dialog.ui
welcome_dialog.ui welcome_dialog.ui
) )
set(RES_FILES "../resources.qrc") set(RES_FILES "../resources.qrc")
if(WIN32) if(WIN32)
list(APPEND RES_FILES "../windows.qrc") list(APPEND RES_FILES "../windows.qrc")
endif() endif()
add_library(rpcs3_ui ${SRC_FILES} ${UI_FILES} ${RES_FILES}) add_library(rpcs3_ui ${SRC_FILES} ${UI_FILES} ${RES_FILES})
set_target_properties(rpcs3_ui set_target_properties(rpcs3_ui
PROPERTIES PROPERTIES
AUTOMOC ON AUTOMOC ON
AUTOUIC ON AUTOUIC ON
AUTORCC ON) AUTORCC ON)
target_link_libraries(rpcs3_ui target_link_libraries(rpcs3_ui
PUBLIC PUBLIC
3rdparty::qt5 3rdparty::yaml-cpp 3rdparty::qt5 3rdparty::yaml-cpp
PRIVATE PRIVATE
rpcs3_emu rpcs3_emu
3rdparty::zlib 3rdparty::pugixml 3rdparty::zlib 3rdparty::pugixml
3rdparty::discord-rpc 3rdparty::discord-rpc
3rdparty::hidapi 3rdparty::hidapi
3rdparty::libusb 3rdparty::libusb
3rdparty::libpng 3rdparty::libpng
3rdparty::7z 3rdparty::7z
3rdparty::wolfssl 3rdparty::wolfssl
3rdparty::libcurl) 3rdparty::libcurl)