summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJasper Van der Jeugt <m@jaspervdj.be>2014-05-09 11:51:12 +0200
committerJasper Van der Jeugt <m@jaspervdj.be>2014-05-09 11:51:12 +0200
commit0639a73c24508a93e422d97d126d8ec261ecb77e (patch)
tree6334f952e035b6db437f9240aea89748764dcc70 /src
parent8229765cbdf971c15e18fc8eb5a5733340b57739 (diff)
parent43c2aeae54253157725c6a58318fff9f2776f108 (diff)
downloadhakyll-0639a73c24508a93e422d97d126d8ec261ecb77e.tar.gz
Merge branch 'master' of github.com:jaspervdj/hakyll
Diffstat (limited to 'src')
-rw-r--r--src/Hakyll/Core/UnixFilter.hs19
-rw-r--r--src/Hakyll/Web/Html.hs1
2 files changed, 12 insertions, 8 deletions
diff --git a/src/Hakyll/Core/UnixFilter.hs b/src/Hakyll/Core/UnixFilter.hs
index fd3c335..edc8eac 100644
--- a/src/Hakyll/Core/UnixFilter.hs
+++ b/src/Hakyll/Core/UnixFilter.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE CPP #-}
+
--------------------------------------------------------------------------------
-- | A Compiler that supports unix filters.
module Hakyll.Core.UnixFilter
@@ -19,7 +21,6 @@ import System.Exit (ExitCode (..))
import System.IO (Handle, hClose, hFlush, hGetContents,
hPutStr, hSetEncoding, localeEncoding)
import System.Process
-import qualified System.Info as System
--------------------------------------------------------------------------------
import Hakyll.Core.Compiler
@@ -105,17 +106,19 @@ unixFilterIO :: Monoid o
-> i
-> IO (o, String, ExitCode)
unixFilterIO writer reader programName args input = do
- -- The problem on Windows is that `proc` is that it is unable to execute
+ -- The problem on Windows is that `proc` is unable to execute
-- batch stubs (eg. anything created using 'gem install ...') even if its in
-- `$PATH`. A solution to this issue is to execute the batch file explicitly
-- using `cmd /c batchfile` but there is no rational way to know where said
-- batchfile is on the system. Hence, we detect windows using the
- -- `System.Info` module and then instead of using `proc` to create the
- -- process, use `shell` instead which will be able to execute everything
- -- `proc` can, and this can deal with batch files as well.
- let pr = if System.os == "mingw32"
- then shell $ unwords (programName : args)
- else proc programName args
+ -- CPP and instead of using `proc` to create the process, use `shell`
+ -- which will be able to execute everything `proc` can
+ -- as well as batch files.
+#ifdef mingw32_HOST_OS
+ let pr = shell $ unwords (programName : args)
+#else
+ let pr = proc programName args
+#endif
(Just inh, Just outh, Just errh, pid) <-
createProcess pr
diff --git a/src/Hakyll/Web/Html.hs b/src/Hakyll/Web/Html.hs
index f5a7ccc..f29a478 100644
--- a/src/Hakyll/Web/Html.hs
+++ b/src/Hakyll/Web/Html.hs
@@ -124,6 +124,7 @@ toSiteRoot = emptyException . joinPath . map parent
emptyException x = x
relevant "." = False
relevant "/" = False
+ relevant "./" = False
relevant _ = True