diff --git a/recipes/sdl2_image/2.0.5/CMakeLists.txt b/recipes/sdl2_image/2.0.5/CMakeLists.txt new file mode 100644 index 00000000..af776b31 --- /dev/null +++ b/recipes/sdl2_image/2.0.5/CMakeLists.txt @@ -0,0 +1,104 @@ +cmake_minimum_required(VERSION 2.8) + +project(SDL2_image) + +include(conanbuildinfo.cmake) +conan_basic_setup() + +find_package(SDL2 REQUIRED CONFIG) + +macro(add_image_option type) + option(${type} "${type} images support" ON) + if(${type}) + add_definitions("-DLOAD_${type}") + if(${type}_DYNAMIC) + add_definitions("-DLOAD_${type}_DYNAMIC") + endif() + endif() +endmacro() + +if(APPLE) + option(IMAGEIO "use native Mac OS X frameworks for loading images" ON) + if(IMAGEIO) + set(IMAGEIO_SOURCE "source_subfolder/IMG_ImageIO.m") + else() + add_definitions("-DSDL_IMAGE_USE_COMMON_BACKEND") + endif() +endif() + +add_image_option(BMP) +add_image_option(GIF) +add_image_option(JPG) +add_image_option(LBM) +add_image_option(PCX) +add_image_option(PNG) +add_image_option(PNM) +add_image_option(SVG) +add_image_option(TGA) +add_image_option(TIF) +add_image_option(WEBP) +add_image_option(XCF) +add_image_option(XPM) +add_image_option(XV) + +set(SOURCES +source_subfolder/IMG.c +source_subfolder/IMG_bmp.c +source_subfolder/IMG_gif.c +source_subfolder/IMG_jpg.c +source_subfolder/IMG_lbm.c +source_subfolder/IMG_pcx.c +source_subfolder/IMG_png.c +source_subfolder/IMG_pnm.c +source_subfolder/IMG_svg.c +source_subfolder/IMG_tga.c +source_subfolder/IMG_tif.c +source_subfolder/IMG_xcf.c +source_subfolder/IMG_xpm.c +source_subfolder/IMG_xv.c +source_subfolder/IMG_webp.c +${IMAGEIO_SOURCE} +) + +add_library(${PROJECT_NAME} ${SOURCES}) + +target_include_directories(${PROJECT_NAME} PRIVATE "source_subfolder") + +if(${SDL_IS_SHARED}) + target_link_libraries(${PROJECT_NAME} PRIVATE SDL2::SDL2) +else() + target_link_libraries(${PROJECT_NAME} PRIVATE SDL2::SDL2-static) +endif() + +if(${TIF}) + find_package(TIFF REQUIRED CONFIG) + target_link_libraries(${PROJECT_NAME} PRIVATE TIFF::TIFF) +endif() + +if(${JPG}) + find_package(JPEG REQUIRED CONFIG) + target_link_libraries(${PROJECT_NAME} PRIVATE JPEG::JPEG) +endif() + +if(${PNG}) + find_package(PNG REQUIRED CONFIG) + target_link_libraries(${PROJECT_NAME} PRIVATE PNG::PNG) +endif() + +if(${WEBP}) + find_package(WebP REQUIRED CONFIG) + target_link_libraries(${PROJECT_NAME} PRIVATE WebP::webp) +endif() + +set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER source_subfolder/SDL_image.h) + +if(${BUILD_SHARED_LIBS}) + target_compile_definitions(${PROJECT_NAME} PRIVATE DLL_EXPORT) +endif() + +install(TARGETS ${PROJECT_NAME} + ARCHIVE DESTINATION "lib" + LIBRARY DESTINATION "lib" + RUNTIME DESTINATION "bin" + PUBLIC_HEADER DESTINATION "include/SDL2" +) diff --git a/recipes/sdl2_image/2.0.5/conandata.yml b/recipes/sdl2_image/2.0.5/conandata.yml new file mode 100644 index 00000000..bc34556c --- /dev/null +++ b/recipes/sdl2_image/2.0.5/conandata.yml @@ -0,0 +1,4 @@ +sources: + "2.0.5": + url: "https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.0.5.tar.gz" + sha256: "bdd5f6e026682f7d7e1be0b6051b209da2f402a2dd8bd1c4bd9c25ad263108d0" diff --git a/recipes/sdl2_image/2.0.5/conanfile.py b/recipes/sdl2_image/2.0.5/conanfile.py new file mode 100644 index 00000000..1a573fdd --- /dev/null +++ b/recipes/sdl2_image/2.0.5/conanfile.py @@ -0,0 +1,127 @@ +from conans import ConanFile, tools, CMake +import os + + +class SDL2ImageConan(ConanFile): + name = "sdl2_image" + description = "SDL_image is an image file loading library" + topics = ("sdl2_image", "sdl_image", "sdl2", "sdl", "images", "opengl") + url = "https://github.com/bincrafters/community" + homepage = "https://www.libsdl.org/projects/SDL_image/" + license = "MIT" + exports_sources = ["CMakeLists.txt"] + generators = ["cmake", "cmake_find_package_multi"] + settings = "os", "arch", "compiler", "build_type" + options = { + "shared": [True, False], + "fPIC": [True, False], + "bmp": [True, False], + "gif": [True, False], + "lbm": [True, False], + "pcx": [True, False], + "pnm": [True, False], + "svg": [True, False], + "tga": [True, False], + "xcf": [True, False], + "xpm": [True, False], + "xv": [True, False], + "jpg": [True, False], + "tif": [True, False], + "png": [True, False], + "webp": [True, False], + "imageio": [True, False]} + default_options = { + "shared": False, + "fPIC": True, + "bmp": True, + "gif": True, + "lbm": True, + "pcx": True, + "pnm": True, + "svg": True, + "tga": True, + "xcf": True, + "xpm": True, + "xv": True, + "jpg": True, + "tif": True, + "png": True, + "webp": True, + "imageio": False + } + + _cmake = None + _source_subfolder = "source_subfolder" + _build_subfolder = "build_subfolder" + + def config_options(self): + del self.settings.compiler.libcxx + del self.settings.compiler.cppstd + if self.settings.os == "Windows": + del self.options.fPIC + if self.settings.os != "Macos": + del self.options.imageio + + def requirements(self): + self.requires("sdl2/2.0.14@bincrafters/stable") + if self.options.tif: + self.requires("libtiff/4.0.9") + if self.options.jpg: + self.requires("libjpeg/9d") + if self.options.png: + self.requires("libpng/1.6.37") + if self.options.webp: + self.requires("libwebp/1.0.3") + self.requires("zlib/1.2.11") + + def source(self): + tools.get(**self.conan_data["sources"][self.version]) + extracted_dir = "SDL2_image-" + self.version + os.rename(extracted_dir, self._source_subfolder) + + def _configure_cmake(self): + if self._cmake: + return self._cmake + + self._cmake = CMake(self) + self._cmake.definitions["BMP"] = self.options.bmp + self._cmake.definitions["GIF"] = self.options.gif + self._cmake.definitions["IMAGEIO"] = self.options.get_safe("imageio") + self._cmake.definitions["JPG"] = self.options.jpg + self._cmake.definitions["LBM"] = self.options.lbm + self._cmake.definitions["PCX"] = self.options.pcx + self._cmake.definitions["PNG"] = self.options.png + self._cmake.definitions["PNM"] = self.options.pnm + self._cmake.definitions["SVG"] = self.options.svg + self._cmake.definitions["TGA"] = self.options.tga + self._cmake.definitions["TIF"] = self.options.tif + self._cmake.definitions["WEBP"] = self.options.webp + self._cmake.definitions["XCF"] = self.options.xcf + self._cmake.definitions["XPM"] = self.options.xpm + self._cmake.definitions["XV"] = self.options.xv + # TODO: https://github.com/bincrafters/community/pull/1317#pullrequestreview-584847138 + self._cmake.definitions["TIF_DYNAMIC"] = self.options["libtiff"].shared if self.options.tif else False + self._cmake.definitions["JPG_DYNAMIC"] = self.options["libjpeg"].shared if self.options.jpg else False + self._cmake.definitions["PNG_DYNAMIC"] = self.options["libpng"].shared if self.options.png else False + self._cmake.definitions["WEBP_DYNAMIC"] = self.options["libwebp"].shared if self.options.webp else False + self._cmake.definitions["SDL_IS_SHARED"] = self.options["sdl2"].shared + + self._cmake.configure(build_dir="build") + return self._cmake + + def build(self): + cmake = self._configure_cmake() + cmake.build() + + def package(self): + self.copy(pattern="COPYING.txt", dst="license", src=self._source_subfolder) + cmake = self._configure_cmake() + cmake.install() + + def package_info(self): + self.cpp_info.libs = ["SDL2_image"] + self.cpp_info.includedirs.append(os.path.join("include", "SDL2")) + # TODO: Add components in a sane way. SDL2_image might be incorrect, as the current dev version uses SDL2::image + # The current dev version is the first version with official CMake support + self.cpp_info.names["cmake_find_package"] = "SDL2_image" + self.cpp_info.names["cmake_find_package_multi"] = "SDL2_image" diff --git a/recipes/sdl2_image/2.0.5/test_package/CMakeLists.txt b/recipes/sdl2_image/2.0.5/test_package/CMakeLists.txt new file mode 100644 index 00000000..f3d0bdfa --- /dev/null +++ b/recipes/sdl2_image/2.0.5/test_package/CMakeLists.txt @@ -0,0 +1,11 @@ +cmake_minimum_required(VERSION 3.1) +project(test_package) + + +include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) +conan_basic_setup() + +find_package(SDL2_image REQUIRED CONFIG) + +add_executable(${PROJECT_NAME} test_package.cpp) +target_link_libraries(${PROJECT_NAME} SDL2_image::SDL2_image) diff --git a/recipes/sdl2_image/2.0.5/test_package/conanfile.py b/recipes/sdl2_image/2.0.5/test_package/conanfile.py new file mode 100644 index 00000000..7e2dfe85 --- /dev/null +++ b/recipes/sdl2_image/2.0.5/test_package/conanfile.py @@ -0,0 +1,17 @@ +from conans import ConanFile, CMake, tools +import os + + +class TestPackageConan(ConanFile): + settings = "os", "compiler", "build_type", "arch" + generators = "cmake", "cmake_find_package_multi" + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def test(self): + if not tools.cross_building(self.settings): + bin_path = os.path.join("bin", "test_package") + self.run(bin_path, run_environment=True) diff --git a/recipes/sdl2_image/2.0.5/test_package/test_package.cpp b/recipes/sdl2_image/2.0.5/test_package/test_package.cpp new file mode 100644 index 00000000..f98deec6 --- /dev/null +++ b/recipes/sdl2_image/2.0.5/test_package/test_package.cpp @@ -0,0 +1,19 @@ +#include +#include +#include "SDL_image.h" + +int main(int argc, char *argv[]) +{ + SDL_version compile_version; + const SDL_version * link_version=IMG_Linked_Version(); + SDL_IMAGE_VERSION(&compile_version); + std::cout << "SDL2_image compile version: " << + int(compile_version.major) << "." << + int(compile_version.minor) << "." << + int(compile_version.patch) << std::endl; + std::cout << "SDL2_image link version: " << + int(link_version->major) << "." << + int(link_version->minor) << "." << + int(link_version->patch) << std::endl; + return EXIT_SUCCESS; +} diff --git a/recipes/sdl2_image/config.yml b/recipes/sdl2_image/config.yml new file mode 100644 index 00000000..bb692da8 --- /dev/null +++ b/recipes/sdl2_image/config.yml @@ -0,0 +1,3 @@ +versions: + "2.0.5": + folder: "2.0.5" diff --git a/recipes/sdl2_mixer/2.0.4/CMakeLists.txt b/recipes/sdl2_mixer/2.0.4/CMakeLists.txt new file mode 100644 index 00000000..17bf3043 --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/CMakeLists.txt @@ -0,0 +1,112 @@ +cmake_minimum_required(VERSION 2.8.12) +project(sdl2_mixer) + +include(conanbuildinfo.cmake) +conan_basic_setup() + +macro(add_music_option type) + option(${type} "${type} music support" OFF) + message(STATUS "${type} ${${type}}") + if(${${type}}) + add_definitions("-DMUSIC_${type}") + if(${${type}_DYNAMIC}) + add_definitions("-D${type}_DYNAMIC") + endif() + endif() +endmacro() + +add_music_option(CMD) +add_music_option(WAV) +add_music_option(FLAC) +add_music_option(OGG) +add_music_option(OPUS) +add_music_option(MP3_MPG123) +add_music_option(MP3_MAD) +add_music_option(MOD_MIKMOD) +add_music_option(MOD_MODPLUG) +add_music_option(MID_NATIVE) +add_music_option(MID_FLUIDSYNTH) +add_music_option(MID_TINYMIDI) + +if(${MID_NATIVE}) + +set(NATIVE_MIDI_SOURCES +source_subfolder/native_midi/native_midi_common.c +source_subfolder/native_midi/native_midi_common.h +source_subfolder/native_midi/native_midi_haiku.cpp +source_subfolder/native_midi/native_midi_mac.c +source_subfolder/native_midi/native_midi_macosx.c +source_subfolder/native_midi/native_midi_win32.c +) + +set(NATIVE_MIDI_HEADERS +source_subfolder/native_midi/native_midi.h +) + +endif() + +set(SOURCES +source_subfolder/effect_position.c +source_subfolder/effect_stereoreverse.c +source_subfolder/effects_internal.c +source_subfolder/load_aiff.c +source_subfolder/load_voc.c +source_subfolder/mixer.c +source_subfolder/music.c +source_subfolder/music_cmd.c +source_subfolder/music_flac.c +source_subfolder/music_fluidsynth.c +source_subfolder/music_mad.c +source_subfolder/music_mikmod.c +source_subfolder/music_modplug.c +source_subfolder/music_mpg123.c +source_subfolder/music_nativemidi.c +source_subfolder/music_ogg.c +source_subfolder/music_opus.c +source_subfolder/music_timidity.c +source_subfolder/music_wav.c +${NATIVE_MIDI_SOURCES} +) + +set(HEADERS +source_subfolder/effects_internal.h +source_subfolder/load_aiff.h +source_subfolder/load_voc.h +source_subfolder/mixer.h +source_subfolder/music.h +source_subfolder/music_cmd.h +source_subfolder/music_flac.h +source_subfolder/music_fluidsynth.h +source_subfolder/music_mad.h +source_subfolder/music_mikmod.h +source_subfolder/music_modplug.h +source_subfolder/music_mpg123.h +source_subfolder/music_nativemidi.h +source_subfolder/music_ogg.h +source_subfolder/music_opus.h +source_subfolder/music_timidity.h +source_subfolder/music_wav.h +${NATIVE_MIDI_HEADERS} +) + +add_library(${PROJECT_NAME} ${SOURCES} ${HEADERS}) + +target_include_directories(${PROJECT_NAME} PRIVATE "source_subfolder") + +if(${MID_NATIVE}) + target_include_directories(${PROJECT_NAME} PRIVATE "source_subfolder/native_midi") +endif() + +target_link_libraries(${PROJECT_NAME} PRIVATE ${CONAN_LIBS}) +set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER source_subfolder/SDL_mixer.h) + +if(${BUILD_SHARED_LIBS}) + target_compile_definitions(${PROJECT_NAME} PRIVATE DLL_EXPORT) +endif() + +install(TARGETS ${PROJECT_NAME} + ARCHIVE DESTINATION "lib" + LIBRARY DESTINATION "lib" + RUNTIME DESTINATION "bin" + PUBLIC_HEADER DESTINATION "include/SDL2" +) diff --git a/recipes/sdl2_mixer/2.0.4/conandata.yml b/recipes/sdl2_mixer/2.0.4/conandata.yml new file mode 100644 index 00000000..9271599c --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/conandata.yml @@ -0,0 +1,4 @@ +sources: + "2.0.4": + url: https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.4.tar.gz + sha256: b4cf5a382c061cd75081cf246c2aa2f9df8db04bdda8dcdc6b6cca55bede2419 diff --git a/recipes/sdl2_mixer/2.0.4/conanfile.py b/recipes/sdl2_mixer/2.0.4/conanfile.py new file mode 100644 index 00000000..388933fa --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/conanfile.py @@ -0,0 +1,134 @@ +from conans import ConanFile, CMake, tools +import os + + +class SDL2MixerConan(ConanFile): + name = "sdl2_mixer" + description = "SDL_mixer is a sample multi-channel audio mixer library" + topics = ("sdl2_mixer", "sdl_mixer", "sdl2", "mixer", "audio", "multimedia", "sound", "music") + url = "https://github.com/bincrafters/community" + homepage = "https://www.libsdl.org/projects/SDL_mixer/" + license = "Zlib" + exports_sources = ["CMakeLists.txt"] + generators = "cmake" + settings = "os", "arch", "compiler", "build_type" + options = {"shared": [True, False], + "fPIC": [True, False], + "cmd": [True, False], + "wav": [True, False], + "flac": [True, False], + "mpg123": [True, False], + "mad": [True, False], + "ogg": [True, False], + "opus": [True, False], + "mikmod": [True, False], + "modplug": [True, False], + "fluidsynth": [True, False], + "nativemidi": [True, False], + "tinymidi": [True, False]} + default_options = {"shared": False, + "fPIC": True, + "cmd": False, # needs sys/wait.h + "wav": True, + "flac": True, + "mpg123": True, + "mad": True, + "ogg": True, + "opus": True, + "mikmod": True, + "modplug": True, + "fluidsynth": True, + "nativemidi": True, + "tinymidi": True} + _source_subfolder = "source_subfolder" + _build_subfolder = "build_subfolder" + _cmake = None + + def config_options(self): + if self.settings.os == "Windows": + del self.options.fPIC + if self.settings.os != "Linux": + del self.options.tinymidi + else: + del self.options.nativemidi + + def configure(self): + del self.settings.compiler.libcxx + del self.settings.compiler.cppstd + + def requirements(self): + self.requires("sdl2/2.0.14@bincrafters/stable") + if self.options.flac: + self.requires("flac/1.3.3") + if self.options.mpg123: + self.requires("mpg123/1.26.4") + if self.options.mad: + self.requires("libmad/0.15.1b") + if self.options.ogg: + self.requires("ogg/1.3.4") + self.requires("vorbis/1.3.7") + if self.options.opus: + self.requires("opus/1.3.1") + self.requires("opusfile/0.12") + if self.options.mikmod: + self.requires("libmikmod/3.3.11.1") + if self.options.modplug: + self.requires("libmodplug/0.8.9.0") + if self.options.fluidsynth: + self.requires("fluidsynth/2.2.2@bincrafters/stable") + if self.settings.os == "Linux": + if self.options.tinymidi: + self.requires("tinymidi/cci.20130325") + + def source(self): + tools.get(**self.conan_data["sources"][self.version]) + extracted_dir = "SDL2_mixer-" + self.version + os.rename(extracted_dir, self._source_subfolder) + + tools.rmdir(os.path.join(self._source_subfolder, "external")) + + def _configure_cmake(self): + if self._cmake: + return self._cmake + + self._cmake = CMake(self) + self._cmake.definitions["CMD"] = self.options.cmd + self._cmake.definitions["WAV"] = self.options.wav + self._cmake.definitions["FLAC"] = self.options.flac + self._cmake.definitions["MP3_MPG123"] = self.options.mpg123 + self._cmake.definitions["MP3_MAD"] = self.options.mad + self._cmake.definitions["OGG"] = self.options.ogg + self._cmake.definitions["OPUS"] = self.options.opus + self._cmake.definitions["MOD_MIKMOD"] = self.options.mikmod + self._cmake.definitions["MOD_MODPLUG"] = self.options.modplug + self._cmake.definitions["MID_FLUIDSYNTH"] = self.options.fluidsynth + if self.settings.os == "Linux": + self._cmake.definitions["MID_TINYMIDI"] = self.options.tinymidi + self._cmake.definitions["MID_NATIVE"] = False + else: + self._cmake.definitions["MID_TINYMIDI"] = False + self._cmake.definitions["MID_NATIVE"] = self.options.nativemidi + + self._cmake.definitions["FLAC_DYNAMIC"] = self.options["flac"].shared if self.options.flac else False + self._cmake.definitions["MP3_MPG123_DYNAMIC"] = self.options["mpg123"].shared if self.options.mpg123 else False + self._cmake.definitions["OGG_DYNAMIC"] = self.options["ogg"].shared if self.options.ogg else False + self._cmake.definitions["OPUS_DYNAMIC"] = self.options["opus"].shared if self.options.opus else False + self._cmake.definitions["MOD_MIKMOD_DYNAMIC"] = self.options["libmikmod"].shared if self.options.mikmod else False + self._cmake.definitions["MOD_MODPLUG_DYNAMIC"] = self.options["libmodplug"].shared if self.options.modplug else False + + self._cmake.configure(build_folder=self._build_subfolder) + + return self._cmake + + def build(self): + cmake = self._configure_cmake() + cmake.build() + + def package(self): + self.copy(pattern="COPYING.txt", dst="licenses", src=self._source_subfolder) + cmake = self._configure_cmake() + cmake.install() + + def package_info(self): + self.cpp_info.libs = ["sdl2_mixer"] + self.cpp_info.includedirs.append(os.path.join("include", "SDL2")) diff --git a/recipes/sdl2_mixer/2.0.4/test_package/CMakeLists.txt b/recipes/sdl2_mixer/2.0.4/test_package/CMakeLists.txt new file mode 100644 index 00000000..e97ecc6c --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/test_package/CMakeLists.txt @@ -0,0 +1,9 @@ +cmake_minimum_required(VERSION 3.1) +project(test_package) + + +include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) +conan_basic_setup() + +add_executable(${PROJECT_NAME} test_package.cpp) +target_link_libraries(${PROJECT_NAME} ${CONAN_LIBS}) diff --git a/recipes/sdl2_mixer/2.0.4/test_package/conanfile.py b/recipes/sdl2_mixer/2.0.4/test_package/conanfile.py new file mode 100644 index 00000000..bd7165a5 --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/test_package/conanfile.py @@ -0,0 +1,17 @@ +from conans import ConanFile, CMake, tools +import os + + +class TestPackageConan(ConanFile): + settings = "os", "compiler", "build_type", "arch" + generators = "cmake" + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def test(self): + if not tools.cross_building(self.settings): + bin_path = os.path.join("bin", "test_package") + self.run(bin_path, run_environment=True) diff --git a/recipes/sdl2_mixer/2.0.4/test_package/test_package.cpp b/recipes/sdl2_mixer/2.0.4/test_package/test_package.cpp new file mode 100644 index 00000000..1db26637 --- /dev/null +++ b/recipes/sdl2_mixer/2.0.4/test_package/test_package.cpp @@ -0,0 +1,36 @@ +#include +#include +#include +#include + +int main(int argc, char *argv[]) +{ + const SDL_version * version = Mix_Linked_Version(); + std::cout << "SDL2_mixer version: "; + std::cout << int(version->major) << "."; + std::cout << int(version->minor) << "."; + std::cout << int(version->patch) << std::endl; + + int audio_rate = MIX_DEFAULT_FREQUENCY; + int audio_format = MIX_DEFAULT_FORMAT; + int audio_channels = 2; + + if (SDL_Init(SDL_INIT_AUDIO) == 0) { + Mix_Init(MIX_INIT_FLAC | MIX_INIT_MOD | MIX_INIT_MP3 | MIX_INIT_OGG | MIX_INIT_MID | MIX_INIT_OPUS); + + if (Mix_OpenAudio(audio_rate, audio_format, audio_channels, 4096) == 0) { + int num_chunk_decoders = Mix_GetNumChunkDecoders(); + std::cout << "chunk decoders:" << std::endl; + for (int i = 0; i < num_chunk_decoders; ++i) + std::cout << "\t" << Mix_GetChunkDecoder(i) << std::endl; + int num_music_decoders = Mix_GetNumMusicDecoders(); + std::cout << "music decoders:" << std::endl; + for (int i = 0; i < num_music_decoders; ++i) + std::cout << "\t" << Mix_GetMusicDecoder(i) << std::endl; + Mix_CloseAudio(); + Mix_Quit(); + } + } + + return 0; +} diff --git a/recipes/sdl2_mixer/config.yml b/recipes/sdl2_mixer/config.yml new file mode 100644 index 00000000..df70a5c8 --- /dev/null +++ b/recipes/sdl2_mixer/config.yml @@ -0,0 +1,3 @@ +versions: + "2.0.4": + folder: "2.0.4"