mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-22 02:32:36 +01:00
improve CMake files
Signed-off-by: oltolm <oleg.tolmatcev@gmail.com>
This commit is contained in:
parent
99b44cf33a
commit
065a64371e
5
3rdparty/CMakeLists.txt
vendored
5
3rdparty/CMakeLists.txt
vendored
@ -224,7 +224,7 @@ if(USE_FAUDIO)
|
|||||||
if (USE_SYSTEM_FAUDIO)
|
if (USE_SYSTEM_FAUDIO)
|
||||||
if (NOT SDL2_FOUND OR SDL2_VERSION VERSION_LESS 2.0.12)
|
if (NOT SDL2_FOUND OR SDL2_VERSION VERSION_LESS 2.0.12)
|
||||||
message(WARNING
|
message(WARNING
|
||||||
"RPCS3: FAudio requires SDL 2.0.9 or newer. Please note, this warning"
|
"RPCS3: System FAudio requires SDL 2.0.9 or newer. Please note, this warning"
|
||||||
"can also be displayed with SDL2 versions between 2.0.9-2.0.12, as the"
|
"can also be displayed with SDL2 versions between 2.0.9-2.0.12, as the"
|
||||||
"CMake config files are not correctly installed. Since a valid SDL2"
|
"CMake config files are not correctly installed. Since a valid SDL2"
|
||||||
">=2.0.9 version cannot be found, building with FAudio will be skipped.")
|
">=2.0.9 version cannot be found, building with FAudio will be skipped.")
|
||||||
@ -329,8 +329,7 @@ if(USE_SDL)
|
|||||||
message(STATUS "Using system SDL2")
|
message(STATUS "Using system SDL2")
|
||||||
add_library(3rdparty_sdl2 INTERFACE)
|
add_library(3rdparty_sdl2 INTERFACE)
|
||||||
target_compile_definitions(3rdparty_sdl2 INTERFACE -DHAVE_SDL2=1)
|
target_compile_definitions(3rdparty_sdl2 INTERFACE -DHAVE_SDL2=1)
|
||||||
target_include_directories(3rdparty_sdl2 INTERFACE ${SDL2_INCLUDE_DIRS})
|
target_link_libraries(3rdparty_sdl2 INTERFACE SDL2::SDL2)
|
||||||
target_link_libraries(3rdparty_sdl2 INTERFACE ${SDL2_LIBRARIES})
|
|
||||||
set(SDL2_TARGET 3rdparty_sdl2)
|
set(SDL2_TARGET 3rdparty_sdl2)
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "SDL2 is not available on this system")
|
message(FATAL_ERROR "SDL2 is not available on this system")
|
||||||
|
18
3rdparty/OpenAL/CMakeLists.txt
vendored
18
3rdparty/OpenAL/CMakeLists.txt
vendored
@ -1,11 +1,13 @@
|
|||||||
# OpenAL
|
# OpenAL
|
||||||
if (WIN32)
|
if(USE_SYSTEM_OPENAL)
|
||||||
find_path(OPENAL_INCLUDE_DIR al.h PATHS include/)
|
|
||||||
find_library(OPENAL_LIBRARY OpenAL32 PATHS libs/Win64/)
|
|
||||||
else()
|
|
||||||
find_package(OpenAL REQUIRED)
|
find_package(OpenAL REQUIRED)
|
||||||
|
add_library(3rdparty_openal INTERFACE)
|
||||||
|
target_include_directories(3rdparty_openal INTERFACE ${OPENAL_INCLUDE_DIR})
|
||||||
|
target_link_libraries(3rdparty_openal INTERFACE ${OPENAL_LIBRARY})
|
||||||
|
else()
|
||||||
|
option(ALSOFT_UTILS "Build utility programs" OFF)
|
||||||
|
option(ALSOFT_EXAMPLES "Build example programs" OFF)
|
||||||
|
add_subdirectory(openal-soft EXCLUDE_FROM_ALL)
|
||||||
|
add_library(3rdparty_openal INTERFACE)
|
||||||
|
target_link_libraries(3rdparty_openal INTERFACE OpenAL::OpenAL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(3rdparty_openal INTERFACE)
|
|
||||||
target_include_directories(3rdparty_openal INTERFACE ${OPENAL_INCLUDE_DIR})
|
|
||||||
target_link_libraries(3rdparty_openal INTERFACE ${OPENAL_LIBRARY})
|
|
||||||
|
1
3rdparty/curl/CMakeLists.txt
vendored
1
3rdparty/curl/CMakeLists.txt
vendored
@ -29,6 +29,7 @@ else()
|
|||||||
set(SSL_ENABLED ON)
|
set(SSL_ENABLED ON)
|
||||||
set(USE_WOLFSSL ON)
|
set(USE_WOLFSSL ON)
|
||||||
set(SHARE_LIB_OBJECT OFF)
|
set(SHARE_LIB_OBJECT OFF)
|
||||||
|
set(CURL_DISABLE_TESTS ON)
|
||||||
|
|
||||||
add_subdirectory(curl EXCLUDE_FROM_ALL)
|
add_subdirectory(curl EXCLUDE_FROM_ALL)
|
||||||
|
|
||||||
|
2
3rdparty/llvm/CMakeLists.txt
vendored
2
3rdparty/llvm/CMakeLists.txt
vendored
@ -14,7 +14,7 @@ if(WITH_LLVM)
|
|||||||
option(LLVM_INCLUDE_TESTS OFF)
|
option(LLVM_INCLUDE_TESTS OFF)
|
||||||
option(LLVM_INCLUDE_TOOLS OFF)
|
option(LLVM_INCLUDE_TOOLS OFF)
|
||||||
option(LLVM_INCLUDE_UTILS OFF)
|
option(LLVM_INCLUDE_UTILS OFF)
|
||||||
option(LLVM_CCACHE_BUILD ON)
|
option(LLVM_CCACHE_BUILD OFF)
|
||||||
set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "Enable compiler warnings.")
|
set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "Enable compiler warnings.")
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
1
3rdparty/rtmidi/CMakeLists.txt
vendored
1
3rdparty/rtmidi/CMakeLists.txt
vendored
@ -1,3 +1,4 @@
|
|||||||
option(RTMIDI_API_JACK "Compile with JACK support." OFF)
|
option(RTMIDI_API_JACK "Compile with JACK support." OFF)
|
||||||
|
option(RTMIDI_BUILD_TESTING "Build test programs" OFF)
|
||||||
set(RTMIDI_TARGETNAME_UNINSTALL "uninstall-rpcs3-rtmidi")
|
set(RTMIDI_TARGETNAME_UNINSTALL "uninstall-rpcs3-rtmidi")
|
||||||
add_subdirectory(rtmidi EXCLUDE_FROM_ALL)
|
add_subdirectory(rtmidi EXCLUDE_FROM_ALL)
|
||||||
|
26
3rdparty/wolfssl/CMakeLists.txt
vendored
26
3rdparty/wolfssl/CMakeLists.txt
vendored
@ -4,21 +4,21 @@ if(USE_SYSTEM_WOLFSSL)
|
|||||||
add_library(wolfssl INTERFACE)
|
add_library(wolfssl INTERFACE)
|
||||||
target_link_libraries(wolfssl INTERFACE PkgConfig::WolfSSL)
|
target_link_libraries(wolfssl INTERFACE PkgConfig::WolfSSL)
|
||||||
else()
|
else()
|
||||||
set(WOLFSSL_TLS13 OFF CACHE STRING "Enable wolfSSL TLS v1.3 (default: enabled)")
|
option(WOLFSSL_TLS13 "Enable wolfSSL TLS v1.3 (default: enabled)" OFF)
|
||||||
set(WOLFSSL_SHA3 ON CACHE STRING "Enable wolfSSL SHA-3 support (default: enabled on x86_64/aarch64)")
|
set(WOLFSSL_SHA3 ON CACHE STRING "Enable wolfSSL SHA-3 support (default: enabled on x86_64/aarch64)")
|
||||||
set(WOLFSSL_SHAKE256 ON CACHE STRING "Enable wolfSSL SHAKE256 support (default: enabled on x86_64/aarch64)")
|
set(WOLFSSL_SHAKE256 ON CACHE STRING "Enable wolfSSL SHAKE256 support (default: enabled on x86_64/aarch64)")
|
||||||
set(WOLFSSL_BASE64_ENCODE OFF CACHE STRING "Enable Base64 encoding (default: enabled on x86_64)")
|
option(WOLFSSL_BASE64_ENCODE "Enable Base64 encoding (default: enabled on x86_64)" OFF)
|
||||||
set(WOLFSSL_DES3 ON CACHE STRING "Enable DES3 (default: disabled)")
|
option(WOLFSSL_DES3 "Enable DES3 (default: disabled)" ON)
|
||||||
set(WOLFSSL_PWDBASED ON CACHE STRING "Enable PWDBASED (default: disabled)")
|
option(WOLFSSL_PWDBASED "Enable PWDBASED (default: disabled)" ON)
|
||||||
set(WOLFSSL_FAST_MATH ON CACHE STRING "Enable fast math ops (default: disabled)")
|
option(WOLFSSL_FAST_MATH "Enable fast math ops (default: disabled)" ON)
|
||||||
set(WOLFSSL_EXAMPLES OFF CACHE STRING "Enable examples (default: enabled)")
|
option(WOLFSSL_EXAMPLES "Enable examples (default: enabled)" OFF)
|
||||||
set(WOLFSSL_CRYPT_TESTS OFF CACHE STRING "Enable Crypt Bench/Test (default: enabled)")
|
option(WOLFSSL_CRYPT_TESTS "Enable Crypt Bench/Test (default: enabled)" OFF)
|
||||||
set(WOLFSSL_ASYNC_THREADS OFF CACHE STRING "Enable Asynchronous Threading (default: enabled)")
|
option(WOLFSSL_ASYNC_THREADS "Enable Asynchronous Threading (default: enabled)" OFF)
|
||||||
set(WOLFSSL_BUILD_OUT_OF_TREE ON CACHE STRING "Don't generate files in the source tree (default: no)")
|
option(WOLFSSL_BUILD_OUT_OF_TREE "Don't generate files in the source tree (default: yes)" ON)
|
||||||
set(WOLFSSL_SNI ON CACHE STRING "Enable SNI (default: disabled)")
|
option(WOLFSSL_SNI "Enable SNI (default: disabled)" ON)
|
||||||
set(WOLFSSL_OPENSSLEXTRA ON CACHE STRING "Enable extra OpenSSL API, size+ (default: disabled)")
|
option(WOLFSSL_OPENSSLEXTRA "Enable extra OpenSSL API, size+ (default: disabled)" ON)
|
||||||
set(WOLFSSL_HARDEN OFF CACHE STRING "Enable Hardened build, Enables Timing Resistance and Blinding (default: enabled)")
|
option(WOLFSSL_HARDEN "Enable Hardened build, Enables Timing Resistance and Blinding (default: enabled)" OFF)
|
||||||
set(WOLFSSL_ALT_CERT_CHAINS ON CACHE STRING "Enable support for Alternate certification chains (default: disabled)")
|
option(WOLFSSL_ALT_CERT_CHAINS "Enable support for Alternate certification chains (default: disabled)" ON)
|
||||||
|
|
||||||
add_subdirectory(wolfssl EXCLUDE_FROM_ALL)
|
add_subdirectory(wolfssl EXCLUDE_FROM_ALL)
|
||||||
|
|
||||||
|
5
3rdparty/zlib/CMakeLists.txt
vendored
5
3rdparty/zlib/CMakeLists.txt
vendored
@ -6,6 +6,7 @@ if (USE_SYSTEM_ZLIB)
|
|||||||
target_link_libraries(3rdparty_zlib INTERFACE ZLIB::ZLIB)
|
target_link_libraries(3rdparty_zlib INTERFACE ZLIB::ZLIB)
|
||||||
target_compile_definitions(3rdparty_zlib INTERFACE -DZLIB_CONST=1)
|
target_compile_definitions(3rdparty_zlib INTERFACE -DZLIB_CONST=1)
|
||||||
else()
|
else()
|
||||||
|
option(ZLIB_BUILD_EXAMPLES "Enable Zlib Examples" OFF)
|
||||||
message(STATUS "RPCS3: Using builtin ZLIB")
|
message(STATUS "RPCS3: Using builtin ZLIB")
|
||||||
set(SKIP_INSTALL_ALL ON)
|
set(SKIP_INSTALL_ALL ON)
|
||||||
add_subdirectory(zlib EXCLUDE_FROM_ALL)
|
add_subdirectory(zlib EXCLUDE_FROM_ALL)
|
||||||
@ -14,8 +15,4 @@ else()
|
|||||||
target_link_libraries(3rdparty_zlib INTERFACE zlibstatic)
|
target_link_libraries(3rdparty_zlib INTERFACE zlibstatic)
|
||||||
target_include_directories(3rdparty_zlib INTERFACE zlib ${CMAKE_CURRENT_BINARY_DIR}/zlib)
|
target_include_directories(3rdparty_zlib INTERFACE zlib ${CMAKE_CURRENT_BINARY_DIR}/zlib)
|
||||||
target_compile_definitions(3rdparty_zlib INTERFACE -DZLIB_CONST=1)
|
target_compile_definitions(3rdparty_zlib INTERFACE -DZLIB_CONST=1)
|
||||||
|
|
||||||
if(NOT MSVC)
|
|
||||||
set(ZLIB_ROOT ${CMAKE_CURRENT_BINARY_DIR}/zlib PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
1
3rdparty/zstd/CMakeLists.txt
vendored
1
3rdparty/zstd/CMakeLists.txt
vendored
@ -1,6 +1,7 @@
|
|||||||
option(ZSTD_BUILD_PROGRAMS "BUILD PROGRAMS" OFF)
|
option(ZSTD_BUILD_PROGRAMS "BUILD PROGRAMS" OFF)
|
||||||
option(ZSTD_BUILD_SHARED "BUILD SHARED LIBRARIES" OFF)
|
option(ZSTD_BUILD_SHARED "BUILD SHARED LIBRARIES" OFF)
|
||||||
option(ZSTD_BUILD_STATIC "BUILD STATIC LIBRARIES" ON)
|
option(ZSTD_BUILD_STATIC "BUILD STATIC LIBRARIES" ON)
|
||||||
|
option(ZSTD_BUILD_TESTS "BUILD TESTS" OFF)
|
||||||
|
|
||||||
add_subdirectory(zstd/build/cmake EXLUDE_FROM_ALL)
|
add_subdirectory(zstd/build/cmake EXLUDE_FROM_ALL)
|
||||||
add_library(3rdparty_zstd INTERFACE)
|
add_library(3rdparty_zstd INTERFACE)
|
||||||
|
@ -27,6 +27,7 @@ option(USE_PRECOMPILED_HEADERS "Use precompiled headers" OFF)
|
|||||||
option(USE_SDL "Enables SDL input handler" OFF)
|
option(USE_SDL "Enables SDL input handler" OFF)
|
||||||
option(USE_SYSTEM_SDL "Prefer system SDL instead of the builtin one" OFF)
|
option(USE_SYSTEM_SDL "Prefer system SDL instead of the builtin one" OFF)
|
||||||
option(USE_SYSTEM_FFMPEG "Prefer system ffmpeg instead of the prebuild one" OFF)
|
option(USE_SYSTEM_FFMPEG "Prefer system ffmpeg instead of the prebuild one" OFF)
|
||||||
|
option(USE_SYSTEM_OPENAL "Prefer system OpenAL instead of the prebuild one" ON)
|
||||||
|
|
||||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/buildfiles/cmake")
|
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/buildfiles/cmake")
|
||||||
|
|
||||||
|
@ -96,8 +96,7 @@ target_link_libraries(rpcs3 PRIVATE ${ADDITIONAL_LIBS})
|
|||||||
|
|
||||||
# Unix display manager
|
# Unix display manager
|
||||||
if(X11_FOUND)
|
if(X11_FOUND)
|
||||||
target_include_directories(rpcs3 PUBLIC ${X11_INCLUDE_DIR})
|
target_link_libraries(rpcs3 PRIVATE X11::X11)
|
||||||
target_link_libraries(rpcs3 PRIVATE ${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.")
|
||||||
|
@ -132,7 +132,7 @@ target_sources(rpcs3_emu PRIVATE
|
|||||||
|
|
||||||
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 SDL2_VERSION VERSION_GREATER_EQUAL 2.0.9)
|
||||||
target_sources(rpcs3_emu PRIVATE
|
target_sources(rpcs3_emu PRIVATE
|
||||||
Audio/FAudio/FAudioBackend.cpp
|
Audio/FAudio/FAudioBackend.cpp
|
||||||
Audio/FAudio/faudio_enumerator.cpp
|
Audio/FAudio/faudio_enumerator.cpp
|
||||||
|
Loading…
Reference in New Issue
Block a user