DEADSOFTWARE

osx: fix library linking
[d2df-sdl.git] / src / lib / fluidsynth / fluidsynth.pas
index 84b95861025936ed4ed4c5a89b137e74e3ace87f..37a610e34470947b4a410125a1f62c10beaf16e1 100644 (file)
@@ -11,28 +11,25 @@ uses
 {$PACKRECORDS C}
 {$ENDIF}
 
-{$IF 0}
-  {$IFNDEF LIBFLUIDSYNTH_WINDOZE_STATIC}
+{$IF DEFINED(WINDOWS)}
+  {$IFDEF FLUIDSYNTH_WINDOZE_STATIC}
+    {$LINKLIB libfluidsynth.a}
+  {$ELSE}
     {$DEFINE FS_DYNAMIC}
+    const fluidlib = 'libfluidsynth.dll';
   {$ENDIF}
-{$ENDIF}
-
-{$IF DEFINED(FS_DYNAMIC)}
-const
-{$IF DEFINED(WINDOWS)}
-  fluidlib = 'libfluidsynth.dll';
 {$ELSEIF DEFINED(UNIX)}
-  fluidlib = 'libfluidsynth.so';
-{$ELSE}
-  {$MESSAGE ERROR 'FLUIDSYNTH_DYNAMIC not supported'}
-{$IFEND}
+  {$DEFINE FS_DYNAMIC}
+  {$LINKLIB libfluidsynth}
+  const fluidlib = 'libfluidsynth.so';
 {$ELSE}
-  {$LINKLIB libfluidsynth.a}
+  {$ERROR fluidsynth not supported on this platform. Fix it!}
 {$ENDIF}
 
 const
   FLUID_OK = 0;
   FLUID_FAILED = -1;
+  FLUID_PLAYER_DONE = 2;
 
 type
   pfluid_settings_t = pointer;
@@ -58,6 +55,7 @@ function new_fluid_synth(settings: pfluid_settings_t): pfluid_synth_t; cdecl; ex
 function delete_fluid_synth(synth: pfluid_synth_t): cint; cdecl; external {$IFDEF FS_DYNAMIC}fluidlib{$ENDIF};
 function fluid_synth_get_settings(synth: pfluid_synth_t): pfluid_settings_t; cdecl; external {$IFDEF FS_DYNAMIC}fluidlib{$ENDIF};
 function fluid_synth_sfload(synth: pfluid_synth_t; fname: pchar; reset: cint): cint; cdecl; external {$IFDEF FS_DYNAMIC}fluidlib{$ENDIF};
+function fluid_synth_system_reset(synth: pfluid_synth_t): cint; cdecl; external {$IFDEF FS_DYNAMIC}fluidlib{$ENDIF};
 
 function fluid_synth_write_s16(synth: pfluid_synth_t; len: cint; lout: pointer; loff, linc: cint; rout: pointer; roff, rinc: cint): cint; cdecl; external {$IFDEF FS_DYNAMIC}fluidlib{$ENDIF};