diff --git a/Data/Time/LocalTime/TimeZone/Series.hs b/Data/Time/LocalTime/TimeZone/Series.hs
--- a/Data/Time/LocalTime/TimeZone/Series.hs
+++ b/Data/Time/LocalTime/TimeZone/Series.hs
@@ -35,6 +35,10 @@
 import Data.Typeable (Typeable)
 import Control.Arrow (first)
 
+-- Conditional import, depending on whether time library is pre-1.6 or
+-- post-1.6, controlled by cabal flag:
+import Data.Time.LocalTime.TimeZone.Internal.MapBuiltTime (mapBuiltTime)
+
 -- $abouttzs
 -- A @TimeZoneSeries@ describes a timezone with a set of 'TimeZone'
 -- objects. Each @TimeZone@ object describes the clock setting in the
@@ -77,7 +81,7 @@
     readsPrec n = map (first $ flip TimeZoneSeries []) . readsPrec n
 
 instance ParseTime TimeZoneSeries where
-  buildTime locale = flip TimeZoneSeries [] . buildTime locale
+  buildTime locale = mapBuiltTime (flip TimeZoneSeries []) . buildTime locale
 
 -- | The latest non-summer @TimeZone@ in a @TimeZoneSeries@ is in some
 -- sense representative of the timezone.
@@ -167,7 +171,7 @@
     readsPrec n = map (first zonedTimeToZoneSeriesTime) . readsPrec n
 
 instance ParseTime ZoneSeriesTime where
-  buildTime locale = zonedTimeToZoneSeriesTime . buildTime locale
+  buildTime locale = mapBuiltTime zonedTimeToZoneSeriesTime . buildTime locale
 
 instance FormatTime ZoneSeriesTime where
   formatCharacter =
diff --git a/time_pre_1_6/Data/Time/LocalTime/TimeZone/Internal/MapBuiltTime.hs b/time_pre_1_6/Data/Time/LocalTime/TimeZone/Internal/MapBuiltTime.hs
new file mode 100644
--- /dev/null
+++ b/time_pre_1_6/Data/Time/LocalTime/TimeZone/Internal/MapBuiltTime.hs
@@ -0,0 +1,11 @@
+-- | Specify the mapping function for 'buildTime'.
+
+module Data.Time.LocalTime.TimeZone.Internal.MapBuiltTime
+(
+  mapBuiltTime
+)
+where
+
+-- | No mapping needed for 'buildTime' for pre-1.6 time library.
+mapBuiltTime :: a -> a
+mapBuiltTime = id
diff --git a/timezone-series.cabal b/timezone-series.cabal
--- a/timezone-series.cabal
+++ b/timezone-series.cabal
@@ -1,5 +1,5 @@
 Name:                timezone-series
-Version:             0.1.5.1
+Version:             0.1.6
 Synopsis:            Enhanced timezone handling for Data.Time
 Description:         This package endows Data.Time, from the time
                      package, with several data types and functions
@@ -23,9 +23,22 @@
   type:              git
   location:          https://github.com/ygale/timezone-series.git
 
+Flag time_pre_1_6
+  Description:       Use version < 1.6 of the time library
+  Default:           False
+
 Library
   Default-language:    Haskell2010
+  Hs-source-dirs:      .
+  if flag(time_pre_1_6)
+    Hs-source-dirs:    time_pre_1_6
+  else
+    Hs-source-dirs:    time_post_1_6
   Exposed-modules:     Data.Time.LocalTime.TimeZone.Series
+  Other-modules:       Data.Time.LocalTime.TimeZone.Internal.MapBuiltTime
   Default-extensions:  DeriveDataTypeable
-  Build-depends:       base >= 4.4 && < 5,
-                       time >= 1.1.4 && < 1.6
+  Build-depends:       base >= 4.4 && < 5
+  if flag(time_pre_1_6)
+    Build-depends:     time >= 1.1.4 && < 1.6
+  else
+    Build-depends:     time >= 1.6 && < 1.7
