{-|
The @unix-compat@ package provides portable implementations of parts of the
@unix@ package. On POSIX system it re-exports operations from the @unix@
package, on other platforms it emulates the operations as far as possible.
-}
module System.PosixCompat (
    module System.PosixCompat.Files,
    module System.PosixCompat.Time,
    module System.PosixCompat.Types,
    module System.PosixCompat.User,
    usingPortableImpl
  ) where

import System.PosixCompat.Files
import System.PosixCompat.Time
import System.PosixCompat.Types
import System.PosixCompat.User

-- | 'True' if unix-compat is using its portable implementation,
--   or 'False' if the unix package is simply being re-exported.
usingPortableImpl :: Bool
#ifdef UNIX_IMPL
usingPortableImpl = False
#else
usingPortableImpl = True
#endif