packages feed

al 0.1.0.3 → 0.1.1

raw patch · 3 files changed

+22/−7 lines, 3 files

Files

CHANGELOG.md view
@@ -1,3 +1,8 @@+## 0.1.1++- Fixed linker issues.+- Added flag to select stdcall.+ ## 0.1.0.3  - Fixed alcOpenDevice.
al.cabal view
@@ -1,5 +1,5 @@ name:                al
-version:             0.1.0.3
+version:             0.1.1
 synopsis:            OpenAL 1.1 raw API.
 description:         __OpenAL__ is a minimalistic sound API that aims to provide
                      bare features for /spacialized audio/. The API looks like
@@ -38,19 +38,29 @@   type:     git
   location: git://github.com/phaazon/al.git
 
+flag stdcall {
+  description: Use the @stdcall@ call convention
+  default: False
+}
+
 library
   ghc-options:         -W -Wall -O2
 
+  if flag(stdcall)
+    cpp-options:       -DCALLCV=stdcall
+  else
+    cpp-options:       -DCALLCV=ccall
+
   if os(windows)
-    extra-lib-dirs:    "C:\\Program Files (x86)\\OpenAL 1.1 SDK\\libs"
     include-dirs:      "C:\\Program Files (x86)\\OpenAL 1.1 SDK\\include"
+    extra-libraries:   OpenAL32
 
     if arch(i386)
-      cpp-options:     -DCALLCV=stdcall
+      extra-lib-dirs:  "C:\\Program Files (x86)\\OpenAL 1.1 SDK\\libs\\Win32"
     else
-      cpp-options:     -DCALLCV=ccall
+      extra-lib-dirs:  "C:\\Program Files (x86)\\OpenAL 1.1 SDK\\libs\\Win64"
   else
-    cpp-options:       -DCALLCV=ccall
+    extra-libraries:   openal
 
   build-tools:         c2hs >= 0.23 && < 0.24
 
src/Sound/ALC/Device.chs view
@@ -15,5 +15,5 @@ import Sound.AL.Types import Sound.ALC.Types -foreign import CALLCV "alcOpenDevice" alcOpenDevice :: Ptr ALubyte -> IO (Ptr ALCdevice)-foreign import CALLCV "alcCloseDevice" alcCloseDevice :: Ptr ALCdevice -> IO ()+foreign import CALLCV alcOpenDevice :: Ptr ALubyte -> IO (Ptr ALCdevice)+foreign import CALLCV alcCloseDevice :: Ptr ALCdevice -> IO ()