diff --git a/rwlock.cabal b/rwlock.cabal
--- a/rwlock.cabal
+++ b/rwlock.cabal
@@ -1,5 +1,5 @@
 name:                   rwlock
-version:                0.0.0.1
+version:                0.0.0.2
 stability:              provisional
 
 cabal-version:          >= 1.2
@@ -15,7 +15,13 @@
 description:            A simple implementation of a multiple-reader / single-writer
                         lock, using STM.
 
+flag base4
+
 Library
   hs-source-dirs:       src
   exposed-modules:      Control.Concurrent.RWLock
-  build-depends:        base >= 3 && <5, monad-loops, stm
+  build-depends:        monad-loops, stm
+  if flag(base4)
+    build-depends:      base >= 4 && <5, syb
+  else
+    build-depends:      base >= 3 && <4
