X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FnativeGen%2FPlatform.hs;h=afbf0b2ae2614b3dd8ee683aae7bef5374f52d37;hb=ec5035bd9b6a052126d9631331ff924fc9cc28e6;hp=8b01f5cbb3acc8a8f9642731852829d79101200c;hpb=b04a210e26ca57242fd052f2aa91011a80b76299;p=ghc-hetmet.git diff --git a/compiler/nativeGen/Platform.hs b/compiler/nativeGen/Platform.hs index 8b01f5c..afbf0b2 100644 --- a/compiler/nativeGen/Platform.hs +++ b/compiler/nativeGen/Platform.hs @@ -9,7 +9,8 @@ module Platform ( Arch(..), OS(..), - defaultTargetPlatform + defaultTargetPlatform, + osElfTarget ) where @@ -47,9 +48,16 @@ data OS | OSDarwin | OSSolaris | OSMinGW32 + | OSFreeBSD deriving (Show, Eq) +-- | This predicates tells us whether the OS supports ELF-like shared libraries. +osElfTarget :: OS -> Bool +osElfTarget OSLinux = True +osElfTarget OSFreeBSD = True +osElfTarget _ = False + -- | This is the target platform as far as the #ifdefs are concerned. -- These are set in includes/ghcplatform.h by the autoconf scripts defaultTargetPlatform :: Platform @@ -86,6 +94,8 @@ defaultTargetOS = OSDarwin defaultTargetOS = OSSolaris #elif mingw32_TARGET_OS defaultTargetOS = OSMinGW32 +#elif freebsd_TARGET_OS +defaultTargetOS = OSFreeBSD #else defaultTargetOS = OSUnknown #endif