From 68758a879e0c8ecc0d40962516d4e808aa4e15e5 Mon Sep 17 00:00:00 2001 From: D G Turner Date: Tue, 17 Dec 2019 04:21:04 +0000 Subject: 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(-) (limited to 'audio/softsynth') diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp index 33a74a1524..f8c2412492 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 + +#include "common/scummsys.h" #include "common/config-manager.h" #include "common/error.h" #include "common/system.h" @@ -35,13 +41,6 @@ #include "backends/platform/ios7/ios7_common.h" #endif -// Fluidsynth v2.1+ uses printf in one of it's headers, so this is -// needed to allow compilation, as reported by eriktorbjorn on 20191215 -// This is in include/fluidsynth/log.h around line 82 -#define FORBIDDEN_SYMBOL_EXCEPTION_printf -#include -#undef FORBIDDEN_SYMBOL_EXCEPTION_printf - class MidiDriver_FluidSynth : public MidiDriver_Emulated { private: MidiChannel_MPU401 _midiChannels[16]; -- cgit v1.2.3