diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,10 @@
 unix-memory
 ===========
 
+[![Build Status](https://travis-ci.org/vincenthz/hs-unix-memory.png?branch=master)](https://travis-ci.org/vincenthz/hs-unix-memory)
+[![BSD](http://b.repl.ca/v1/license-BSD-blue.png)](http://en.wikipedia.org/wiki/BSD_licenses)
+[![Haskell](http://b.repl.ca/v1/language-haskell-lightgrey.png)](http://haskell.org)
+
 Provide access to lowlevel syscalls for memory mapping. typically mmap, munmap, msync, mlock, mprotect, ..
 
 Documentation: [unix-memory on hackage](http://hackage.haskell.org/package/unix-memory)
diff --git a/System/Posix/Memory.hsc b/System/Posix/Memory.hsc
--- a/System/Posix/Memory.hsc
+++ b/System/Posix/Memory.hsc
@@ -21,19 +21,22 @@
 #include <unistd.h>
 
 {-# LANGUAGE ForeignFunctionInterface #-}
-module System.Posix.Memory (
-    memoryMap,
-    memoryUnmap,
-    memoryAdvise,
-    memoryLock,
-    memoryUnlock,
-    memoryProtect,
-    memorySync,
-    MemoryMapFlag(..),
-    MemoryProtection(..),
-    MemoryAdvice(..),
-    MemorySyncFlag(..),
-    sysconfPageSize
+{-# LANGUAGE CPP #-}
+module System.Posix.Memory
+    ( memoryMap
+    , memoryUnmap
+    , memoryAdvise
+    , memoryLock
+    , memoryUnlock
+    , memoryProtect
+    , memorySync
+    -- * Flags types
+    , MemoryMapFlag(..)
+    , MemoryProtection(..)
+    , MemoryAdvice(..)
+    , MemorySyncFlag(..)
+    -- * system page size
+    , sysconfPageSize
     ) where
 
 import System.Posix.Types
@@ -134,7 +137,11 @@
              .|. maybe 0 (const cMapFixed) initPtr
              .|. toMapFlag flag
 
+#ifdef __APPLE__
+        cMapAnon  = (#const MAP_ANON)
+#else
         cMapAnon  = (#const MAP_ANONYMOUS)
+#endif
         cMapFixed = (#const MAP_FIXED)
 
         toMapFlag MemoryMapShared  = (#const MAP_SHARED)
diff --git a/tests/Tests.hs b/tests/Tests.hs
--- a/tests/Tests.hs
+++ b/tests/Tests.hs
@@ -1,7 +1,8 @@
+{-# LANGUAGE CPP #-}
 module Main where
 
-import Test.Framework (defaultMain, testGroup, Test)
-import Test.Framework.Providers.QuickCheck2 (testProperty)
+import Test.Tasty (defaultMain, testGroup)
+import Test.Tasty.QuickCheck
 
 import Test.QuickCheck.Monadic (monadicIO, run)
 
@@ -34,11 +35,12 @@
                     closeFd
                     g
 
-tests :: [Test]
-tests =
+tests = testGroup "unix-memory"
     [ testProperty "page-size" $ sysconfPageSize > 0 && sysconfPageSize < (2^(20::Int))
     , testGroup "anonymous" $ runTestWithMapping withDummyMapping
+#ifdef __APPLE__
     , testGroup "fd"        $ runTestWithMapping withDevZeroMapping
+#endif
     ]
   where runTestWithMapping mapF =
                 [ testProperty "mmap-munmap" $ monadicIO $ run $ mapF $ \_ -> return True
diff --git a/unix-memory.cabal b/unix-memory.cabal
--- a/unix-memory.cabal
+++ b/unix-memory.cabal
@@ -1,5 +1,5 @@
 Name:                unix-memory
-Version:             0.1.1
+Version:             0.1.2
 Synopsis:            Unix memory syscalls
 Description:         unix memory syscalls (mmap, munmap, madvise, msync, mlock)
 License:             BSD3
@@ -25,11 +25,10 @@
   Main-is:           Tests.hs
   Build-Depends:     base >= 3 && < 5
                    , mtl
-                   , QuickCheck >= 2
-                   , HUnit
-                   , test-framework
-                   , test-framework-quickcheck2
-                   , test-framework-hunit
+                   , tasty
+                   , tasty-hunit
+                   , tasty-quickcheck
+                   , QuickCheck
                    , unix
                    , unix-memory
   ghc-options:       -Wall -fno-warn-orphans -fno-warn-missing-signatures
