diff options
Diffstat (limited to 'games-engines/scummvm')
-rw-r--r-- | games-engines/scummvm/Manifest | 6 | ||||
-rw-r--r-- | games-engines/scummvm/files/scummvm-2.1.0-fluidsynth.patch | 39 | ||||
-rw-r--r-- | games-engines/scummvm/files/scummvm-2.2.0-fluidsynth-2.2.patch | 150 | ||||
-rw-r--r-- | games-engines/scummvm/scummvm-2.1.2.ebuild | 110 | ||||
-rw-r--r-- | games-engines/scummvm/scummvm-2.2.0-r1.ebuild (renamed from games-engines/scummvm/scummvm-2.2.0.ebuild) | 5 |
5 files changed, 155 insertions, 155 deletions
diff --git a/games-engines/scummvm/Manifest b/games-engines/scummvm/Manifest index 050768d4b0f0..c0f530bc217a 100644 --- a/games-engines/scummvm/Manifest +++ b/games-engines/scummvm/Manifest @@ -1,8 +1,6 @@ -AUX scummvm-2.1.0-fluidsynth.patch 1393 BLAKE2B 080c704d493d21f0e5e4387bba0bf1a2354aaccf0e96b7383f956ef89eb973cf0cdf9f60a922a8e7bd25e520a6922a1879cc5614b42731c610c2c7da64033cad SHA512 6e577087ad6d67ee45d488c762ea41d4899001a31730c47cdf263619cc079e0abd3871aa8f947f681b6d59d76094c0278bd4ed8c2439ccc4d700aa32f860c318 +AUX scummvm-2.2.0-fluidsynth-2.2.patch 5627 BLAKE2B 42a4d2bc56ffb9f13bce8de4af27511e0603ce8abcc17fa8ca2501e1e0fd464bdc57b2b81c7b98ca9a7d57149d1d848de1986127e7f777a8673d0f83f67b7f08 SHA512 b69d7fc1d14ea4f4cdbb0105d294b00f5f0248b8d37920cac8e11c54ee3ef1636dbde2f304d6e1b5c924aa1a8714697f2d3f8583c588961c0ff7162ba5d67c71 AUX scummvm-2.2.0-ultima_engine_lua_dep.patch 785 BLAKE2B 73c9ef3272ce9c71d1575775a966ff38b8369ab6cb68b3ce17353dc4b0ba7590020f7288451cfe5cb2ee94ccacfa33da1ca02389d82bcc8d8570e4f2139aaa58 SHA512 bb1e67955834b8e0544e58258f31e5fe8ba0e4ec701426cad6c032714708ce6928698de42b8a3ba7b1c0bb0eda87c6fd87c5162e396595956e70df0aa5beaac1 -DIST scummvm-2.1.2.tar.xz 27056972 BLAKE2B 0afedd27350ea80c3610106b7e09fd57aaebc8847eebdb180628559ca30f49d005a5466bd3991a76271eff39a782e8abf3bf1a3ace25909a1d9947a1b539d6c2 SHA512 a6462bc55d90a229e32389380504d6ecf0c836c8a6733775c993f8db34918ef1f9d0559acc7c110e98719b32cf84408a01021dcfa3fe5a821fe4265c1bc49ecc DIST scummvm-2.2.0.tar.xz 63652348 BLAKE2B b44a07d7ad6747b136465f81122464f02e5cc655c205d6f4424555311563f8ceaa8072972d05512af85d18fabba78d5ea9396ea314581776c1ef8d88ca6ab81b SHA512 001f884b9689386ef5b69ab8f5fa2362e1e4dc5e8273f96dc8dce1963be354a2fad95e724ff33d65008be7591519f0e2bac530ba3c44a449b8b7cac862f4f81e -EBUILD scummvm-2.1.2.ebuild 2789 BLAKE2B 5b7cb6a8ae1f1fc3bc29d68ea541b4257ea4d22f2467b2e9a3054e463742dc089d0e8d4d0d721c56387ba8963edcb43dedf098d99ce7fa81491d1d61a0f5f7bc SHA512 cd0d059b6fed3c9cca2583f825a2c9bdc60fb96e00e82763e017a1d642558b3d30cdeb3a03f2bb1d27103fae09c57edaae4ebb38c40a012da4612012a463d32e -EBUILD scummvm-2.2.0.ebuild 3012 BLAKE2B 35bc1755871d55348a3195ad998ad0c9dbcd1bac4fe8b0b52c940dbb7dbb15a8b576911f7e3780e411e42cc1dd5e4391868e223cd63f971771772c90f9e34963 SHA512 e1356c00c95363345c7254709a62cc891fcc94db7939af9e58d2655d384e41d492a392f2bd2a8d5af81ac438d0cf330814ecdc92badc2f94bf17bfa28f762bdc +EBUILD scummvm-2.2.0-r1.ebuild 3055 BLAKE2B f0c889a16fad8891ce657b71f5b00e85f263c94d3adfc256720e9512b188a33bf6236dee7e0407db1c2620e5f90ab20d04d0c581120c303a0cd8f55856648cf3 SHA512 615e638aeb605b8386721d45a9564072ecf287942fedc750649149f4be319901ea60f495c8ec5cc9012cf6b275ff64a6efce7f4b8d8df558f46e48271fd0823c EBUILD scummvm-9999.ebuild 2995 BLAKE2B 1a484a278b024fe7a2ac4210f3a18b4a860c5c66ef313c2855b2dfce328c74dd507278042998e0503830851045ea86664d1d106175dfedb0422acd5c66a3feef SHA512 7417b5169f5b3b2e818749940b55bea092888bd216e960bbe76e33f1cb9c4a6278fbb8f431f1b1caefb1b60e0faf7c997bcf63edd5743049a231c413aa351d1d MISC metadata.xml 1119 BLAKE2B 69d76e676244d618d769418d210acc4a705ef155215ced601bd1cb7075faf99789f9d771d8333d13a7e62f54846a31f14c4b4f00860a0927f2593ae2786e7cfd SHA512 41dc677a597ced02d76ea1610ad1e7a68cfba4c9622d2e9144eea61574752fbd7958ea7452c3213685c34ea89d24631adc96a93991bd27f32bf29677be31787d diff --git a/games-engines/scummvm/files/scummvm-2.1.0-fluidsynth.patch b/games-engines/scummvm/files/scummvm-2.1.0-fluidsynth.patch deleted file mode 100644 index 6b4760e16dda..000000000000 --- a/games-engines/scummvm/files/scummvm-2.1.0-fluidsynth.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 68758a879e0c8ecc0d40962516d4e808aa4e15e5 Mon Sep 17 00:00:00 2001 -From: D G Turner <digitall@scummvm.org> -Date: Tue, 17 Dec 2019 04:21:04 +0000 -Subject: [PATCH] AUDIO: Really Fix Compilation Against Fluidsynth v2.1+ - -The previous fix did not work as the forbidden exception had no effect -since scummsys.h and thus forbidden.h had already been included prior -to the fluidsynth header being included. This also meant that undefining -the exception define after the header would have had no effect anyway. - -This new solution was suggest by eriktorbjorn on bug #11278 and should -avoid the need to add an exception which would persist over the entire -source file. ---- - audio/softsynth/fluidsynth.cpp | 15 +++++++-------- - 1 file changed, 7 insertions(+), 8 deletions(-) - -diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp -index 33a74a15247..f8c2412492e 100644 ---- a/audio/softsynth/fluidsynth.cpp -+++ b/audio/softsynth/fluidsynth.cpp -@@ -20,10 +20,16 @@ - * - */ - --#include "common/scummsys.h" -+#include "config.h" - - #ifdef USE_FLUIDSYNTH - -+// Fluidsynth v2.1+ uses printf in one of it's headers, -+// include/fluidsynth/log.h around line 82 so need to include this -+// prior scummsys.h inclusion and thus forbidden.h -+#include <fluidsynth.h> -+ -+#include "common/scummsys.h" - #include "common/config-manager.h" - #include "common/error.h" - #include "common/system.h" diff --git a/games-engines/scummvm/files/scummvm-2.2.0-fluidsynth-2.2.patch b/games-engines/scummvm/files/scummvm-2.2.0-fluidsynth-2.2.patch new file mode 100644 index 000000000000..8bb94ec6ab6e --- /dev/null +++ b/games-engines/scummvm/files/scummvm-2.2.0-fluidsynth-2.2.patch @@ -0,0 +1,150 @@ +diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp +index e0d7c4e3df..d8e82c24f5 100644 +--- a/audio/softsynth/fluidsynth.cpp ++++ b/audio/softsynth/fluidsynth.cpp +@@ -46,6 +46,14 @@ + #include "backends/platform/ios7/ios7_common.h" + #endif + ++// We assume here Fluidsynth minor will never be above 255 and ++// that micro versions won't break API compatibility ++#if defined(FLUIDSYNTH_VERSION_MAJOR) && defined(FLUIDSYNTH_VERSION_MINOR) ++#define FS_API_VERSION ((FLUIDSYNTH_VERSION_MAJOR << 8) | FLUIDSYNTH_VERSION_MINOR) ++#else ++#define FS_API_VERSION 0 ++#endif ++ + class MidiDriver_FluidSynth : public MidiDriver_Emulated { + private: + MidiChannel_MPU401 _midiChannels[16]; +@@ -75,7 +83,7 @@ public: + + void setEngineSoundFont(Common::SeekableReadStream *soundFontData) override; + bool acceptsSoundFontData() override { +-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1 ++#if FS_API_VERSION >= 0x0200 + return true; + #else + return false; +@@ -134,7 +142,7 @@ void MidiDriver_FluidSynth::setStr(const char *name, const char *val) { + + // Soundfont memory loader callback functions. + +-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1 ++#if FS_API_VERSION >= 0x0200 + static void *SoundFontMemLoader_open(const char *filename) { + void *p; + if (filename[0] != '&') { +@@ -144,11 +152,19 @@ static void *SoundFontMemLoader_open(const char *filename) { + return p; + } + ++#if FS_API_VERSION >= 0x0202 ++static int SoundFontMemLoader_read(void *buf, fluid_long_long_t count, void *handle) { ++#else + static int SoundFontMemLoader_read(void *buf, int count, void *handle) { ++#endif + return ((Common::SeekableReadStream *) handle)->read(buf, count) == (uint32)count ? FLUID_OK : FLUID_FAILED; + } + ++#if FS_API_VERSION >= 0x0202 ++static int SoundFontMemLoader_seek(void *handle, fluid_long_long_t offset, int origin) { ++#else + static int SoundFontMemLoader_seek(void *handle, long offset, int origin) { ++#endif + return ((Common::SeekableReadStream *) handle)->seek(offset, origin) ? FLUID_OK : FLUID_FAILED; + } + +@@ -157,7 +173,11 @@ static int SoundFontMemLoader_close(void *handle) { + return FLUID_OK; + } + ++#if FS_API_VERSION >= 0x0202 ++static fluid_long_long_t SoundFontMemLoader_tell(void *handle) { ++#else + static long SoundFontMemLoader_tell(void *handle) { ++#endif + return ((Common::SeekableReadStream *) handle)->pos(); + } + #endif +@@ -166,7 +186,8 @@ int MidiDriver_FluidSynth::open() { + if (_isOpen) + return MERR_ALREADY_OPEN; + +-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1 ++ ++#if FS_API_VERSION >= 0x0200 + // When provided with in-memory SoundFont data, only use the configured + // SoundFont instead if it's explicitly configured on the current game. + bool isUsingInMemorySoundFontData = _engineSoundFontData && !ConfMan.getActiveDomain()->contains("soundfont"); +@@ -195,7 +216,11 @@ int MidiDriver_FluidSynth::open() { + _synth = new_fluid_synth(_settings); + + if (ConfMan.getBool("fluidsynth_chorus_activate")) { ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_chorus_on(_synth, -1, 1); ++#else + fluid_synth_set_chorus_on(_synth, 1); ++#endif + + int chorusNr = ConfMan.getInt("fluidsynth_chorus_nr"); + double chorusLevel = (double)ConfMan.getInt("fluidsynth_chorus_level") / 100.0; +@@ -210,22 +235,49 @@ int MidiDriver_FluidSynth::open() { + chorusType = FLUID_CHORUS_MOD_TRIANGLE; + } + ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_set_chorus_group_nr(_synth, -1, chorusNr); ++ fluid_synth_set_chorus_group_level(_synth, -1, chorusLevel); ++ fluid_synth_set_chorus_group_speed(_synth, -1, chorusSpeed); ++ fluid_synth_set_chorus_group_depth(_synth, -1, chorusDepthMs); ++ fluid_synth_set_chorus_group_type(_synth, -1, chorusType); ++#else + fluid_synth_set_chorus(_synth, chorusNr, chorusLevel, chorusSpeed, chorusDepthMs, chorusType); ++#endif + } else { ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_chorus_on(_synth, -1, 0); ++#else + fluid_synth_set_chorus_on(_synth, 0); ++#endif + } + + if (ConfMan.getBool("fluidsynth_reverb_activate")) { ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_reverb_on(_synth, -1, 1); ++#else + fluid_synth_set_reverb_on(_synth, 1); ++#endif + + double reverbRoomSize = (double)ConfMan.getInt("fluidsynth_reverb_roomsize") / 100.0; + double reverbDamping = (double)ConfMan.getInt("fluidsynth_reverb_damping") / 100.0; + int reverbWidth = ConfMan.getInt("fluidsynth_reverb_width"); + double reverbLevel = (double)ConfMan.getInt("fluidsynth_reverb_level") / 100.0; + ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_set_reverb_group_roomsize(_synth, -1, reverbRoomSize); ++ fluid_synth_set_reverb_group_damp(_synth, -1, reverbDamping); ++ fluid_synth_set_reverb_group_width(_synth, -1, reverbWidth); ++ fluid_synth_set_reverb_group_level(_synth, -1, reverbLevel); ++#else + fluid_synth_set_reverb(_synth, reverbRoomSize, reverbDamping, reverbWidth, reverbLevel); ++#endif + } else { ++#if FS_API_VERSION >= 0x0202 ++ fluid_synth_reverb_on(_synth, -1, 0); ++#else + fluid_synth_set_reverb_on(_synth, 0); ++#endif + } + + Common::String interpolation = ConfMan.get("fluidsynth_misc_interpolation"); +@@ -246,7 +298,7 @@ int MidiDriver_FluidSynth::open() { + const char *soundfont = !isUsingInMemorySoundFontData ? + ConfMan.get("soundfont").c_str() : Common::String::format("&%p", (void *)_engineSoundFontData).c_str(); + +-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1 ++#if FS_API_VERSION >= 0x0200 + if (isUsingInMemorySoundFontData) { + fluid_sfloader_t *soundFontMemoryLoader = new_fluid_defsfloader(_settings); + fluid_sfloader_set_callbacks(soundFontMemoryLoader, diff --git a/games-engines/scummvm/scummvm-2.1.2.ebuild b/games-engines/scummvm/scummvm-2.1.2.ebuild deleted file mode 100644 index 5f7022f10551..000000000000 --- a/games-engines/scummvm/scummvm-2.1.2.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit desktop flag-o-matic toolchain-funcs xdg - -DESCRIPTION="Reimplementation of the SCUMM game engine used in Lucasarts adventures" -HOMEPAGE="https://www.scummvm.org/" -SRC_URI="https://scummvm.org/frs/scummvm/${PV}/${P}.tar.xz" - -LICENSE="GPL-2+ LGPL-2.1 BSD GPL-3-with-font-exception" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86" -IUSE="a52 aac alsa debug flac fluidsynth jpeg lua mpeg2 mp3 net opengl png speech theora truetype unsupported vorbis zlib" -RESTRICT="test" # it only looks like there's a test there #77507 - -RDEPEND=" - >=media-libs/libsdl2-2.0.0[sound,joystick,video] - a52? ( media-libs/a52dec ) - aac? ( media-libs/faad2 ) - alsa? ( media-libs/alsa-lib ) - flac? ( media-libs/flac ) - fluidsynth? ( media-sound/fluidsynth ) - jpeg? ( virtual/jpeg:0 ) - mp3? ( media-libs/libmad ) - mpeg2? ( media-libs/libmpeg2 ) - net? ( media-libs/sdl2-net ) - opengl? ( || ( virtual/opengl media-libs/mesa[gles2] media-libs/mesa[gles1] ) ) - png? ( media-libs/libpng:0 ) - speech? ( app-accessibility/speech-dispatcher ) - truetype? ( media-libs/freetype:2 ) - theora? ( media-libs/libtheora ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - zlib? ( sys-libs/zlib:= ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-arch/xz-utils - truetype? ( virtual/pkgconfig ) - x86? ( dev-lang/nasm ) -" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}/${PN}-2.1.0-fluidsynth.patch" -) - -src_prepare() { - xdg_src_prepare - - # -g isn't needed for nasm here - sed -i \ - -e '/NASMFLAGS/ s/-g//' \ - configure || die - sed -i \ - -e '/INSTALL.*doc/d' \ - -e '/INSTALL.*\/pixmaps/d' \ - -e 's/-s //' \ - ports.mk || die -} - -src_configure() { - use x86 && append-ldflags -Wl,-z,noexecstack - - local myconf=( - --backend=sdl - --host=${CHOST} - --enable-verbose-build - --prefix="${EPREFIX}/usr" - --libdir="${EPREFIX}/usr/$(get_libdir)" - --opengl-mode=$(usex opengl auto none) - $(use_enable a52) - $(use_enable aac faad) - $(use_enable alsa) - $(use_enable debug) - $(use_enable !debug release-mode) - $(use_enable flac) - $(usex fluidsynth '' --disable-fluidsynth) - $(use_enable jpeg) - $(use_enable lua) - $(use_enable mp3 mad) - $(use_enable mpeg2) - $(use_enable net sdlnet) - $(use_enable png) - $(use_enable speech tts) - $(use_enable theora theoradec) - $(use_enable truetype freetype2) - $(usex unsupported --enable-all-engines '') - $(use_enable vorbis) - $(use_enable zlib) - $(use_enable x86 nasm) - ) - echo "configure ${myconf[@]}" - # NOT AN AUTOCONF SCRIPT SO DONT CALL ECONF - SDL_CONFIG="sdl2-config" \ - ./configure "${myconf[@]}" "${EXTRA_ECONF}" || die -} - -src_compile() { - emake AR="$(tc-getAR) cru" RANLIB="$(tc-getRANLIB)" -} - -src_install() { - default - doicon -s scalable icons/scummvm.svg -} diff --git a/games-engines/scummvm/scummvm-2.2.0.ebuild b/games-engines/scummvm/scummvm-2.2.0-r1.ebuild index 93e50eddec4f..f4ab2f0515e9 100644 --- a/games-engines/scummvm/scummvm-2.2.0.ebuild +++ b/games-engines/scummvm/scummvm-2.2.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -20,7 +20,7 @@ RDEPEND=" aac? ( media-libs/faad2 ) alsa? ( media-libs/alsa-lib ) flac? ( media-libs/flac ) - fluidsynth? ( media-sound/fluidsynth ) + fluidsynth? ( media-sound/fluidsynth:= ) fribidi? ( dev-libs/fribidi ) gtk? ( dev-libs/glib:2 @@ -56,6 +56,7 @@ S="${WORKDIR}/${P/_/}" PATCHES=( "${FILESDIR}/${P}-ultima_engine_lua_dep.patch" + "${FILESDIR}/${P}-fluidsynth-2.2.patch" ) src_prepare() { |