From 41a9614308cdb22237f7fe38a68c70b53273da90 Mon Sep 17 00:00:00 2001 From: Daniel Date: Wed, 6 Mar 2019 18:14:01 +0000 Subject: [PATCH] Move SDL2_mixer optional dependencies to features (#5565) --- ports/sdl2-mixer/CONTROL | 20 ++++++++++++++++++-- ports/sdl2-mixer/portfile.cmake | 28 ++++++++++++++++++++++++---- 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/ports/sdl2-mixer/CONTROL b/ports/sdl2-mixer/CONTROL index 4f0c86ff1..77cf2ae0d 100644 --- a/ports/sdl2-mixer/CONTROL +++ b/ports/sdl2-mixer/CONTROL @@ -1,4 +1,20 @@ Source: sdl2-mixer -Version: 2.0.2-5 +Version: 2.0.2-6 Description: Multi-channel audio mixer library for SDL. -Build-Depends: sdl2, libflac, mpg123, libmodplug, libvorbis +Build-Depends: sdl2 + +Feature: libflac +Description: Support for FLAC audio format. +Build-Depends: libflac + +Feature: mpg123 +Description: Support for MP3 audio format. +Build-Depends: mpg123 + +Feature: libmodplug +Description: Support for MOD audio format. +Build-Depends: libmodplug + +Feature: libvorbis +Description: Support for OGG Vorbis audio format. +Build-Depends: libvorbis diff --git a/ports/sdl2-mixer/portfile.cmake b/ports/sdl2-mixer/portfile.cmake index c04d63654..b0cb9af14 100644 --- a/ports/sdl2-mixer/portfile.cmake +++ b/ports/sdl2-mixer/portfile.cmake @@ -13,14 +13,34 @@ vcpkg_extract_source_archive_ex( ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +set(USE_MP3 OFF) +if("mpg123" IN_LIST FEATURES) + set(USE_MP3 ON) +endif() + +set(USE_FLAC OFF) +if("libflac" IN_LIST FEATURES) + set(USE_FLAC ON) +endif() + +set(USE_MOD OFF) +if("libmodplug" IN_LIST FEATURES) + set(USE_MOD ON) +endif() + +set(USE_OGGVORBIS OFF) +if("libvorbis" IN_LIST FEATURES) + set(USE_OGGVORBIS ON) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DSDL_MIXER_ENABLE_MP3=ON # mpg123 - -DSDL_MIXER_ENABLE_FLAC=ON # libflac - -DSDL_MIXER_ENABLE_MOD=ON # libmodplug - -DSDL_MIXER_ENABLE_OGGVORBIS=ON # libvorbis + -DSDL_MIXER_ENABLE_MP3=${USE_MP3} # mpg123 + -DSDL_MIXER_ENABLE_FLAC=${USE_FLAC} # libflac + -DSDL_MIXER_ENABLE_MOD=${USE_MOD} # libmodplug + -DSDL_MIXER_ENABLE_OGGVORBIS=${USE_OGGVORBIS} # libvorbis OPTIONS_DEBUG -DSDL_MIXER_SKIP_HEADERS=ON )