1. 20 Oct, 2003 2 commits
    • panne's avatar
      [project @ 2003-10-20 18:50:45 by panne] · 1820f42c
      panne authored
      Fixed previous commit. Negation is the root of all evil... :-)
      1820f42c
    • sof's avatar
      [project @ 2003-10-20 17:15:27 by sof] · d0c6e4ec
      sof authored
      Console event handling support (i.e., Haskell-side support for SIGINT under win32).
      
      win32/ConsoleHandler.h implements the Signals.h API. No library support
      for installing user event handlers included in this commit.
      d0c6e4ec
  2. 05 Dec, 2002 1 commit
    • stolz's avatar
      [project @ 2002-12-05 14:20:55 by stolz] · 6ff1e84b
      stolz authored
      Add SA_RESETHAND (aka SA_ONESHOT) support.
      Requested by: John Meacham
      
      > module Main where
      
      > import System.Posix.Signals
      
      > main = do
      >   installHandler sigUSR1 (Catch (print "usr1")) Nothing
      >   installHandler sigUSR2 (CatchOnce (print "usr2")) Nothing
      >   _ <- getLine
      >   return ()
      6ff1e84b
  3. 06 Sep, 2002 1 commit
    • simonmar's avatar
      [project @ 2002-09-06 14:34:13 by simonmar] · 77186ef4
      simonmar authored
      Partial rewrite of the POSIX library.
      
      The main purpose of this sweep is to remove the last dependencies of
      the compiler on hslibs.  When I've committed the associated compiler
      changes, only the 'base' package will be required to bootstrap the
      compiler.  Additionally to build GHCi, the 'readline' and 'unix'
      packages will be required.
      
      The new POSIX library lives mostly in libraries/unix, with a few bits
      required for compiler bootstrapping in libraries/base.  The 'base'
      package is mostly free of hsc2hs code to make bootstrapping from HC
      files easier, but the 'unix' package will use hsc2hs liberally.
      
      The old POSIX library continues to provide more-or-less the same
      interface as before, although some of the types are more correct now
      (previously lots of POSIX types were just mapped to Int).  The new
      interface is largely the same as the old, except that some new
      functionality from the latest POSIX spec has been added (eg. symbolic
      links).
      
      So far, the new POSIX library has signal support, directory/file
      operations and lots of stuff from unistd.h.  The module names are:
      
        System.Posix
      	The main dude, exports everything
      
        System.Posix.Types
      	All the POSIX types, using the same naming scheme as
              Foreign.C.Types, Eg. CUid, COff, etc.  Many of these types
              were previously exported by GHC.Posix.
      
              Additionally exports the "nicer" names used by the old POSIX
      	library for compatibility (eg. ProcessID == CPid, FileMode ==
      	CMode, etc.)
      
      	All reasonable instances are derived for these types.
      
        System.Posix.Signals
      	Signal support, contains most of which was in PosixProcPrim before.
      	The RTS interface to the signal handling support has been
      	rationalised slightly.
      
        System.Posix.Directory
       	Directory support, most were in PosixFiles before.
      
        System.Posix.Files
      	File operations, most were in PosixFiles before.
      
        System.Posix.Unistd
      	(for want of a better name) Miscellaneous bits that mostly come
      	from the unistd.h header file.  PosixProcEnv before.
      
      The rest of the library should pan out like so:
      
        System.Posix.IO
        System.Posix.Error   (maybe)
        System.Posix.Process
        System.Posix.Terminal
      
      (I've no doubt broken Win32 support, but I'm checking the build at the moment).
      77186ef4