summaryrefslogtreecommitdiff
path: root/devel.hs
diff options
context:
space:
mode:
Diffstat (limited to 'devel.hs')
-rw-r--r--devel.hs17
1 files changed, 12 insertions, 5 deletions
diff --git a/devel.hs b/devel.hs
index 0181215..baf3531 100644
--- a/devel.hs
+++ b/devel.hs
@@ -1,25 +1,32 @@
+{-# LANGUAGE CPP #-}
{-# LANGUAGE PackageImports #-}
import "sflctimekeeper" Application (getApplicationDev)
import Network.Wai.Handler.Warp
- (runSettings, defaultSettings, settingsPort)
+ (runSettings, defaultSettings, setPort)
import Control.Concurrent (forkIO)
import System.Directory (doesFileExist, removeFile)
import System.Exit (exitSuccess)
import Control.Concurrent (threadDelay)
+#ifndef mingw32_HOST_OS
+import System.Posix.Signals (installHandler, sigINT, Handler(Catch))
+#endif
+
main :: IO ()
main = do
+#ifndef mingw32_HOST_OS
+ _ <- installHandler sigINT (Catch $ return ()) Nothing
+#endif
+
putStrLn "Starting devel application"
(port, app) <- getApplicationDev
- forkIO $ runSettings defaultSettings
- { settingsPort = port
- } app
+ forkIO $ runSettings (setPort port defaultSettings) app
loop
loop :: IO ()
loop = do
threadDelay 100000
- e <- doesFileExist "dist/devel-terminate"
+ e <- doesFileExist "yesod-devel/devel-terminate"
if e then terminateDevel else loop
terminateDevel :: IO ()