aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pandoc.cabal4
-rw-r--r--src/Text/Pandoc/Compat/Directory.hs21
-rw-r--r--src/Text/Pandoc/Readers/Txt2Tags.hs2
3 files changed, 25 insertions, 2 deletions
diff --git a/pandoc.cabal b/pandoc.cabal
index 933d9a467..6597b27ed 100644
--- a/pandoc.cabal
+++ b/pandoc.cabal
@@ -235,7 +235,8 @@ Library
hslua >= 0.3 && < 0.4,
binary >= 0.5 && < 0.8,
SHA >= 1.6 && < 1.7,
- haddock-library >= 1.1 && < 1.2
+ haddock-library >= 1.1 && < 1.2,
+ old-time
if flag(https)
Build-Depends: http-client >= 0.3.2 && < 0.4,
http-client-tls >= 0.2 && < 0.3,
@@ -319,6 +320,7 @@ Library
Text.Pandoc.Compat.Monoid,
Text.Pandoc.Compat.Except,
Text.Pandoc.Compat.TagSoupEntity,
+ Text.Pandoc.Compat.Directory
Paths_pandoc
Buildable: True
diff --git a/src/Text/Pandoc/Compat/Directory.hs b/src/Text/Pandoc/Compat/Directory.hs
new file mode 100644
index 000000000..61dd5c525
--- /dev/null
+++ b/src/Text/Pandoc/Compat/Directory.hs
@@ -0,0 +1,21 @@
+{-# LANGUAGE CPP #-}
+module Text.Pandoc.Compat.Directory ( getModificationTime )
+ where
+
+#if MIN_VERSION_directory(1,2,0)
+import System.Directory
+
+
+#else
+import qualified System.Directory as S
+import Data.Time.Clock (UTCTime)
+import Data.Time.Clock.POSIX
+import System.Time
+
+getModificationTime :: FilePath -> IO UTCTime
+getModificationTime fp = convert `fmap` S.getModificationTime fp
+ where
+ convert (TOD x _) = posixSecondsToUTCTime (realToFrac x)
+
+#endif
+
diff --git a/src/Text/Pandoc/Readers/Txt2Tags.hs b/src/Text/Pandoc/Readers/Txt2Tags.hs
index 4358314cb..8d8af309e 100644
--- a/src/Text/Pandoc/Readers/Txt2Tags.hs
+++ b/src/Text/Pandoc/Readers/Txt2Tags.hs
@@ -50,7 +50,7 @@ import Data.Default
import Control.Monad.Reader (Reader, runReader, asks)
import Data.Time.LocalTime (getZonedTime)
-import System.Directory (getModificationTime)
+import Text.Pandoc.Compat.Directory(getModificationTime)
import Data.Time.Format (formatTime)
import System.Locale (defaultTimeLocale)
import System.IO.Error (catchIOError)