compilation fixes
[intricacy.git] / Intricacy.hs
blob6ed1669767585755bfbdf688dd5a3c19e1cff749
1 -- This file is part of Intricacy
2 -- Copyright (C) 2013 Martin Bays <mbays@sdf.org>
3 --
4 -- This program is free software: you can redistribute it and/or modify
5 -- it under the terms of version 3 of the GNU General Public License as
6 -- published by the Free Software Foundation, or any later version.
7 --
8 -- You should have received a copy of the GNU General Public License
9 -- along with this program. If not, see http://www.gnu.org/licenses/.
11 {-# LANGUAGE CPP #-}
12 #ifdef APPLE
13 {-# LANGUAGE ForeignFunctionInterface #-}
14 #endif
15 module Main where
17 #ifdef MAIN_SDL
18 import qualified SDLUI (UIM)
19 import SDLUIMInstance ()
20 #endif
22 #ifdef MAIN_CURSES
23 import qualified CursesUI (UIM)
24 import CursesUIMInstance ()
25 #endif
27 import Init
28 import MainState
30 #ifdef APPLE
31 foreign export ccall hs_MAIN :: IO ()
33 hs_MAIN :: IO ()
34 hs_MAIN = main
35 #endif
37 main = main'
38 #ifdef MAIN_SDL
39 (Just (doUI::SDLUI.UIM MainState -> IO (Maybe MainState)))
40 #else
41 (Nothing :: (Maybe (CursesUI.UIM MainState -> IO (Maybe MainState))))
42 #endif
43 #ifdef MAIN_CURSES
44 (Just (doUI::CursesUI.UIM MainState -> IO (Maybe MainState)))
45 #else
46 (Nothing :: (Maybe (SDLUI.UIM MainState -> IO (Maybe MainState))))
47 #endif