diff --git a/.gitmodules b/.gitmodules index fdddb0d3ab..b72a2ec8c8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -32,7 +32,7 @@ path = externals/xbyak url = https://github.com/herumi/xbyak.git [submodule "opus"] - path = externals/opus/opus + path = externals/opus url = https://github.com/xiph/opus.git [submodule "SDL"] path = externals/SDL diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index 61baabb03f..be8b0b5e82 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt @@ -134,6 +134,10 @@ endif() # Opus if (NOT TARGET Opus::opus) + set(OPUS_BUILD_TESTING OFF) + set(OPUS_BUILD_PROGRAMS OFF) + set(OPUS_INSTALL_PKG_CONFIG_MODULE OFF) + set(OPUS_INSTALL_CMAKE_CONFIG_MODULE OFF) add_subdirectory(opus) endif() diff --git a/externals/SDL b/externals/SDL index 031912c4b6..cc016b0046 160000 --- a/externals/SDL +++ b/externals/SDL @@ -1 +1 @@ -Subproject commit 031912c4b6c5db80b443f04aa56fec3e4e645153 +Subproject commit cc016b0046d563287f0aa9f09b958b5e70d43696 diff --git a/externals/Vulkan-Headers b/externals/Vulkan-Headers index ed857118e2..df60f03168 160000 --- a/externals/Vulkan-Headers +++ b/externals/Vulkan-Headers @@ -1 +1 @@ -Subproject commit ed857118e243fdc0f3a100f00ac9919e874cfe63 +Subproject commit df60f0316899460eeaaefa06d2dd7e4e300c1604 diff --git a/externals/VulkanMemoryAllocator b/externals/VulkanMemoryAllocator index 9b0fc3e7b0..2f382df218 160000 --- a/externals/VulkanMemoryAllocator +++ b/externals/VulkanMemoryAllocator @@ -1 +1 @@ -Subproject commit 9b0fc3e7b02afe97895eb3e945fe800c3a7485ac +Subproject commit 2f382df218d7e8516dee3b3caccb819a62b571a2 diff --git a/externals/cpp-httplib b/externals/cpp-httplib index 6d963fbe8d..a609330e4c 160000 --- a/externals/cpp-httplib +++ b/externals/cpp-httplib @@ -1 +1 @@ -Subproject commit 6d963fbe8d415399d65e94db7910bbd22fe3741c +Subproject commit a609330e4c6374f741d3b369269f7848255e1954 diff --git a/externals/cpp-jwt b/externals/cpp-jwt index e12ef06218..10ef5735d8 160000 --- a/externals/cpp-jwt +++ b/externals/cpp-jwt @@ -1 +1 @@ -Subproject commit e12ef06218596b52d9b5d6e1639484866a8e7067 +Subproject commit 10ef5735d842b31025f1257ae78899f50a40fb14 diff --git a/externals/ffmpeg/ffmpeg b/externals/ffmpeg/ffmpeg index 6b6b9e593d..9c1294eadd 160000 --- a/externals/ffmpeg/ffmpeg +++ b/externals/ffmpeg/ffmpeg @@ -1 +1 @@ -Subproject commit 6b6b9e593dd4d3aaf75f48d40a13ef03bdef9fdb +Subproject commit 9c1294eaddb88cb0e044c675ccae059a85fc9c6c diff --git a/externals/inih/inih b/externals/inih/inih index 1e80a47dff..9cecf0643d 160000 --- a/externals/inih/inih +++ b/externals/inih/inih @@ -1 +1 @@ -Subproject commit 1e80a47dffbda813604f0913e2ad68c7054c14e4 +Subproject commit 9cecf0643da0846e77f64d10a126d9f48b9e05e8 diff --git a/externals/libusb/CMakeLists.txt b/externals/libusb/CMakeLists.txt index 6757b59da5..1d50c9f8c8 100644 --- a/externals/libusb/CMakeLists.txt +++ b/externals/libusb/CMakeLists.txt @@ -49,11 +49,6 @@ if (MINGW OR (${CMAKE_SYSTEM_NAME} MATCHES "Linux") OR APPLE) set(LIBUSB_INCLUDE_DIRS "${LIBUSB_SRC_DIR}/libusb" CACHE PATH "libusb headers path" FORCE) - # MINGW: causes "externals/libusb/libusb/libusb/os/windows_winusb.c:1427:2: error: conversion to non-scalar type requested", so cannot statically link it for now. - if (NOT MINGW) - set(LIBUSB_CFLAGS "-DGUID_DEVINTERFACE_USB_DEVICE=\\(GUID\\){0xA5DCBF10,0x6530,0x11D2,{0x90,0x1F,0x00,0xC0,0x4F,0xB9,0x51,0xED}}") - endif() - make_directory("${LIBUSB_PREFIX}") add_custom_command( @@ -146,8 +141,6 @@ else() # MINGW OR (${CMAKE_SYSTEM_NAME} MATCHES "Linux") target_include_directories(usb BEFORE PRIVATE libusb/msvc) endif() - # Works around other libraries providing their own definition of USB GUIDs (e.g. SDL2) - target_compile_definitions(usb PRIVATE "-DGUID_DEVINTERFACE_USB_DEVICE=(GUID){ 0xA5DCBF10, 0x6530, 0x11D2, {0x90, 0x1F, 0x00, 0xC0, 0x4F, 0xB9, 0x51, 0xED}}") else() target_include_directories(usb # turns out other projects also have "config.h", so make sure the diff --git a/externals/libusb/libusb b/externals/libusb/libusb index c6a35c5601..c060e9ce30 160000 --- a/externals/libusb/libusb +++ b/externals/libusb/libusb @@ -1 +1 @@ -Subproject commit c6a35c56016ea2ab2f19115d2ea1e85e0edae155 +Subproject commit c060e9ce30ac2e3ffb49d94209c4dae77b6642f7 diff --git a/externals/opus b/externals/opus new file mode 160000 index 0000000000..101a71e03b --- /dev/null +++ b/externals/opus @@ -0,0 +1 @@ +Subproject commit 101a71e03bbf860aaafb7090a0e440675cb27660 diff --git a/externals/opus/CMakeLists.txt b/externals/opus/CMakeLists.txt deleted file mode 100644 index d9a03423d4..0000000000 --- a/externals/opus/CMakeLists.txt +++ /dev/null @@ -1,259 +0,0 @@ -# SPDX-FileCopyrightText: 2019 yuzu Emulator Project -# SPDX-License-Identifier: GPL-2.0-or-later - -cmake_minimum_required(VERSION 3.8) - -project(opus) - -option(OPUS_STACK_PROTECTOR "Use stack protection" OFF) -option(OPUS_USE_ALLOCA "Use alloca for stack arrays (on non-C99 compilers)" OFF) -option(OPUS_CUSTOM_MODES "Enable non-Opus modes, e.g. 44.1 kHz & 2^n frames" OFF) -option(OPUS_FIXED_POINT "Compile as fixed-point (for machines without a fast enough FPU)" OFF) -option(OPUS_ENABLE_FLOAT_API "Compile with the floating point API (for machines with float library" ON) - -include(opus/opus_functions.cmake) - -if(OPUS_STACK_PROTECTOR) - if(NOT MSVC) # GC on by default on MSVC - check_and_set_flag(STACK_PROTECTION_STRONG -fstack-protector-strong) - endif() -else() - if(MSVC) - check_and_set_flag(BUFFER_SECURITY_CHECK /GS-) - endif() -endif() - -add_library(opus - # CELT sources - opus/celt/bands.c - opus/celt/celt.c - opus/celt/celt_decoder.c - opus/celt/celt_encoder.c - opus/celt/celt_lpc.c - opus/celt/cwrs.c - opus/celt/entcode.c - opus/celt/entdec.c - opus/celt/entenc.c - opus/celt/kiss_fft.c - opus/celt/laplace.c - opus/celt/mathops.c - opus/celt/mdct.c - opus/celt/modes.c - opus/celt/pitch.c - opus/celt/quant_bands.c - opus/celt/rate.c - opus/celt/vq.c - - # SILK sources - opus/silk/A2NLSF.c - opus/silk/CNG.c - opus/silk/HP_variable_cutoff.c - opus/silk/LPC_analysis_filter.c - opus/silk/LPC_fit.c - opus/silk/LPC_inv_pred_gain.c - opus/silk/LP_variable_cutoff.c - opus/silk/NLSF2A.c - opus/silk/NLSF_VQ.c - opus/silk/NLSF_VQ_weights_laroia.c - opus/silk/NLSF_decode.c - opus/silk/NLSF_del_dec_quant.c - opus/silk/NLSF_encode.c - opus/silk/NLSF_stabilize.c - opus/silk/NLSF_unpack.c - opus/silk/NSQ.c - opus/silk/NSQ_del_dec.c - opus/silk/PLC.c - opus/silk/VAD.c - opus/silk/VQ_WMat_EC.c - opus/silk/ana_filt_bank_1.c - opus/silk/biquad_alt.c - opus/silk/bwexpander.c - opus/silk/bwexpander_32.c - opus/silk/check_control_input.c - opus/silk/code_signs.c - opus/silk/control_SNR.c - opus/silk/control_audio_bandwidth.c - opus/silk/control_codec.c - opus/silk/dec_API.c - opus/silk/decode_core.c - opus/silk/decode_frame.c - opus/silk/decode_indices.c - opus/silk/decode_parameters.c - opus/silk/decode_pitch.c - opus/silk/decode_pulses.c - opus/silk/decoder_set_fs.c - opus/silk/enc_API.c - opus/silk/encode_indices.c - opus/silk/encode_pulses.c - opus/silk/gain_quant.c - opus/silk/init_decoder.c - opus/silk/init_encoder.c - opus/silk/inner_prod_aligned.c - opus/silk/interpolate.c - opus/silk/lin2log.c - opus/silk/log2lin.c - opus/silk/pitch_est_tables.c - opus/silk/process_NLSFs.c - opus/silk/quant_LTP_gains.c - opus/silk/resampler.c - opus/silk/resampler_down2.c - opus/silk/resampler_down2_3.c - opus/silk/resampler_private_AR2.c - opus/silk/resampler_private_IIR_FIR.c - opus/silk/resampler_private_down_FIR.c - opus/silk/resampler_private_up2_HQ.c - opus/silk/resampler_rom.c - opus/silk/shell_coder.c - opus/silk/sigm_Q15.c - opus/silk/sort.c - opus/silk/stereo_LR_to_MS.c - opus/silk/stereo_MS_to_LR.c - opus/silk/stereo_decode_pred.c - opus/silk/stereo_encode_pred.c - opus/silk/stereo_find_predictor.c - opus/silk/stereo_quant_pred.c - opus/silk/sum_sqr_shift.c - opus/silk/table_LSF_cos.c - opus/silk/tables_LTP.c - opus/silk/tables_NLSF_CB_NB_MB.c - opus/silk/tables_NLSF_CB_WB.c - opus/silk/tables_gain.c - opus/silk/tables_other.c - opus/silk/tables_pitch_lag.c - opus/silk/tables_pulses_per_block.c - - # Opus sources - opus/src/analysis.c - opus/src/mapping_matrix.c - opus/src/mlp.c - opus/src/mlp_data.c - opus/src/opus.c - opus/src/opus_decoder.c - opus/src/opus_encoder.c - opus/src/opus_multistream.c - opus/src/opus_multistream_decoder.c - opus/src/opus_multistream_encoder.c - opus/src/opus_projection_decoder.c - opus/src/opus_projection_encoder.c - opus/src/repacketizer.c -) - -if (DEBUG) - target_sources(opus PRIVATE opus/silk/debug.c) -endif() - -if (OPUS_FIXED_POINT) - target_sources(opus PRIVATE - opus/silk/fixed/LTP_analysis_filter_FIX.c - opus/silk/fixed/LTP_scale_ctrl_FIX.c - opus/silk/fixed/apply_sine_window_FIX.c - opus/silk/fixed/autocorr_FIX.c - opus/silk/fixed/burg_modified_FIX.c - opus/silk/fixed/corrMatrix_FIX.c - opus/silk/fixed/encode_frame_FIX.c - opus/silk/fixed/find_LPC_FIX.c - opus/silk/fixed/find_LTP_FIX.c - opus/silk/fixed/find_pitch_lags_FIX.c - opus/silk/fixed/find_pred_coefs_FIX.c - opus/silk/fixed/k2a_FIX.c - opus/silk/fixed/k2a_Q16_FIX.c - opus/silk/fixed/noise_shape_analysis_FIX.c - opus/silk/fixed/pitch_analysis_core_FIX.c - opus/silk/fixed/prefilter_FIX.c - opus/silk/fixed/process_gains_FIX.c - opus/silk/fixed/regularize_correlations_FIX.c - opus/silk/fixed/residual_energy16_FIX.c - opus/silk/fixed/residual_energy_FIX.c - opus/silk/fixed/schur64_FIX.c - opus/silk/fixed/schur_FIX.c - opus/silk/fixed/solve_LS_FIX.c - opus/silk/fixed/vector_ops_FIX.c - opus/silk/fixed/warped_autocorrelation_FIX.c - ) -else() - target_sources(opus PRIVATE - opus/silk/float/LPC_analysis_filter_FLP.c - opus/silk/float/LPC_inv_pred_gain_FLP.c - opus/silk/float/LTP_analysis_filter_FLP.c - opus/silk/float/LTP_scale_ctrl_FLP.c - opus/silk/float/apply_sine_window_FLP.c - opus/silk/float/autocorrelation_FLP.c - opus/silk/float/burg_modified_FLP.c - opus/silk/float/bwexpander_FLP.c - opus/silk/float/corrMatrix_FLP.c - opus/silk/float/encode_frame_FLP.c - opus/silk/float/energy_FLP.c - opus/silk/float/find_LPC_FLP.c - opus/silk/float/find_LTP_FLP.c - opus/silk/float/find_pitch_lags_FLP.c - opus/silk/float/find_pred_coefs_FLP.c - opus/silk/float/inner_product_FLP.c - opus/silk/float/k2a_FLP.c - opus/silk/float/noise_shape_analysis_FLP.c - opus/silk/float/pitch_analysis_core_FLP.c - opus/silk/float/process_gains_FLP.c - opus/silk/float/regularize_correlations_FLP.c - opus/silk/float/residual_energy_FLP.c - opus/silk/float/scale_copy_vector_FLP.c - opus/silk/float/scale_vector_FLP.c - opus/silk/float/schur_FLP.c - opus/silk/float/sort_FLP.c - opus/silk/float/warped_autocorrelation_FLP.c - opus/silk/float/wrappers_FLP.c - ) -endif() - -target_compile_definitions(opus PRIVATE OPUS_BUILD ENABLE_HARDENING) - -if(NOT MSVC) - if(MINGW) - target_compile_definitions(opus PRIVATE _FORTIFY_SOURCE=0) - else() - target_compile_definitions(opus PRIVATE _FORTIFY_SOURCE=2) - endif() -endif() - -# It is strongly recommended to uncomment one of these VAR_ARRAYS: Use C99 -# variable-length arrays for stack allocation USE_ALLOCA: Use alloca() for stack -# allocation If none is defined, then the fallback is a non-threadsafe global -# array -if(OPUS_USE_ALLOCA OR MSVC) - target_compile_definitions(opus PRIVATE USE_ALLOCA) -else() - target_compile_definitions(opus PRIVATE VAR_ARRAYS) -endif() - -if(OPUS_CUSTOM_MODES) - target_compile_definitions(opus PRIVATE CUSTOM_MODES) -endif() - -if(NOT OPUS_ENABLE_FLOAT_API) - target_compile_definitions(opus PRIVATE DISABLE_FLOAT_API) -endif() - -target_compile_definitions(opus -PUBLIC - -DOPUS_VERSION="\\"1.3.1\\"" - -PRIVATE - # Use C99 intrinsics to speed up float-to-int conversion - HAVE_LRINTF -) - -if (FIXED_POINT) - target_compile_definitions(opus PRIVATE -DFIXED_POINT=1 -DDISABLE_FLOAT_API) -endif() - -target_include_directories(opus -PUBLIC - opus/include - -PRIVATE - opus/celt - opus/silk - opus/silk/fixed - opus/silk/float - opus/src -) - -add_library(Opus::opus ALIAS opus) diff --git a/externals/opus/opus b/externals/opus/opus deleted file mode 160000 index ad8fe90db7..0000000000 --- a/externals/opus/opus +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ad8fe90db79b7d2a135e3dfd2ed6631b0c5662ab diff --git a/externals/vcpkg b/externals/vcpkg index cbf56573a9..ef2eef1734 160000 --- a/externals/vcpkg +++ b/externals/vcpkg @@ -1 +1 @@ -Subproject commit cbf56573a987527b39272e88cbdd11389b78c6e4 +Subproject commit ef2eef17340f3fbd679327d286fad06dd6e838ed