DEADSOFTWARE

osx: fix library linking
[d2df-sdl.git] / src / lib / sdl2 / sdl2.pas
index 4f1dfcaa0ac320d8801649d1d2331a6a67d9a867..a879c2d86404a54000a5c339e3b46f4a8b86ce91 100644 (file)
@@ -1,3 +1,4 @@
+{$MODE DELPHI}
 unit SDL2;
 
 {
@@ -136,16 +137,16 @@ interface
       Windows;
   {$ENDIF}
 
-  {$IFDEF LINUX}
-    uses
-      X,
-      XLib;
+  {$IF DEFINED(UNIX)}
+    {$IF NOT DEFINED(HAIKU) AND NOT DEFINED(ANDROID) AND NOT DEFINED(DARWIN)}
+      uses
+        X,
+        XLib;
+    {$ENDIF}
   {$ENDIF}
-  
+
   {$IFDEF DARWIN}
     uses
-      X,
-      XLib,
       CocoaAll;
   {$ENDIF}
 
@@ -155,8 +156,11 @@ const
     SDL_LibName = 'SDL2.dll';
   {$ENDIF}
 
-  {$IFDEF UNIX}
+  {$IF DEFINED(HAIKU)}
+    SDL_LibName = 'libSDL2.so.0';
+  {$ELSEIF DEFINED(UNIX)}
     {$IFDEF DARWIN}
+      {$LINKLIB libSDL2}
       SDL_LibName = 'libSDL2.dylib';
     {$ELSE}
       {$IFDEF FPC}
@@ -209,6 +213,7 @@ const
 {$I sdlfilesystem.inc}
 {$I sdllog.inc}
 {$I sdlsystem.inc}
+{$I sdlstdinc.inc}
 {$I sdl.inc}
 
 implementation
@@ -241,7 +246,7 @@ end;
 //from "sdl_mouse.h"
 function SDL_Button(button: SInt32): SInt32;
 begin
-  Result := 1 shl (button - 1); 
+  Result := 1 shl (button - 1);
 end;
 
 {$IFDEF WINDOWS}
@@ -303,7 +308,7 @@ function SDL_LoadWAV(_file: PAnsiChar; spec: PSDL_AudioSpec; audio_buf: PPUInt8;
 begin
   Result := SDL_LoadWAV_RW(SDL_RWFromFile(_file, 'rb'), 1, spec, audio_buf, audio_len);
 end;
-  
+
 function SDL_AUDIO_BITSIZE(x: Cardinal): Cardinal;
 begin
   Result := x and SDL_AUDIO_MASK_BITSIZE;