[sdl2-mixer] Fixes for installing on Linux (#5366)

* [sdl2-mixer] Fix libFLAC capitalization

* [sdl2-mixer] Only build native_midi on Windows

* [sdl2-mixer] Slight modernization; bump control version
This commit is contained in:
JackBister 2019-02-16 23:42:47 +01:00 committed by Robert Schumacher
parent 7a18088cf2
commit b316f9e743
3 changed files with 22 additions and 16 deletions

View File

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.0)
cmake_minimum_required(VERSION 3.1)
project(SDL2_MIXER C)
find_path(SDL_INCLUDE_DIR SDL.h PATH_SUFFIXES SDL2)
@ -7,9 +7,7 @@ set(SDL_MIXER_INCLUDES ${SDL_INCLUDE_DIR})
set(SDL_MIXER_LIBRARIES ${SDL_LIBRARY})
# builtin formats
set(SDL_MIXER_DEFINES
MUSIC_WAV
MUSIC_MID_NATIVE)
set(SDL_MIXER_DEFINES MUSIC_WAV)
# MP3 support
if(SDL_MIXER_ENABLE_MP3)
@ -22,8 +20,8 @@ endif()
# FLAC support
if(SDL_MIXER_ENABLE_FLAC)
find_path(FLAC_INCLUDE_DIR flac/all.h)
find_library(FLAC_LIBRARY flac)
find_path(FLAC_INCLUDE_DIR FLAC/all.h)
find_library(FLAC_LIBRARY FLAC)
list(APPEND SDL_MIXER_INCLUDES ${FLAC_INCLUDE_DIR})
list(APPEND SDL_MIXER_LIBRARIES ${FLAC_LIBRARY})
list(APPEND SDL_MIXER_DEFINES MUSIC_FLAC)
@ -62,15 +60,17 @@ add_library(SDL2_mixer
music_mikmod.c
music_modplug.c
music_mpg123.c
music_nativemidi.c
music_ogg.c
music_smpeg.c
music_timidity.c
music_wav.c
native_midi/native_midi_common.c
native_midi/native_midi_win32.c
version.rc)
if(WIN32)
list(APPEND SDL_MIXER_DEFINES MUSIC_MID_NATIVE)
target_sources(SDL2_mixer PRIVATE music_nativemidi.c native_midi/native_midi_common.c native_midi/native_midi_win32.c)
endif()
set_target_properties(SDL2_mixer PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS)
target_compile_definitions(SDL2_mixer PRIVATE ${SDL_MIXER_DEFINES})
target_include_directories(SDL2_mixer PRIVATE ${SDL_MIXER_INCLUDES} ./native_midi)

View File

@ -1,4 +1,4 @@
Source: sdl2-mixer
Version: 2.0.2-4
Version: 2.0.2-5
Description: Multi-channel audio mixer library for SDL.
Build-Depends: sdl2, libflac, mpg123, libmodplug, libvorbis

View File

@ -1,11 +1,16 @@
include(vcpkg_common_functions)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SDL2_mixer-2.0.2)
set(SDL2_MIXER_VERSION 2.0.2)
vcpkg_download_distfile(ARCHIVE
URLS "https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.2.zip"
FILENAME "SDL2_mixer-2.0.2.zip"
SHA512 da0c27c560a153d57d69a1b6c58a288f017762afc654749957072900a904d3dac19a0efcb68516cb166546d29ff570462385016e0041dae6f393ccb4bbd2ffbc)
URLS "https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-${SDL2_MIXER_VERSION}.zip"
FILENAME "SDL2_mixer-${SDL2_MIXER_VERSION}.zip"
SHA512 da0c27c560a153d57d69a1b6c58a288f017762afc654749957072900a904d3dac19a0efcb68516cb166546d29ff570462385016e0041dae6f393ccb4bbd2ffbc
)
vcpkg_extract_source_archive(${ARCHIVE})
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${SDL2_MIXER_VERSION}
)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
vcpkg_configure_cmake(
@ -17,7 +22,8 @@ vcpkg_configure_cmake(
-DSDL_MIXER_ENABLE_MOD=ON # libmodplug
-DSDL_MIXER_ENABLE_OGGVORBIS=ON # libvorbis
OPTIONS_DEBUG
-DSDL_MIXER_SKIP_HEADERS=ON)
-DSDL_MIXER_SKIP_HEADERS=ON
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()