simonmar    2002/09/06 07:34:16 PDT

  Modified files:
    ghc/rts              Signals.c 
    ghc/includes         PrimOps.h Stg.h 
    hslibs/posix         Makefile POpen.hs Posix.lhs PosixDB.lhs 
                         PosixFiles.lhs PosixIO.lhs 
                         PosixProcEnv.lhs PosixProcPrim.lhs 
                         PosixTTY.lhs PosixUtil.lhs 
    hslibs/util          Select.lhs 
    libraries            Makefile 
    libraries/base       Makefile 
    libraries/base/GHC   Posix.hs 
    libraries/base/System Directory.hs 
    libraries/base/include HsBase.h 
  Added files:
    ghc/includes         Signals.h 
    libraries/base/System/Posix Signals.hsc Types.hs 
    libraries/unix       Makefile unix.conf.in 
    libraries/unix/System Posix.hs 
    libraries/unix/System/Posix Directory.hsc Files.hsc Unistd.hsc 
  Log:
  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).
  
  Revision  Changes    Path
  1.28      +11 -5     fptools/ghc/rts/Signals.c
  1.97      +1 -16     fptools/ghc/includes/PrimOps.h
  1.49      +3 -1      fptools/ghc/includes/Stg.h
  1.29      +2 -2      fptools/hslibs/posix/Makefile
  1.2       +3 -2      fptools/hslibs/posix/POpen.hs
  1.7       +8 -0      fptools/hslibs/posix/Posix.lhs
  1.9       +2 -0      fptools/hslibs/posix/PosixDB.lhs
  1.12      +1 -398    fptools/hslibs/posix/PosixFiles.lhs
  1.22      +11 -9     fptools/hslibs/posix/PosixIO.lhs
  1.11      +2 -133    fptools/hslibs/posix/PosixProcEnv.lhs
  1.15      +10 -227   fptools/hslibs/posix/PosixProcPrim.lhs
  1.7       +3 -1      fptools/hslibs/posix/PosixTTY.lhs
  1.8       +25 -20    fptools/hslibs/posix/PosixUtil.lhs
  1.7       +1 -1      fptools/hslibs/util/Select.lhs
  1.15      +5 -1      fptools/libraries/Makefile
  1.38      +3 -2      fptools/libraries/base/Makefile
  1.13      +9 -22     fptools/libraries/base/GHC/Posix.hs
  1.9       +1 -0      fptools/libraries/base/System/Directory.hs
  1.13      +54 -9     fptools/libraries/base/include/HsBase.h
_______________________________________________
Cvs-libraries mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-libraries


Reply via email to