diff --git a/iso8601-time.cabal b/iso8601-time.cabal
--- a/iso8601-time.cabal
+++ b/iso8601-time.cabal
@@ -1,5 +1,5 @@
 name:          iso8601-time
-version:       0.1.2
+version:       0.1.3
 license:       MIT
 copyright:     2013 Niklas Hambüchen <mail@nh2.me>
 author:        Niklas Hambüchen <mail@nh2.me>
@@ -20,6 +20,8 @@
   type:      git
   location:  git://github.com/nh2/iso8601-time.git
 
+flag new-time
+  default: True
 
 library
   exposed-modules:
@@ -27,9 +29,17 @@
   hs-source-dirs:
     src
   build-depends:
-      base < 5
-    , old-locale       >= 1.0
+      base             <  5
     , time             >= 1.4
+
+  if flag(new-time)
+    build-depends:
+        time           >= 1.5
+  else
+    build-depends:
+        time           == 1.4.*
+      , old-locale     >= 1.0
+
   ghc-options:
     -Wall
 
diff --git a/src/Data/Time/ISO8601.hs b/src/Data/Time/ISO8601.hs
--- a/src/Data/Time/ISO8601.hs
+++ b/src/Data/Time/ISO8601.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 module Data.Time.ISO8601
   ( formatISO8601
   , formatISO8601Millis
@@ -11,7 +12,11 @@
 
 import Data.Time.Clock (UTCTime)
 import Data.Time.Format (formatTime, parseTime)
+#if MIN_VERSION_time(1,5,0)
+import Data.Time.Format (defaultTimeLocale)
+#else
 import System.Locale (defaultTimeLocale)
+#endif
 import Control.Applicative ((<|>))
 
 
