Mikemon/libs/SDL_mixer/cmake/SDL3_mixerConfig.cmake.in
2025-04-03 04:30:22 +02:00

157 lines
5.5 KiB
CMake

# sdl3_mixer cmake project-config input for CMakeLists.txt script
@PACKAGE_INIT@
include(FeatureSummary)
set_package_properties(SDL3_mixer PROPERTIES
URL "https://www.libsdl.org/projects/SDL_mixer/"
DESCRIPTION "SDL_mixer is a sample multi-channel audio mixer library"
)
set(SDL3_mixer_FOUND ON)
set(SDLMIXER_VENDORED @SDLMIXER_VENDORED@)
set(SDLMIXER_SNDFILE @SDLMIXER_SNDFILE_ENABLED@)
set(SDLMIXER_FLAC @SDLMIXER_FLAC_ENABLED@)
set(SDLMIXER_FLAC_LIBFLAC @SDLMIXER_FLAC_LIBFLAC_ENABLED@)
set(SDLMIXER_FLAC_DRFLAC @SDLMIXER_FLAC_DRFLAC_ENABLED@)
set(SDLMIXER_GME @SDLMIXER_GME_ENABLED@)
set(SDLMIXER_MOD @SDLMIXER_MOD_ENABLED@)
set(SDLMIXER_MOD_XMP @SDLMIXER_MOD_XMP_ENABLED@)
set(SDLMIXER_MOD_XMP_LITE @SDLMIXER_MOD_XMP_ENABLED@)
set(SDLMIXER_MP3 @SDLMIXER_MP3_ENABLED@)
set(SDLMIXER_MP3_DRMP3 @SDLMIXER_MP3_DRMP3_ENABLED@)
set(SDLMIXER_MP3_MPG123 @SDLMIXER_MP3_MPG123_ENABLED@)
set(SDLMIXER_MIDI @SDLMIXER_MIDI_ENABLED@)
set(SDLMIXER_MIDI_FLUIDSYNTH @SDLMIXER_MIDI_FLUIDSYNTH_ENABLED@)
set(SDLMIXER_MIDI_NATIVE @SDLMIXER_MIDI_NATIVE_ENABLED@)
set(SDLMIXER_MIDI_TIMIDITY @SDLMIXER_MIDI_TIMIDITY_ENABLED@)
set(SDLMIXER_OPUS @SDLMIXER_OPUS_ENABLED@)
set(SDLMIXER_VORBIS @SDLMIXER_VORBIS_ENABLED@)
set(SDLMIXER_VORBIS_STB @SDLMIXER_VORBIS_STB_ENABLED@)
set(SDLMIXER_VORBIS_TREMOR @SDLMIXER_VORBIS_TREMOR_ENABLED@)
set(SDLMIXER_VORBIS_VORBISFILE @SDLMIXER_VORBIS_VORBISFILE_ENABLED@)
set(SDLMIXER_WAVE @SDLMIXER_WAVE_ENABLED@)
set(SDLMIXER_WAVPACK @SDLMIXER_WAVPACK_ENABLED@)
set(SDLMIXER_SDL3_REQUIRED_VERSION @SDL_REQUIRED_VERSION@)
set(SDL3_mixer_SDL3_mixer-shared_FOUND FALSE)
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3_mixer-shared-targets.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/SDL3_mixer-shared-targets.cmake")
set(SDL3_mixer_SDL3_mixer-shared_FOUND TRUE)
endif()
set(SDL3_mixer_SDL3_mixer-static FALSE)
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3_mixer-static-targets.cmake")
if(SDLMIXER_VENDORED)
if(SDLMIXER_GME)
include(CheckLanguage)
check_language(CXX)
if(NOT CMAKE_CXX_COMPILER)
message(WARNING "CXX language not enabled. Linking to SDL3_mixer::SDL3_mixer-static might fail.")
endif()
endif()
else()
set(_sdl_cmake_module_path "${CMAKE_MODULE_PATH}")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
include(CMakeFindDependencyMacro)
include(PkgConfigHelper)
if(NOT DEFINED CMAKE_FIND_PACKAGE_PREFER_CONFIG)
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
endif()
if(SDLMIXER_SNDFILE AND NOT TARGET SndFile::sndfile)
find_dependency(SndFile)
endif()
if(SDLMIXER_FLAC_LIBFLAC AND NOT TARGET FLAC::FLAC)
find_dependency(FLAC)
endif()
if(SDLMIXER_MOD_XMP AND NOT TARGET libxmp::libxmp)
find_dependency(libxmp)
endif()
if(SDLMIXER_MOD_XMP_LITE AND NOT TARGET libxmp-lite::libxmp-lite)
find_dependency(libxmp-lite)
endif()
if(SDLMIXER_MP3_MPG123 AND NOT TARGET MPG123::mpg123)
find_dependency(mpg123)
endif()
if(SDLMIXER_MIDI_FLUIDSYNTH AND NOT TARGET FluidSynth::libfluidsynth)
find_dependency(FluidSynth)
endif()
if(SDLMIXER_VORBIS_TREMOR AND NOT TARGET tremor::tremor)
find_dependency(tremor)
endif()
if(SDLMIXER_VORBIS_VORBISFILE AND NOT TARGET Vorbis::vorbisfile)
find_dependency(Vorbis)
endif()
if(SDLMIXER_OPUS AND NOT TARGET OpusFile::opusfile)
find_dependency(OpusFile)
endif()
if(SDLMIXER_WAVPACK AND NOT TARGET WavPack::WavPack)
find_dependency(wavpack)
endif()
set(CMAKE_MODULE_PATH "${_sdl_cmake_module_path}")
unset(_sdl_cmake_module_path)
if(HAIKU AND SDLMIXER_MIDI_NATIVE)
include(CheckLanguage)
check_language(CXX)
if(NOT CMAKE_CXX_COMPILER)
message(WARNING "CXX language not enabled. Linking to SDL3_mixer::SDL3_mixer-static might fail.")
endif()
endif()
endif()
include("${CMAKE_CURRENT_LIST_DIR}/SDL3_mixer-static-targets.cmake")
set(SDL3_mixer_SDL3_mixer-static TRUE)
endif()
function(_sdl_create_target_alias_compat NEW_TARGET TARGET)
if(CMAKE_VERSION VERSION_LESS "3.18")
# Aliasing local targets is not supported on CMake < 3.18, so make it global.
add_library(${NEW_TARGET} INTERFACE IMPORTED)
set_target_properties(${NEW_TARGET} PROPERTIES INTERFACE_LINK_LIBRARIES "${TARGET}")
else()
add_library(${NEW_TARGET} ALIAS ${TARGET})
endif()
endfunction()
# Make sure SDL3_mixer::SDL3_mixer always exists
if(NOT TARGET SDL3_mixer::SDL3_mixer)
if(TARGET SDL3_mixer::SDL3_mixer-shared)
_sdl_create_target_alias_compat(SDL3_mixer::SDL3_mixer SDL3_mixer::SDL3_mixer-shared)
elseif(TARGET SDL3_mixer::SDL3_mixer-static)
_sdl_create_target_alias_compat(SDL3_mixer::SDL3_mixer SDL3_mixer::SDL3_mixer-static)
endif()
endif()
if(NOT SDL3_mixer_COMPONENTS AND NOT TARGET SDL3_mixer::SDL3_mixer-shared AND NOT TARGET SDL3_mixer::SDL3_mixer-static)
set(SDL3_image_FOUND FALSE)
endif()
@PACKAGE_INIT@
check_required_components(SDL3_mixer)