projects
/
ghc-base.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2005-02-15 08:09:43 by ross]
[ghc-base.git]
/
System
/
Info.hs
diff --git
a/System/Info.hs
b/System/Info.hs
index
85b9017
..
597f2c8
100644
(file)
--- a/
System/Info.hs
+++ b/
System/Info.hs
@@
-8,8
+8,8
@@
-- Stability : experimental
-- Portability : portable
--
-- Stability : experimental
-- Portability : portable
--
--- Misc information about the characteristics of the host
--- architecture\/machine lucky enough to run your program.
+-- Information about the characteristics of the host
+-- system lucky enough to run your program.
--
-----------------------------------------------------------------------------
--
-----------------------------------------------------------------------------
@@
-18,42
+18,49
@@
module System.Info
os, -- :: String
arch, -- :: String
compilerName, -- :: String
os, -- :: String
arch, -- :: String
compilerName, -- :: String
-#ifdef __GLASGOW_HASKELL__
compilerVersion -- :: Version
compilerVersion -- :: Version
-#endif
) where
import Prelude
import Data.Version
) where
import Prelude
import Data.Version
-#ifndef __NHC__
+-- | The version of 'compilerName' with which the program was compiled
+-- or is being interpreted.
+compilerVersion :: Version
+compilerVersion = Version {versionBranch=[maj,min], versionTags=[]}
+ where (maj,min) = compilerVersionRaw `divMod` 100
-#include "ghcplatform.h"
+-- | The operating system on which the program is running.
+os :: String
+-- | The machine architecture on which the program is running.
arch :: String
arch :: String
-arch = HOST_ARCH
-os :: String
-os = HOST_OS
+-- | The Haskell implementation with which the program was compiled
+-- or is being interpreted.
+compilerName :: String
-#else
-os,arch ::String
-#include "OSInfo.hs"
-#endif
+compilerVersionRaw :: Int
-compilerName :: String
#if defined(__NHC__)
#if defined(__NHC__)
+#include "OSInfo.hs"
compilerName = "nhc98"
compilerName = "nhc98"
+compilerVersionRaw = __NHC__
+
#elif defined(__GLASGOW_HASKELL__)
#elif defined(__GLASGOW_HASKELL__)
+#include "ghcplatform.h"
+os = HOST_OS
+arch = HOST_ARCH
compilerName = "ghc"
compilerName = "ghc"
+compilerVersionRaw = __GLASGOW_HASKELL__
+
#elif defined(__HUGS__)
#elif defined(__HUGS__)
+#include "platform.h"
+os = HOST_OS
+arch = HOST_ARCH
compilerName = "hugs"
compilerName = "hugs"
+compilerVersionRaw = 0 -- ToDo
+
#else
#error Unknown compiler name
#endif
#else
#error Unknown compiler name
#endif
-
-#ifdef __GLASGOW_HASKELL__
-compilerVersion :: Version
-compilerVersion = Version {versionBranch=[maj,min], versionTags=[]}
- where (maj,min) = __GLASGOW_HASKELL__ `divMod` 100
-#endif