[project @ 2005-01-28 13:36:25 by simonmar]
authorsimonmar <unknown>
Fri, 28 Jan 2005 13:36:34 +0000 (13:36 +0000)
committersimonmar <unknown>
Fri, 28 Jan 2005 13:36:34 +0000 (13:36 +0000)
Catch up with updates to platform #defines.

Generally: use _HOST_ rather than _TARGET_ (except in Cabal where we
have to retain compatibility with previous GHC versions).

29 files changed:
Debug/Trace.hs
Foreign/C/String.hs
GHC/Conc.lhs
GHC/ConsoleHandler.hs
GHC/Handle.hs
GHC/IO.hs
GHC/Unicode.hs
System/CPUTime.hsc
System/Cmd.hs
System/Directory.hs
System/Directory/Internals.hs
System/Environment.hs
System/Info.hs
System/Posix/Internals.hs
System/Posix/Signals.hsc
System/Process.hs
System/Process/Internals.hs
System/Time.hsc
cbits/consUtils.c
cbits/dirUtils.c
cbits/execvpe.c
cbits/inputReady.c
cbits/lockFile.c
cbits/runProcess.c
cbits/timeUtils.c
include/HsBase.h
include/lockFile.h
include/runProcess.h
package.conf.in

index 8b85f62..b442a11 100644 (file)
@@ -22,7 +22,7 @@ module Debug.Trace (
        -- ** Tracers
        -- | The tracer is a function that monitors the trace messages.
        fileTracer,       -- :: Handle -> String -> IO ()
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
        winDebugTracer,   -- :: String -> IO ()
 #endif
        addTracer,        -- :: String -> (String -> IO ()) -> IO ()
@@ -38,7 +38,7 @@ import Data.IORef
 import System.IO.Unsafe
 import System.IO
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 import Foreign.C.String
 #endif
 
@@ -54,7 +54,7 @@ fileTracer handle msg = do
    hPutStr handle msg
    hPutChar handle '\n'
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 -- | A tracer function that outputs the message to the debuger (Windows only)
 winDebugTracer :: String  -- ^ trace message
                -> IO ()
index 03826dd..5654883 100644 (file)
@@ -444,7 +444,7 @@ wNUL = 0
 cWcharsToChars :: [CWchar] -> [Char]
 charsToCWchars :: [Char] -> [CWchar]
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 
 -- On Windows, wchar_t is 16 bits wide and CWString uses the UTF-16 encoding.
 
@@ -465,7 +465,7 @@ charsToCWchars = foldr utf16Char [] . map ord
                     fromIntegral (c' `div` 0x400 + 0xd800) :
                     fromIntegral (c' `mod` 0x400 + 0xdc00) : wcs
 
-#else /* !mingw32_TARGET_OS */
+#else /* !mingw32_HOST_OS */
 
 cWcharsToChars xs  = map castCWcharToChar xs
 charsToCWchars xs  = map castCharToCWchar xs
@@ -479,4 +479,4 @@ castCWcharToChar ch = chr (fromIntegral ch )
 castCharToCWchar :: Char -> CWchar
 castCharToCWchar ch = fromIntegral (ord ch)
 
-#endif /* !mingw32_TARGET_OS */
+#endif /* !mingw32_HOST_OS */
index 7c65383..5fd0370 100644 (file)
@@ -55,7 +55,7 @@ module GHC.Conc
        , writeTVar     -- :: a -> TVar a -> STM ()
        , unsafeIOToSTM -- :: IO a -> STM a
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
        , asyncRead     -- :: Int -> Int -> Int -> Ptr a -> IO (Int, Int)
        , asyncWrite    -- :: Int -> Int -> Int -> Ptr a -> IO (Int, Int)
        , asyncDoProc   -- :: FunPtr (Ptr a -> IO Int) -> Ptr a -> IO Int
@@ -388,7 +388,7 @@ addMVarFinalizer (MVar m) finalizer =
 %************************************************************************
 
 \begin{code}
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 
 -- Note: threadDelay, threadWaitRead and threadWaitWrite aren't really functional
 -- on Win32, but left in there because lib code (still) uses them (the manner
@@ -432,7 +432,7 @@ asyncWriteBA fd isSock len off bufB =
 -- given file descriptor (GHC only).
 threadWaitRead :: Fd -> IO ()
 threadWaitRead fd
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   | threaded  = waitForReadEvent fd
 #endif
   | otherwise = IO $ \s -> 
@@ -444,7 +444,7 @@ threadWaitRead fd
 -- given file descriptor (GHC only).
 threadWaitWrite :: Fd -> IO ()
 threadWaitWrite fd
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   | threaded  = waitForWriteEvent fd
 #endif
   | otherwise = IO $ \s -> 
@@ -465,7 +465,7 @@ threadWaitWrite fd
 --
 threadDelay :: Int -> IO ()
 threadDelay time
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   | threaded  = waitForDelayEvent time
 #else
   | threaded  = c_Sleep (fromIntegral (time `quot` 1000))
@@ -476,7 +476,7 @@ threadDelay time
        }}
 
 -- On Windows, we just make a safe call to 'Sleep' to implement threadDelay.
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 foreign import ccall safe "Sleep" c_Sleep :: CInt -> IO ()
 #endif
 
@@ -514,7 +514,7 @@ foreign import ccall unsafe "rtsSupportsBoundThreads" threaded :: Bool
 --     - forkProcess will kill the IO manager thread.  Let's just
 --       hope we don't need to do any blocking IO between fork & exec.
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 
 data IOReq
   = Read   {-# UNPACK #-} !Fd {-# UNPACK #-} !(MVar ())
index 761926d..8a9e2e0 100644 (file)
@@ -13,7 +13,7 @@
 -- 
 -----------------------------------------------------------------------------
 module GHC.ConsoleHandler
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
        where
 import Prelude -- necessary to get dependencies right
 #else /* whole file */
@@ -88,4 +88,4 @@ installHandler handler =
 
 foreign import ccall unsafe "Signals.h stg_InstallConsoleEvent" 
   rts_installHandler :: CInt -> Ptr (StablePtr (CInt -> IO ())) -> IO CInt
-#endif /* mingw32_TARGET_OS */
+#endif /* mingw32_HOST_OS */
index d433962..223c94e 100644 (file)
@@ -27,7 +27,7 @@ module GHC.Handle (
   readRawBuffer, readRawBufferPtr,
   writeRawBuffer, writeRawBufferPtr,
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   unlockFile,
 #endif
 
@@ -374,7 +374,7 @@ newEmptyBuffer b state size
 
 allocateBuffer :: Int -> BufferState -> IO Buffer
 allocateBuffer sz@(I# size) state = IO $ \s -> 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
    -- To implement asynchronous I/O under Win32, we have to pass
    -- buffer references to external threads that handles the
    -- filling/emptying of their contents. Hence, the buffer cannot
@@ -525,7 +525,7 @@ fillReadBufferWithoutBlocking fd is_stream
  
 -- Low level routines for reading/writing to (raw)buffers:
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 readRawBuffer :: String -> FD -> Bool -> RawBuffer -> Int -> CInt -> IO CInt
 readRawBuffer loc fd is_stream buf off len = 
   throwErrnoIfMinus1RetryMayBlock loc
@@ -568,7 +568,7 @@ foreign import ccall unsafe "__hscore_PrelHandle_write"
 foreign import ccall unsafe "__hscore_PrelHandle_write"
    write_off :: CInt -> Ptr CChar -> Int -> CInt -> IO CInt
 
-#else /* mingw32_TARGET_OS.... */
+#else /* mingw32_HOST_OS.... */
 
 readRawBuffer :: String -> FD -> Bool -> RawBuffer -> Int -> CInt -> IO CInt
 readRawBuffer loc fd is_stream buf off len
@@ -787,7 +787,7 @@ openFile' filepath mode binary =
     let 
       oflags1 = case mode of
                  ReadMode      -> read_flags
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
                  WriteMode     -> write_flags .|. o_TRUNC
 #else
                  WriteMode     -> write_flags
@@ -818,7 +818,7 @@ openFile' filepath mode binary =
        -- ASSERT: if we just created the file, then openFd won't fail
        -- (so we don't need to worry about removing the newly created file
        --  in the event of an error).
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
     if mode == WriteMode
       then throwErrnoIf (/=0) "openFile" 
               (c_ftruncate (fromIntegral fd) 0)
@@ -913,7 +913,7 @@ openFd fd mb_fd_type is_socket filepath mode binary = do
 
        -- regular files need to be locked
        RegularFile -> do
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
           r <- lockFile (fromIntegral fd) (fromBool write) 1{-exclusive-}
           when (r == -1)  $
                ioException (IOError Nothing ResourceBusy "openFile"
@@ -929,7 +929,7 @@ fdToHandle fd = do
    openFd fd Nothing False{-XXX!-} fd_str mode True{-bin mode-}
 
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 foreign import ccall unsafe "lockFile"
   lockFile :: CInt -> CInt -> CInt -> IO CInt
 
@@ -1043,7 +1043,7 @@ hClose_handle_ handle_ = do
     case haOtherSide handle_ of
       Nothing -> 
                  throwErrnoIfMinus1Retry_ "hClose" 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
                                (closeFd (haIsStream handle_) c_fd)
 #else
                                (c_close c_fd)
@@ -1053,7 +1053,7 @@ hClose_handle_ handle_ = do
     -- free the spare buffers
     writeIORef (haBuffers handle_) BufferListNil
   
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
     -- unlock it
     unlockFile c_fd
 #endif
@@ -1205,7 +1205,7 @@ hSetBuffering handle mode =
          is_tty <- fdIsTTY (haFD handle_)
          when (is_tty && isReadableHandleType (haType handle_)) $
                case mode of
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
        -- 'raw' mode under win32 is a bit too specialised (and troublesome
        -- for most common uses), so simply disable its use here.
                  NoBuffering -> setCooked (haFD handle_) False
@@ -1358,7 +1358,7 @@ hTell :: Handle -> IO Integer
 hTell handle = 
     wantSeekableHandle "hGetPosn" handle $ \ handle_ -> do
 
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
        -- urgh, on Windows we have to worry about \n -> \r\n translation, 
        -- so we can't easily calculate the file position using the
        -- current buffer size.  Just flush instead.
index 9959914..aa4c0c8 100644 (file)
--- a/GHC/IO.hs
+++ b/GHC/IO.hs
@@ -47,7 +47,7 @@ import GHC.Show
 import GHC.List
 import GHC.Exception    ( ioError, catch )
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 import GHC.Conc
 #endif
 
@@ -727,7 +727,7 @@ writeChunkNonBlocking fd is_stream ptr bytes = loop 0 bytes
   loop :: Int -> Int -> IO Int
   loop off bytes | bytes <= 0 = return off
   loop off bytes = do
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
     ssize <- c_write (fromIntegral fd) (ptr `plusPtr` off) (fromIntegral bytes)
     let r = fromIntegral ssize :: Int
     if (r == -1)
@@ -901,7 +901,7 @@ bufReadNonBlocking fd ref is_stream ptr so_far count =
 
 readChunkNonBlocking :: FD -> Bool -> Ptr a -> Int -> IO Int
 readChunkNonBlocking fd is_stream ptr bytes = do
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
     ssize <- c_read (fromIntegral fd) (castPtr ptr) (fromIntegral bytes)
     let r = fromIntegral ssize :: Int
     if (r == -1)
index e190cc1..e3ce2bd 100644 (file)
@@ -122,7 +122,7 @@ toLower                 :: Char -> Char
 -- -----------------------------------------------------------------------------
 -- Win32 implementation
 
-#if (defined(HAVE_WCTYPE_H) && HAVE_ISWSPACE && defined(HTYPE_WINT_T)) || mingw32_TARGET_OS
+#if (defined(HAVE_WCTYPE_H) && HAVE_ISWSPACE && defined(HTYPE_WINT_T)) || mingw32_HOST_OS
 
 -- Use the wide-char classification functions if available.  Glibc
 -- seems to implement these properly, even for chars > 0xffff, as long
index 6c58d8e..603afce 100644 (file)
@@ -46,7 +46,7 @@ import Foreign.C
 getCPUTime :: IO Integer
 getCPUTime = do
 
-#if !defined(mingw32_TARGET_OS) && !defined(cygwin32_TARGET_OS)
+#if !defined(mingw32_HOST_OS) && !defined(cygwin32_HOST_OS)
 -- getrusage() is right royal pain to deal with when targetting multiple
 -- versions of Solaris, since some versions supply it in libc (2.3 and 2.5),
 -- while 2.4 has got it in libucb (I wouldn't be too surprised if it was back
@@ -54,7 +54,7 @@ getCPUTime = do
 --
 -- Avoid the problem by resorting to times() instead.
 --
-#if defined(HAVE_GETRUSAGE) && ! irix_TARGET_OS && ! solaris2_TARGET_OS
+#if defined(HAVE_GETRUSAGE) && ! irix_HOST_OS && ! solaris2_HOST_OS
     allocaBytes (#const sizeof(struct rusage)) $ \ p_rusage -> do
     getrusage (#const RUSAGE_SELF) p_rusage
 
index 1eaaf78..cf1dc5b 100644 (file)
@@ -83,16 +83,16 @@ rawSystem cmd args = do
 rawSystem cmd args = system (unwords (map translate (cmd:args)))
 
 translate :: String -> String
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
 -- copied from System.Process (qv)
 translate str = '"' : snd (foldr escape (True,"\"") str)
   where        escape '"'  (b,     str) = (True,  '\\' : '"'  : str)
        escape '\\' (True,  str) = (True,  '\\' : '\\' : str)
        escape '\\' (False, str) = (False, '\\' : str)
        escape c    (b,     str) = (False, c : str)
-#else /* ! mingw32_TARGET_OS */
+#else /* ! mingw32_HOST_OS */
 translate str = '\'' : foldr escape "'" str
   where        escape '\'' cs = '\'' : '\\' : '\'' : '\'' : cs
        escape c    cs = c : cs
-#endif /* ! mingw32_TARGET_OS */
+#endif /* ! mingw32_HOST_OS */
 #endif /* ! __GLASGOW_HASKELL__ */
index e2fd121..a7839ea 100644 (file)
@@ -526,7 +526,7 @@ canonicalizePath :: FilePath -> IO FilePath
 canonicalizePath fpath =
   withCString fpath $ \pInPath ->
   allocaBytes long_path_size $ \pOutPath ->
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
   alloca $ \ppFilePart ->
     do c_GetFullPathName pInPath (fromIntegral long_path_size) pOutPath ppFilePart
 #else
@@ -534,7 +534,7 @@ canonicalizePath fpath =
 #endif
        peekCString pOutPath
 
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
 foreign import stdcall unsafe "GetFullPathName"
             c_GetFullPathName :: CString
                               -> CInt
@@ -832,7 +832,7 @@ cannot be found.
 -}
 getHomeDirectory :: IO FilePath
 getHomeDirectory =
-#if __GLASGOW_HASKELL__ && defined(mingw32_TARGET_OS)
+#if __GLASGOW_HASKELL__ && defined(mingw32_HOST_OS)
   allocaBytes long_path_size $ \pPath -> do
      r <- c_SHGetFolderPath nullPtr csidl_PROFILE nullPtr 0 pPath
      if (r < 0)
@@ -872,7 +872,7 @@ cannot be found.
 -}
 getAppUserDataDirectory :: String -> IO FilePath
 getAppUserDataDirectory appName = do
-#if __GLASGOW_HASKELL__ && defined(mingw32_TARGET_OS)
+#if __GLASGOW_HASKELL__ && defined(mingw32_HOST_OS)
   allocaBytes long_path_size $ \pPath -> do
      r <- c_SHGetFolderPath nullPtr csidl_APPDATA nullPtr 0 pPath
      s <- peekCString pPath
@@ -905,7 +905,7 @@ cannot be found.
 -}
 getUserDocumentsDirectory :: IO FilePath
 getUserDocumentsDirectory = do
-#if __GLASGOW_HASKELL__ && defined(mingw32_TARGET_OS)
+#if __GLASGOW_HASKELL__ && defined(mingw32_HOST_OS)
   allocaBytes long_path_size $ \pPath -> do
      r <- c_SHGetFolderPath nullPtr csidl_PERSONAL nullPtr 0 pPath
      peekCString pPath
@@ -941,7 +941,7 @@ The function doesn\'t verify whether the path exists.
 -}
 getTemporaryDirectory :: IO FilePath
 getTemporaryDirectory = do
-#if __GLASGOW_HASKELL__ && defined(mingw32_TARGET_OS)
+#if __GLASGOW_HASKELL__ && defined(mingw32_HOST_OS)
   allocaBytes long_path_size $ \pPath -> do
      r <- c_GetTempPath (fromIntegral long_path_size) pPath
      peekCString pPath
@@ -949,7 +949,7 @@ getTemporaryDirectory = do
   catch (getEnv "TMPDIR") (\ex -> return "/tmp")
 #endif
 
-#if __GLASGOW_HASKELL__ && defined(mingw32_TARGET_OS)
+#if __GLASGOW_HASKELL__ && defined(mingw32_HOST_OS)
 foreign import stdcall unsafe "SHGetFolderPath" 
             c_SHGetFolderPath :: Ptr () 
                               -> CInt 
index 7c7f8a5..761b771 100644 (file)
@@ -91,7 +91,7 @@ pathParents :: FilePath -> [FilePath]
 pathParents p =
     root'' : map ((++) root') (dropEmptyPath $ inits path')
     where
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
        (root,path) = case break (== ':') p of
           (path,    "") -> ("",path)
           (root,_:path) -> (root++":",path)
@@ -150,7 +150,7 @@ isPathSeparator ch = ch == pathSeparator || ch == '/'
 -- separator is a slash (@\"\/\"@) on Unix and Macintosh, and a backslash
 -- (@\"\\\"@) on the Windows operating system.
 pathSeparator :: Char
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 pathSeparator = '\\'
 #else
 pathSeparator = '/'
@@ -161,7 +161,7 @@ pathSeparator = '/'
 -- environment variables. The separator is a colon (@\":\"@) on Unix and
 -- Macintosh, and a semicolon (@\";\"@) on the Windows operating system.
 searchPathSeparator :: Char
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 searchPathSeparator = ';'
 #else
 searchPathSeparator = ':'
@@ -171,7 +171,7 @@ searchPathSeparator = ':'
 -- | Extension for executable files
 -- (typically @\"\"@ on Unix and @\"exe\"@ on Windows or OS\/2)
 exeExtension :: String
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
 exeExtension = "exe"
 #else
 exeExtension = ""
index de60de8..1235920 100644 (file)
@@ -102,7 +102,7 @@ unpackProgName argv = do
 
    isPathSeparator :: Char -> Bool
    isPathSeparator '/'  = True
-#ifdef mingw32_TARGET_OS 
+#ifdef mingw32_HOST_OS 
    isPathSeparator '\\' = True
 #endif
    isPathSeparator _    = False
index 02cd45d..dfb3018 100644 (file)
 --
 -----------------------------------------------------------------------------
 
-#ifndef __NHC__
-#include "MachDeps.h"
-#endif
-
 module System.Info
    (
        os,                 -- :: String
-       arch                -- :: String
+       arch,               -- :: String
+       compilerName,       -- :: String
+       compilerVersion     -- :: Version
    ) where
 
 import Prelude
+import Data.Version
 
 #ifndef __NHC__
 
+#include "ghcplatform.h"
+
 arch :: String
 arch = HOST_ARCH
 
@@ -37,3 +38,20 @@ os = HOST_OS
 os,arch ::String
 #include "OSInfo.hs"
 #endif
+
+compilerName :: String
+#if defined(__NHC__)
+compilerName = "nhc98"
+#elif defined(__GLASGOW_HASKELL__)
+compilerName = "ghc"
+#elif defined(__HUGS__)
+compilerName = "hugs"
+#else
+#error Unknown compiler name
+#endif
+
+compilerVersion :: Version
+#ifdef __GLASGOW_HASKELL__
+compilerVersion = Version {versionBranch=[maj,min], versionTags=[]}
+  where (maj,min) = __GLASGOW_HASKELL__ `divMod` 100
+#endif
index 28b85f1..7e3ba58 100644 (file)
@@ -118,7 +118,7 @@ statGetType p_stat = do
 ioe_unknownfiletype = IOError Nothing UnsupportedOperation "fdType"
                        "unknown file type" Nothing
 
-#if defined(mingw32_TARGET_OS) || defined(__MINGW32__)
+#if defined(mingw32_HOST_OS) || defined(__MINGW32__)
 closeFd :: Bool -> CInt -> IO CInt
 closeFd isStream fd 
   | isStream  = c_closesocket fd
@@ -130,7 +130,7 @@ foreign import stdcall unsafe "HsBase.h closesocket"
 
 fdGetMode :: Int -> IO IOMode
 fdGetMode fd = do
-#if defined(mingw32_TARGET_OS) || defined(__MINGW32__)
+#if defined(mingw32_HOST_OS) || defined(__MINGW32__)
     -- XXX: this code is *BROKEN*, _setmode only deals with O_TEXT/O_BINARY
     flags1 <- throwErrnoIfMinus1Retry "fdGetMode" 
                 (c__setmode (fromIntegral fd) (fromIntegral o_WRONLY))
@@ -285,7 +285,7 @@ foreign import ccall unsafe "consUtils.h get_console_echo__"
 -- ---------------------------------------------------------------------------
 -- Turning on non-blocking for a file descriptor
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 setNonBlockingFD fd = do
   flags <- throwErrnoIfMinus1Retry "setNonBlockingFD"
@@ -384,7 +384,7 @@ foreign import ccall unsafe "HsBase.h unlink"
 foreign import ccall unsafe "HsBase.h getpid"
    c_getpid :: IO CPid
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 foreign import ccall unsafe "HsBase.h fcntl"
    c_fcntl_read  :: CInt -> CInt -> IO CInt
 
@@ -496,7 +496,7 @@ foreign import ccall unsafe "HsBase.h __hscore_poke_lflag" poke_c_lflag :: Ptr C
 foreign import ccall unsafe "HsBase.h __hscore_ptr_c_cc" ptr_c_cc  :: Ptr CTermios -> IO (Ptr Word8)
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 foreign import ccall unsafe "HsBase.h __hscore_s_issock" s_issock :: CMode -> Bool
 #else
 s_issock :: CMode -> Bool
index 7318e5d..3f3db77 100644 (file)
@@ -15,7 +15,7 @@
 #include "ghcconfig.h"
 
 module System.Posix.Signals (
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   -- * The Signal type
   Signal,
 
@@ -76,7 +76,7 @@ module System.Posix.Signals (
 
   -- * Waiting for signals
   getPendingSignals,
-#ifndef cygwin32_TARGET_OS
+#ifndef cygwin32_HOST_OS
   awaitSignal,
 #endif
 
@@ -108,7 +108,7 @@ import System.IO.Unsafe
 import System.Posix.Types
 import System.Posix.Internals
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 -- WHOLE FILE...
 
 -- -----------------------------------------------------------------------------
@@ -289,7 +289,7 @@ foreign import ccall unsafe "killpg"
 raiseSignal :: Signal -> IO ()
 raiseSignal sig = throwErrnoIfMinus1_ "raiseSignal" (c_raise sig)
 
-#if defined(__GLASGOW_HASKELL__) && (defined(openbsd_TARGET_OS) || defined(freebsd_TARGET_OS))
+#if defined(__GLASGOW_HASKELL__) && (defined(openbsd_HOST_OS) || defined(freebsd_HOST_OS))
 foreign import ccall unsafe "genericRaise"
   c_raise :: CInt -> IO CInt
 #else
@@ -457,7 +457,7 @@ getPendingSignals = do
    throwErrnoIfMinus1_ "getPendingSignals" (c_sigpending p)
   return (SignalSet fp)
 
-#ifndef cygwin32_TARGET_OS
+#ifndef cygwin32_HOST_OS
 awaitSignal :: Maybe SignalSet -> IO ()
 awaitSignal maybe_sigset = do
   fp <- case maybe_sigset of
@@ -506,5 +506,5 @@ foreign import ccall unsafe "__hsposix_SIG_SETMASK" c_SIG_SETMASK :: CInt
 foreign import ccall unsafe "__hsposix_SIG_UNBLOCK" c_SIG_UNBLOCK :: CInt
 #endif /* __HUGS__ */
 
-#endif /* mingw32_TARGET_OS */
+#endif /* mingw32_HOST_OS */
 
index 3ae8fec..a3594fb 100644 (file)
@@ -71,7 +71,7 @@ runCommand
 
 runCommand string = do
   (cmd,args) <- commandToProcess string
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
   runProcess1 "runCommand" cmd args Nothing Nothing Nothing Nothing Nothing
 #else
   runProcess1 "runCommand" cmd [] Nothing Nothing Nothing Nothing Nothing args
@@ -97,7 +97,7 @@ runProcess
   -> Maybe Handle              -- ^ Handle to use for @stderr@
   -> IO ProcessHandle
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 runProcess cmd args mb_cwd mb_env mb_stdin mb_stdout mb_stderr
  = runProcess1 "runProcess" cmd args mb_cwd mb_env mb_stdin mb_stdout mb_stderr
@@ -183,7 +183,7 @@ runInteractiveCommand
 
 runInteractiveCommand string = do
   (cmd,args) <- commandToProcess string
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
   runInteractiveProcess1 "runInteractiveCommand" cmd args Nothing Nothing
 #else
   runInteractiveProcess1 "runInteractiveCommand" cmd [] Nothing Nothing args
@@ -207,7 +207,7 @@ runInteractiveProcess
   -> Maybe [(String,String)]   -- ^ Optional environment (otherwise inherit)
   -> IO (Handle,Handle,Handle,ProcessHandle)
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 runInteractiveProcess cmd args mb_cwd mb_env = 
   runInteractiveProcess1 "runInteractiveProcess" cmd args mb_cwd mb_env
@@ -350,7 +350,7 @@ getProcessExitCode (ProcessHandle handle) =
    Windows isn't required (or desirable) here.
 -}
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 commandToProcess
   :: String
@@ -388,7 +388,7 @@ withFilePathException fpath act = handle mapEx act
     mapEx (IOException (IOError h iot fun str _)) = ioError (IOError h iot fun str (Just fpath))
     mapEx e                                       = throwIO e
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 withCEnvironment :: [(String,String)] -> (Ptr CString  -> IO a) -> IO a
 withCEnvironment env act =
   let env' = map (\(name, val) -> name ++ ('=':val)) env 
@@ -475,7 +475,7 @@ expects (namely the application name).  So it seems simpler to just
 use lpCommandLine alone, which CreateProcess supports.
 -}
 
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
 
 -- Translate command-line arguments for passing to CreateProcess().
 translate :: String -> String
index 9943bc0..22caedb 100644 (file)
 -- #hide
 module System.Process.Internals (
        ProcessHandle(..), PHANDLE,
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
         pPrPr_disableITimers, c_execvpe
 #endif
   ) where
 
 import Prelude -- necessary to get dependencies right
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 import System.Posix.Types ( CPid )
 #else
 import Data.Word ( Word32 )
@@ -46,7 +46,7 @@ import Foreign.Ptr ( Ptr )
      termination: they all return a 'ProcessHandle' which may be used
      to wait for the process later.
 -}
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 type PHANDLE = CPid
 #else
 type PHANDLE = Word32
@@ -56,7 +56,7 @@ newtype ProcessHandle = ProcessHandle PHANDLE
 
 -- ----------------------------------------------------------------------------
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 -- this function disables the itimer, which would otherwise cause confusing
 -- signals to be sent to the new process.
index d884e87..b4a623e 100644 (file)
@@ -353,10 +353,10 @@ gmtoff x    = (#peek struct tm,tm_gmtoff) x
 
 #else /* ! HAVE_TM_ZONE */
 # if HAVE_TZNAME || defined(_WIN32)
-#  if cygwin32_TARGET_OS
+#  if cygwin32_HOST_OS
 #   define tzname _tzname
 #  endif
-#  ifndef mingw32_TARGET_OS
+#  ifndef mingw32_HOST_OS
 foreign import ccall unsafe "time.h &tzname" tzname :: Ptr (Ptr CChar)
 #  else
 foreign import ccall unsafe "__hscore_timezone" timezone :: Ptr CLong
@@ -381,7 +381,7 @@ gmtoff x = do
   return (-fromIntegral (realToInteger tz))
 # else /* ! HAVE_DECL_ALTZONE */
 
-#if !defined(mingw32_TARGET_OS)
+#if !defined(mingw32_HOST_OS)
 foreign import ccall "time.h &timezone" timezone :: Ptr CLong
 #endif
 
@@ -744,7 +744,7 @@ foreign import ccall unsafe "time.h gettimeofday"
 
 #if HAVE_FTIME
 type CTimeB = ()
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 foreign import ccall unsafe "time.h ftime" ftime :: Ptr CTimeB -> IO CInt
 #else
 foreign import ccall unsafe "time.h ftime" ftime :: Ptr CTimeB -> IO ()
index 63665d0..af29b59 100644 (file)
@@ -4,14 +4,14 @@
  * Win32 Console API support
  */
 #include "ghcconfig.h"
-#if defined(mingw32_TARGET_OS) || defined(cygwin32_TARGET_OS) || defined(__MINGW32__) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(cygwin32_HOST_OS) || defined(__MINGW32__) || defined(_MSC_VER)
 /* to the end */
 
 #include "consUtils.h"
 #include <windows.h>
 #include <io.h>
 
-#if defined(cygwin32_TARGET_OS)
+#if defined(cygwin32_HOST_OS)
 #define _get_osfhandle get_osfhandle
 #endif
 
@@ -64,4 +64,4 @@ get_console_echo__(int fd)
     return -1;
 }
 
-#endif /* defined(mingw32_TARGET_OS) || ... */
+#endif /* defined(mingw32_HOST_OS) || ... */
index 08ea54e..fdcdf29 100644 (file)
@@ -8,13 +8,13 @@
 
 // The following is required on Solaris to force the POSIX versions of
 // the various _r functions instead of the Solaris versions.
-#ifdef solaris2_TARGET_OS
+#ifdef solaris2_HOST_OS
 #define _POSIX_PTHREAD_SEMANTICS
 #endif
 
 #include "HsBase.h"
 
-#if defined(mingw32_TARGET_OS) || defined(__MINGW32__) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(__MINGW32__) || defined(_MSC_VER)
 #include <windows.h>
 
 static
@@ -117,7 +117,7 @@ HsInt
 __hscore_renameFile( HsAddr src,
                     HsAddr dest)
 {
-#if defined(mingw32_TARGET_OS) || defined(__MINGW32__) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(__MINGW32__) || defined(_MSC_VER)
     static int forNT = -1;
     
     /* ToDo: propagate error codes back */
index 6de234e..2234f09 100644 (file)
@@ -5,7 +5,7 @@
    -------------------------------------------------------------------------- */
 #include "HsBase.h"
 
-#if !defined(mingw32_TARGET_OS) /* to the end */
+#if !defined(mingw32_HOST_OS) /* to the end */
 
 /* Evidently non-Posix. */
 /* #include "PosixSource.h" */
index a86f961..2949e94 100644 (file)
@@ -17,7 +17,7 @@ int
 inputReady(int fd, int msecs, int isSock)
 {
     if 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
     ( 1 ) {
 #else
     ( isSock ) {
@@ -45,7 +45,7 @@ inputReady(int fd, int msecs, int isSock)
        /* 1 => Input ready, 0 => not ready, -1 => error */
        return (ready);
     }
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
     else {
        DWORD rc;
        HANDLE hFile = (HANDLE)_get_osfhandle(fd);
index 7756616..e892ed4 100644 (file)
@@ -1,12 +1,12 @@
 /*
  * (c) The GRASP/AQUA Project, Glasgow University, 1994-2004
  *
- * $Id: lockFile.c,v 1.4 2005/01/01 23:59:59 krasimir Exp $
+ * $Id: lockFile.c,v 1.5 2005/01/28 13:36:32 simonmar Exp $
  *
  * stdin/stout/stderr Runtime Support
  */
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 
 #include "HsBase.h"
 #include "Rts.h"
index 320f3bf..56d4eab 100644 (file)
@@ -6,7 +6,7 @@
 \r
 #include "HsBase.h"\r
 \r
-#if defined(mingw32_TARGET_OS)\r
+#if defined(mingw32_HOST_OS)\r
 #include <windows.h>\r
 #include <stdlib.h>\r
 #endif\r
@@ -23,7 +23,7 @@
 #include <signal.h>\r
 #endif\r
 \r
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)\r
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)\r
 /* ----------------------------------------------------------------------------\r
    UNIX versions\r
    ------------------------------------------------------------------------- */\r
index ca868e2..eb7df20 100644 (file)
@@ -5,7 +5,7 @@
  */
 #include "HsBase.h"
 
-#if defined(mingw32_TARGET_OS) /* to the end */
+#if defined(mingw32_HOST_OS) /* to the end */
 
 HsAddr __hscore_timezone( void )
 { return (HsAddr)&_timezone; }
index abc26d0..e8b7ae3 100644 (file)
@@ -86,7 +86,7 @@
 #if HAVE_SYS_TIMES_H
 #include <sys/times.h>
 #endif
-#if HAVE_WINSOCK_H && defined(mingw32_TARGET_OS)
+#if HAVE_WINSOCK_H && defined(mingw32_HOST_OS)
 #include <winsock.h>
 #endif
 #if HAVE_LIMITS_H
 #include <wctype.h>
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(irix_TARGET_OS)
+#if !defined(mingw32_HOST_OS) && !defined(irix_HOST_OS)
 # if HAVE_SYS_RESOURCE_H
 #  include <sys/resource.h>
 # endif
 #endif
 
-#ifdef hpux_TARGET_OS
+#ifdef hpux_HOST_OS
 #include <sys/syscall.h>
 #define getrusage(a, b)  syscall(SYS_GETRUSAGE, a, b)
 #define HAVE_GETRUSAGE
 
 #include "runProcess.h"
 
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
 #include <io.h>
 #include <fcntl.h>
 #include "timeUtils.h"
@@ -141,7 +141,7 @@ void writeErrString__(HsAddr msg, HsInt len);
 /* in Signals.c */
 extern HsInt nocldstop;
 
-#if !defined(mingw32_TARGET_OS)
+#if !defined(mingw32_HOST_OS)
 /* in execvpe.c */
 extern int execvpe(char *name, char *const argv[], char **envp);
 extern void pPrPr_disableITimers (void);
@@ -233,7 +233,7 @@ INLINE int __hscore_s_issock(m) { return S_ISSOCK(m); }
 #endif
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(_MSC_VER)
+#if !defined(mingw32_HOST_OS) && !defined(_MSC_VER)
 INLINE int
 __hscore_sigemptyset( sigset_t *set )
 { return sigemptyset(set); }
@@ -266,7 +266,7 @@ __hscore_memcpy_src_off( char *dst, char *src, int src_off, size_t sz )
 INLINE HsBool
 __hscore_supportsTextMode()
 {
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
   return HS_BOOL_FALSE;
 #else
   return HS_BOOL_TRUE;
@@ -412,7 +412,7 @@ __hscore_ftruncate( int fd, off_t where )
 INLINE HsInt
 __hscore_setmode( HsInt fd, HsBool toBin )
 {
-#if defined(mingw32_TARGET_OS) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(_MSC_VER)
   return setmode(fd,(toBin == HS_BOOL_TRUE) ? _O_BINARY : _O_TEXT);
 #else
   return 0;
@@ -432,7 +432,7 @@ __hscore_PrelHandle_read( HsInt fd, HsAddr ptr, HsInt off, int sz )
 
 }
 
-#if defined(mingw32_TARGET_OS) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(_MSC_VER)
 INLINE HsInt
 __hscore_PrelHandle_send( HsInt fd, HsAddr ptr, HsInt off, int sz )
 {
@@ -446,7 +446,7 @@ __hscore_PrelHandle_recv( HsInt fd, HsAddr ptr, HsInt off, int sz )
 }
 #endif
 
-#if defined(mingw32_TARGET_OS) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(_MSC_VER)
 INLINE long *
 __hscore_Time_ghcTimezone( void ) { return &_timezone; }
 
@@ -457,7 +457,7 @@ __hscore_Time_ghcTzname( void ) { return _tzname; }
 INLINE HsInt
 __hscore_mkdir( HsAddr pathName, HsInt mode )
 {
-#if defined(mingw32_TARGET_OS) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(_MSC_VER)
   return mkdir(pathName);
 #else
   return mkdir(pathName,mode);
@@ -549,7 +549,7 @@ __hscore_ptr_c_cc( struct termios* ts )
 INLINE HsInt
 __hscore_sizeof_termios( void )
 {
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
   return sizeof(struct termios);
 #else
   return 0;
@@ -557,7 +557,7 @@ __hscore_sizeof_termios( void )
 }
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(_MSC_VER)
+#if !defined(mingw32_HOST_OS) && !defined(_MSC_VER)
 INLINE HsInt
 __hscore_sizeof_sigset_t( void )
 {
@@ -668,7 +668,7 @@ extern void __hscore_set_saved_termios(int fd, void* ts);
 
 INLINE int __hscore_hs_fileno (FILE *f) { return fileno (f); }
 
-#if !defined(mingw32_TARGET_OS) && !defined(_MSC_VER)
+#if !defined(mingw32_HOST_OS) && !defined(_MSC_VER)
 INLINE int __hsposix_SIGABRT()   { return SIGABRT; }
 INLINE int __hsposix_SIGALRM()   { return SIGALRM; }
 INLINE int __hsposix_SIGBUS()    { return SIGBUS; }
@@ -704,10 +704,10 @@ INLINE int __hsposix_SIG_BLOCK()   { return SIG_BLOCK; }
 INLINE int __hsposix_SIG_UNBLOCK() { return SIG_UNBLOCK; }
 INLINE int __hsposix_SIG_SETMASK() { return SIG_SETMASK; }
 
-#endif /* mingw32_TARGET_OS */
+#endif /* mingw32_HOST_OS */
 
 INLINE int __hscore_open(char *file, int how, mode_t mode) {
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
        if ((how & O_WRONLY) || (how & O_RDWR) || (how & O_APPEND))
          return _sopen(file,how,_SH_DENYRW,mode);
        else
@@ -735,7 +735,7 @@ INLINE int __hscore_fstat(int fd, struct stat *buf) {
 
 // select-related stuff
 
-#if !defined(mingw32_TARGET_OS)
+#if !defined(mingw32_HOST_OS)
 INLINE void hsFD_CLR(int fd, fd_set *fds) { FD_CLR(fd, fds); }
 INLINE int  hsFD_ISSET(int fd, fd_set *fds) { return FD_ISSET(fd, fds); }
 INLINE void hsFD_SET(int fd, fd_set *fds) { FD_SET(fd, fds); }
@@ -745,7 +745,7 @@ extern void hsFD_ZERO(fd_set *fds);
 
 // gettimeofday()-related
 
-#if !defined(mingw32_TARGET_OS)
+#if !defined(mingw32_HOST_OS)
 #define TICK_FREQ  50
 
 INLINE HsInt sizeofTimeVal(void) { return sizeof(struct timeval); }
@@ -763,11 +763,11 @@ INLINE void setTimevalTicks(struct timeval *p, HsInt ticks)
     p->tv_sec  = ticks / TICK_FREQ;
     p->tv_usec = (ticks % TICK_FREQ) * (1000000 / TICK_FREQ);
 }
-#endif // !defined(mingw32_TARGET_OS)
+#endif // !defined(mingw32_HOST_OS)
 
 // Directory-related
 
-#if defined(mingw32_TARGET_OS)
+#if defined(mingw32_HOST_OS)
 
 /* Make sure we've got the reqd CSIDL_ constants in scope;
  * w32api header files are lagging a bit in defining the full set.
index bcaa7fd..1140787 100644 (file)
@@ -1,12 +1,12 @@
 /*
  * (c) The University of Glasgow 2001
  *
- * $Id: lockFile.h,v 1.2 2005/01/02 00:00:00 krasimir Exp $
+ * $Id: lockFile.h,v 1.3 2005/01/28 13:36:34 simonmar Exp $
  *
  * lockFile header
  */
 
-#ifndef mingw32_TARGET_OS
+#ifndef mingw32_HOST_OS
 
 int lockFile(int fd, int for_writing, int exclusive);
 int unlockFile(int fd);
index fbbd4a5..cda5c46 100644 (file)
@@ -4,14 +4,14 @@
    Interface for code in runProcess.c (providing support for System.Process)
    ------------------------------------------------------------------------- */
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 typedef pid_t ProcHandle;
 #else
 // Should really be intptr_t, but we don't have that type on the Haskell side
 typedef long ProcHandle;
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(__MINGW32__)
+#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)
 
 extern ProcHandle runProcess( char *const args[], 
                              char *workingDirectory, char **environment, 
index 8d75ce2..1596127 100644 (file)
@@ -168,7 +168,7 @@ library-dirs:       LIB_DIR
                , LIB_DIR"/cbits"
 #endif
 
-#if !defined(mingw32_TARGET_OS) && !defined(cygwin32_TARGET_OS)
+#if !defined(mingw32_HOST_OS) && !defined(cygwin32_HOST_OS)
 hs-libraries:   "HSbase"
 #else
 /*
@@ -181,7 +181,7 @@ hs-libraries:       "HSbase1", "HSbase2", "HSbase3"
 #endif
 
 extra-libs:  "HSbase_cbits"
-#if defined(mingw32_TARGET_OS) || defined(__MINGW32__) || defined(_MSC_VER)
+#if defined(mingw32_HOST_OS) || defined(__MINGW32__) || defined(_MSC_VER)
             , "wsock32", "msvcrt", "kernel32", "user32", "shell32"
 #endif