diff --git a/Crypto/Random/DRBG/HMAC.hs b/Crypto/Random/DRBG/HMAC.hs
--- a/Crypto/Random/DRBG/HMAC.hs
+++ b/Crypto/Random/DRBG/HMAC.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE BangPatterns #-}
+{-# OPTIONS_GHC -Wall     #-}
 module Crypto.Random.DRBG.HMAC
         ( State, counter
         , reseedInterval
@@ -8,14 +9,10 @@
 
 import qualified Data.ByteString as B
 import qualified Data.ByteString.Lazy as L
-import Data.Serialize (encode, Serialize(..))
-import Data.Serialize.Put
-import Data.Serialize.Builder (toByteString)
 import Data.Tagged (proxy)
 import Data.Word (Word64)
 import Crypto.Classes
 import Crypto.HMAC
-import Crypto.Types
 import Crypto.Random.DRBG.Types
 
 type Key = B.ByteString
@@ -34,14 +31,15 @@
 asProxyTypeOf = const
 
 reseedInterval :: Word64
-reseedInterval = 2^48
+reseedInterval = 2^(48::Int)
 
+fc :: B.ByteString -> L.ByteString
 fc = L.fromChunks . \s -> [s]
 
 update :: (Hash c d) => State d -> L.ByteString -> State d
 update st input = st { value = newV , key = newK }
   where
-  hm k = hmac (MacKey k)
+  hm x = hmac (MacKey x)
   k    = key st
   v    = value st
   k'   = encode $ (hm k (L.concat [fc v, L.singleton 0, input]) `asProxyTypeOf` st)
diff --git a/DRBG.cabal b/DRBG.cabal
--- a/DRBG.cabal
+++ b/DRBG.cabal
@@ -1,5 +1,5 @@
 name:           DRBG
-version:        0.5.4
+version:        0.5.5
 license:        BSD3
 license-file:   LICENSE
 author:         Thomas DuBuisson <thomas.dubuisson@gmail.com>
@@ -10,8 +10,8 @@
 category:       Cryptography
 stability:      stable
 build-type:     Simple
-cabal-version:  >= 1.8
-tested-with:    GHC == 6.10.1
+cabal-version:  >= 1.10
+tested-with:    GHC == 7.10.2
 Data-Files: Test/HMAC_DRBG.txt Test/Hash_DRBG.txt Test/CTR_DRBG.txt Test/Dual_EC_DRBG.txt CHANGELOG
 extra-source-files:
   Test/HMAC_DRBG.txt Test/Hash_DRBG.txt Test/CTR_DRBG.txt Test/Dual_EC_DRBG.txt
@@ -21,10 +21,18 @@
   default: False
 
 Library
-  Build-Depends: base >= 4.0 && < 5, cereal >= 0.2,
-                 bytestring, prettyclass, tagged >= 0.7,
-                 crypto-api >= 0.13, cryptohash-cryptoapi >= 0.1,
-                 parallel, mtl >= 2.0, cipher-aes128 >= 0.6, entropy
+  default-language: Haskell2010
+  Build-Depends:   base >= 4.0 && < 5
+                 , cereal >= 0.5 && < 0.6
+                 , bytestring
+                 , prettyclass
+                 , tagged >= 0.7
+                 , crypto-api >= 0.13
+                 , cryptohash-cryptoapi >= 0.1
+                 , parallel
+                 , mtl >= 2.0 && < 2.3
+                 , cipher-aes128 >= 0.6
+                 , entropy
   ghc-options: -O2
   hs-source-dirs:
   exposed-modules: Crypto.Random.DRBG.Hash,
