aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/sdl2-mixer-ext/portfile.cmake
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/sdl2-mixer-ext/portfile.cmake
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/sdl2-mixer-ext/portfile.cmake')
-rw-r--r--vcpkg/ports/sdl2-mixer-ext/portfile.cmake99
1 files changed, 99 insertions, 0 deletions
diff --git a/vcpkg/ports/sdl2-mixer-ext/portfile.cmake b/vcpkg/ports/sdl2-mixer-ext/portfile.cmake
new file mode 100644
index 0000000..5f92bfb
--- /dev/null
+++ b/vcpkg/ports/sdl2-mixer-ext/portfile.cmake
@@ -0,0 +1,99 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO WohlSoft/SDL-Mixer-X
+ REF "${VERSION}"
+ SHA512 bdb39122ecf8492723615421c37c0d2a8d5958110d7bf2f0a01f5c54cc1f3f6e9a54887df7d348e9dc7e34906cff67794b0f5d61ca6fe5e4019f84ed88cf07e5
+ HEAD_REF master
+ PATCHES
+ fix-dependencies.patch
+)
+
+file(REMOVE
+ "${SOURCE_PATH}/cmake/find/FindOGG.cmake" # Conflicts with official configurations
+ "${SOURCE_PATH}/cmake/find/FindFFMPEG.cmake" # Using FindFFMPEG.cmake provided by vcpkg
+)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ libvorbis USE_OGG_VORBIS
+ opusfile USE_OPUS
+ libflac USE_FLAC
+ wavpack USE_WAVPACK
+ mpg123 USE_MP3_MPG123
+ libmodplug USE_MODPLUG
+ libxmp USE_XMP
+ libgme USE_GME
+ ffmpeg USE_FFMPEG
+ pxtone USE_PXTONE
+ cmd USE_CMD
+ libadlmidi USE_MIDI_ADLMIDI
+ libopnmidi USE_MIDI_OPNMIDI
+ timidity USE_MIDI_TIMIDITY
+ fluidsynth USE_MIDI_FLUIDSYNTH
+ nativemidi USE_MIDI_NATIVE_ALT
+ nativemidi USE_MIDI_NATIVE
+)
+
+if("libadlmidi" IN_LIST FEATURES OR
+ "libopnmidi" IN_LIST FEATURES OR
+ "timidity" IN_LIST FEATURES OR
+ "fluidsynth" IN_LIST FEATURES OR
+ "nativemidi" IN_LIST FEATURES)
+ set(USE_MIDI ON)
+else()
+ set(USE_MIDI OFF)
+endif()
+
+if("fluidsynth" IN_LIST FEATURES)
+ vcpkg_find_acquire_program(PKGCONFIG)
+ list(APPEND EXTRA_OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}")
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ ${EXTRA_OPTIONS}
+ -DMIXERX_ENABLE_GPL=ON
+ -DMIXERX_ENABLE_LGPL=ON
+ -DUSE_SYSTEM_SDL2=ON
+ -DUSE_SYSTEM_AUDIO_LIBRARIES=ON
+ -DUSE_OGG_VORBIS_STB=OFF
+ -DUSE_DRFLAC=OFF
+ -USE_WAVPACK_DSD=ON
+ -DUSE_MP3_DRMP3=OFF
+ -DUSE_FFMPEG_DYNAMIC=OFF
+ -DUSE_MIDI=${USE_MIDI}
+ -DUSE_MIDI_EDMIDI=OFF
+ -DUSE_MIDI_FLUIDLITE=OFF
+ MAYBE_UNUSED_VARIABLES
+ USE_WAVPACK_DSD
+ USE_FFMPEG_DYNAMIC
+ USE_CMD
+ USE_MIDI_NATIVE
+ USE_MIDI_NATIVE_ALT
+)
+
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup(
+ PACKAGE_NAME SDL2_mixer_ext
+ CONFIG_PATH lib/cmake/SDL2_mixer_ext)
+
+vcpkg_fixup_pkgconfig()
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/share"
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+)
+
+file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+
+set(LICENSE_FILES
+ "${SOURCE_PATH}/COPYING.txt"
+ "${SOURCE_PATH}/GPLv2.txt"
+ "${SOURCE_PATH}/GPLv3.txt"
+ "${SOURCE_PATH}/SDL2_mixer_ext.License.txt"
+)
+vcpkg_install_copyright(FILE_LIST ${LICENSE_FILES})