2014-02-11 19:22:08 +00:00
|
|
|
{- process ids
|
|
|
|
-
|
2015-01-21 16:50:09 +00:00
|
|
|
- Copyright 2014 Joey Hess <id@joeyh.name>
|
2014-02-11 19:22:08 +00:00
|
|
|
-
|
2014-05-10 14:01:27 +00:00
|
|
|
- License: BSD-2-clause
|
2014-02-11 19:22:08 +00:00
|
|
|
-}
|
|
|
|
|
|
|
|
{-# LANGUAGE CPP #-}
|
|
|
|
|
|
|
|
module Utility.PID where
|
|
|
|
|
|
|
|
#ifndef mingw32_HOST_OS
|
|
|
|
import System.Posix.Types (ProcessID)
|
|
|
|
import System.Posix.Process (getProcessID)
|
|
|
|
#else
|
|
|
|
import System.Win32.Process (ProcessId)
|
|
|
|
import System.Win32.Process.Current (getCurrentProcessId)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef mingw32_HOST_OS
|
|
|
|
type PID = ProcessID
|
|
|
|
#else
|
|
|
|
type PID = ProcessId
|
|
|
|
#endif
|
|
|
|
|
|
|
|
getPID :: IO PID
|
|
|
|
#ifndef mingw32_HOST_OS
|
|
|
|
getPID = getProcessID
|
|
|
|
#else
|
|
|
|
getPID = getCurrentProcessId
|
|
|
|
#endif
|