Browse Source
[cmake] cubeb -> CPM
Signed-off-by: crueter <crueter@eden-emu.dev>
pull/143/head
crueter
8 months ago
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
6 changed files with
31 additions and
24 deletions
-
.gitmodules
-
CMakeLists.txt
-
externals/CMakeLists.txt
-
externals/cubeb
-
src/audio_core/CMakeLists.txt
-
src/audio_core/externals/cubeb/CMakeLists.txt
|
|
|
@ -1,9 +1,6 @@ |
|
|
|
# SPDX-FileCopyrightText: 2014 Citra Emulator Project |
|
|
|
# SPDX-License-Identifier: GPL-2.0-or-later |
|
|
|
|
|
|
|
[submodule "cubeb"] |
|
|
|
path = externals/cubeb |
|
|
|
url = https://github.com/mozilla/cubeb.git |
|
|
|
[submodule "libusb"] |
|
|
|
path = externals/libusb/libusb |
|
|
|
url = https://github.com/libusb/libusb.git |
|
|
|
|
|
|
|
@ -431,10 +431,6 @@ if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) |
|
|
|
find_package(dynarmic 6.4.0 CONFIG) |
|
|
|
endif() |
|
|
|
|
|
|
|
if (ENABLE_CUBEB) |
|
|
|
find_package(cubeb CONFIG) |
|
|
|
endif() |
|
|
|
|
|
|
|
if (USE_DISCORD_PRESENCE) |
|
|
|
find_package(DiscordRPC MODULE) |
|
|
|
endif() |
|
|
|
|
|
|
|
@ -4,6 +4,9 @@ |
|
|
|
# SPDX-FileCopyrightText: 2016 Citra Emulator Project |
|
|
|
# SPDX-License-Identifier: GPL-2.0-or-later |
|
|
|
|
|
|
|
# cpm |
|
|
|
include(CPM) |
|
|
|
|
|
|
|
# Dynarmic has cmake_minimum_required(3.12) and we may want to override |
|
|
|
# some of its variables, which is only possible in 3.13+ |
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) |
|
|
|
@ -91,7 +94,6 @@ if (YUZU_USE_EXTERNAL_SDL2) |
|
|
|
set(SDL_FILE ON) |
|
|
|
endif() |
|
|
|
|
|
|
|
include(CPM) |
|
|
|
set(CPM_USE_LOCAL_PACKAGES OFF) |
|
|
|
|
|
|
|
if ("${YUZU_SYSTEM_PROFILE}" STREQUAL "steamdeck") |
|
|
|
@ -117,20 +119,6 @@ if (NOT TARGET enet::enet) |
|
|
|
add_library(enet::enet ALIAS enet) |
|
|
|
endif() |
|
|
|
|
|
|
|
# Cubeb |
|
|
|
if (ENABLE_CUBEB AND NOT TARGET cubeb::cubeb) |
|
|
|
set(BUILD_TESTS OFF) |
|
|
|
set(BUILD_TOOLS OFF) |
|
|
|
add_subdirectory(cubeb) |
|
|
|
add_library(cubeb::cubeb ALIAS cubeb) |
|
|
|
if (NOT MSVC) |
|
|
|
if (TARGET speex) |
|
|
|
target_compile_options(speex PRIVATE -Wno-sign-compare) |
|
|
|
endif() |
|
|
|
target_compile_options(cubeb PRIVATE -Wno-implicit-const-int-float-conversion) |
|
|
|
endif() |
|
|
|
endif() |
|
|
|
|
|
|
|
# DiscordRPC |
|
|
|
if (USE_DISCORD_PRESENCE AND NOT TARGET DiscordRPC::discord-rpc) |
|
|
|
set(BUILD_EXAMPLES OFF) |
|
|
|
|
|
|
|
@ -1 +0,0 @@ |
|
|
|
Subproject commit fa021607121360af7c171d881dc5bc8af7bb56eb |
|
|
|
@ -232,12 +232,14 @@ if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) |
|
|
|
endif() |
|
|
|
|
|
|
|
if (ENABLE_CUBEB) |
|
|
|
add_subdirectory(externals/cubeb) |
|
|
|
|
|
|
|
target_sources(audio_core PRIVATE |
|
|
|
sink/cubeb_sink.cpp |
|
|
|
sink/cubeb_sink.h |
|
|
|
) |
|
|
|
|
|
|
|
target_link_libraries(audio_core PRIVATE cubeb::cubeb) |
|
|
|
target_link_libraries(audio_core PRIVATE cubeb) |
|
|
|
target_compile_definitions(audio_core PRIVATE -DHAVE_CUBEB=1) |
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
|
|
@ -0,0 +1,25 @@ |
|
|
|
# SPDX-FileCopyrightText: 2025 Eden Emulator Project |
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later |
|
|
|
|
|
|
|
include(CPM) |
|
|
|
set(CPM_USE_LOCAL_PACKAGES ON) |
|
|
|
CPMAddPackage( |
|
|
|
URI "gh:mozilla/cubeb#fa02160712" |
|
|
|
FIND_PACKAGE_ARGUMENTS "CONFIG" # not sure this works outside of gentoo |
|
|
|
) |
|
|
|
|
|
|
|
if (cubeb_ADDED) |
|
|
|
set(BUILD_TESTS OFF) |
|
|
|
set(BUILD_TOOLS OFF) |
|
|
|
|
|
|
|
if (NOT MSVC) |
|
|
|
if (TARGET speex) |
|
|
|
target_compile_options(speex PRIVATE -Wno-sign-compare) |
|
|
|
endif() |
|
|
|
target_compile_options(cubeb PRIVATE |
|
|
|
-Wno-implicit-const-int-float-conversion |
|
|
|
-Wno-shadow |
|
|
|
-Wno-missing-declarations -Wno-return-type |
|
|
|
) |
|
|
|
endif() |
|
|
|
endif() |