1. 22 Jun, 2001 1 commit
  2. 14 Jun, 2001 1 commit
  3. 12 Jun, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-06-12 17:07:23 by simonmar] · a3af4376
      simonmar authored
      Allow paths in package.conf to begin with the string "$libdir" which
      is magically replaced by the compiler with either
      
        (a) the argument to the -B<dir> option, if one is present, or
        (b) the wired-in libdir otherwise.
      
      This means that the standard package.conf file is independent of the
      install location and we don't need the post-install-script hack any
      more (Julian - could you update the install machinery when the time
      comes? thanks.)
      a3af4376
  4. 01 May, 2001 1 commit
  5. 30 Apr, 2001 2 commits
  6. 26 Mar, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-03-26 16:53:35 by simonmar] · 27b4d2d7
      simonmar authored
      - make the pkgconf program independent of the location of the build
        tree - instead of Config.hs, we pass the configuration parameters in
        as options.  This is necessary for .hc bootstrapping.
      
      - remove the ghci driver stuff, it moved to the ghci subdirectory.
      
      - remove ghc5.hs
      27b4d2d7
  7. 19 Mar, 2001 1 commit
  8. 15 Mar, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-03-15 15:54:35 by simonmar] · 738d6d2c
      simonmar authored
      - Don't duplicate the definition of PackageConfig, instead hackily #include
        it from ../utils/ghc-pkg/Package.hs.
      
      - Add missing source_dir fields to PackageSrc.hs.
      738d6d2c
  9. 01 Mar, 2001 1 commit
  10. 14 Feb, 2001 2 commits
  11. 13 Feb, 2001 1 commit
  12. 12 Feb, 2001 2 commits
  13. 30 Jan, 2001 1 commit
  14. 17 Jan, 2001 1 commit
  15. 11 Jan, 2001 2 commits
    • simonmar's avatar
      [project @ 2001-01-11 17:35:24 by simonmar] · 27867e55
      simonmar authored
      add missing -u symbols.
      27867e55
    • simonmar's avatar
      [project @ 2001-01-11 17:25:56 by simonmar] · efa88123
      simonmar authored
      Re-organisation of ghc/lib/std and hslibs/lang
      ----------------------------------------------
      
      In brief: move deprecated features out of ghc/lib/std and into
      hslibs/lang, move new FFI libraries into ghc/lib/std and start
      using them.
      
      - foreign import may now return an unboxed type (this was
        advertised to work before, but in fact didn't).  Subsequent
        cleanups in PrelInt/PrelWord.
      
      - Ptr is now defined in ghc/lib/std/PrelPtr.lhs.  Ptr is no
        longer a newtype of Addr, it is defined directly in terms of
        Addr#.
      
      - PrelAddr has disappeared from ghc/lib/std, all uses of Addr in
        ghc/lib/std have been replaced with Ptr.  The definitions of
        Addr has been moved to hslibs/lang/Addr.lhs, as has
        lots of other Addr-related stuff.
      
      - ForeignObj has been removed from ghc/lib/std, and replaced with
        ForeignPtr.  The definition of ForeignObj has been moved to
        hslibs/lang/ForeignObj.lhs.
      
      - Most of the new FFI has been moved into ghc/lib/std in the form
        of modules PrelMarshalAlloc, PrelCString, PrelCError,
        PrelMarshalError, PrelMarshalArray, PrelMarshalUtils,
        PrelCTypes, PrelCTypesISO, and PrelStorable.  The corresponding
        modules in hslibs/lang simply re-export the contents of these
        modules.
      
      - PrelPosixTypes defines a few POSIX types (CMode == mode_t,
        etc.)
      
      - PrelCError changed to access errno using foreign label and peek
        (the POSIX book I have says that errno is guaranteed to be an
        extern int, so this should be OK until I get around to making
        errno thread-safe).
      
      - Hacked the macros that generate the code for CTypes and
        CTypesISO to generate much less code
        (ghc/lib/std/cbits/CTypes.h).
      
      - RtsAPI is now a bit more honest when it comes to building heap
        objects (it uses the correct constructors).
      
      - the Bits class and related stuff has been moved to ghc/lib/std
        (it was simpler this way).
      
      - Directory and System have been converted to use the new FFI.
      efa88123
  16. 05 Jan, 2001 1 commit
  17. 04 Jan, 2001 1 commit
  18. 03 Jan, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-01-03 16:04:16 by simonmar] · 9c853f5c
      simonmar authored
      Remove -ldl for now.
      
      Current story: you don't get any GHCi stuff by default.  To build
      GHCi:
        (a) build a compiler with GhcRtsHcOpts+=-optc-DGHCI in build.mk
        (b) use this compiler to bootstrap another compiler, with
            GhcWithInterpreter=YES and GhcHcOpts+=-ldl in build.mk
      9c853f5c
  19. 23 Dec, 2000 1 commit
  20. 20 Dec, 2000 1 commit
  21. 04 Dec, 2000 1 commit
  22. 21 Nov, 2000 1 commit
  23. 07 Nov, 2000 1 commit
  24. 03 Oct, 2000 1 commit
  25. 26 Jul, 2000 1 commit
  26. 24 Jul, 2000 1 commit
    • simonmar's avatar
      [project @ 2000-07-24 15:16:44 by simonmar] · efc23818
      simonmar authored
      Sigh, change the package definition again.  We weren't making a
      distinction between libraries which need a suffix tag
      (eg. libHSstd_p), and those that don't (eg. libHSstd_cbits).
      
      The package spec now has two components for libraries, hs_libraries
      (tagged) and extra_libraries (untagged).  The ordering of these
      components is important: we specify that hs_libraries are linked
      before extra_libraries.  This sounds problematic if you want to link
      some plain C libraries before some Haskell libs, but in these cases it
      should be possible to create separate packages for the two libs and
      specify the dependencies explicitly.
      efc23818
  27. 08 Jul, 2000 1 commit
  28. 05 Jul, 2000 1 commit
    • simonmar's avatar
      [project @ 2000-07-05 17:01:59 by simonmar] · b2d52fc9
      simonmar authored
      Packages can now be added/removed from an installed GHC as follows:
      
          $ ./ghc-inplace --list-packages
          gmp, rts, std, lang, concurrent, data, net, posix, text, util,
          hssource, win32, com, std2
          $ ./ghc-inplace --add-package <newpkg
          Reading package info from stdin... done.
          Saving old package config file... done.
          Writing new package config file... done.
          $ ./ghc-inplace --list-packages
          gmp, rts, std, lang, concurrent, data, net, posix, text, util,
          hssource, win32, com, std2, mypkg
          $ ./ghc-inplace --delete-package mypkg
          Saving old package config file... done.
          Writing new package config file... done.
          $ ./ghc-inplace --list-packages
          gmp, rts, std, lang, concurrent, data, net, posix, text, util,
          hssource, win32, com, std2
      
      This is a first stab at the kind of functionality we need for
      installing Haskell libraries via RPMs: the RPM script would install
      the libraries, and then do a "ghc --add-package" passing the
      appropriate paths.  You'd then have "ghc -package" at your disposal to
      use the newly installed package.  Similarly on de-install, the RPM
      script would run "ghc --delete-package".
      
      Also in this commit: prettify the package dumping.
      b2d52fc9
  29. 25 Jun, 2000 1 commit
    • panne's avatar
      [project @ 2000-06-25 19:17:57 by panne] · 2288751b
      panne authored
      Changed "_" variable prefix to "c" (for "config", "constant", or
      whatever you like). This should enable building from CVS with GHC <4.07.
      2288751b
  30. 14 Jun, 2000 1 commit
  31. 13 Jun, 2000 1 commit
    • simonmar's avatar
      [project @ 2000-06-13 16:07:20 by simonmar] · 877aad48
      simonmar authored
      New Driver
      ==========
      
      Most things work now, so I'm committing this for a shake down.
      Doubtless there'll be some breakage but things should be back to
      normal by the end of the week.
      
      NOTE: GHC 4.06 won't work to build this driver at the moment, due to a
      bug in its parser.  I'll commit a workaround shortly.
      
      There are several improvements here:
      
      	- the driver is written in Haskell, so is allegedly
      	  more maintainable than the previous one.  It's a bit shorter,
      	  at any rate.
      
      	- the package system has been generalised, so that eg.
      	  the RTS is a package, as is GMP and the prelude.  Packages
      	  are now configured via a configuration file, package.conf.
      	  Two versions of package.conf are automatically generated by
      	  PackageSrc.hs, one for ghc-inplace and one for the installed ghc.
      
      	- So that we only have to build the driver once, there's some
      	  special hackery to deal with locations of utilities, and
      	  other configuration stuff:
      
      	  ghc now has a -B option, which is used in a similar way
      	  to gcc's.  eg.
      
      		ghc -B/home/blah/fptools
      
      	  will run ghc in-place in the specified fptools tree, using
      	  /home/blah/fptools/ghc/utils/mkdependHS to find mkdependHS
      	  for example.  ghc-inplace is now a small shell script that
      	  simply invokes the above.  Whereas
      
      		ghc -B/usr/local/lib/ghc-4.07
      
      	  also works, for an installed copy of ghc in
      	  /usr/local/lib/ghc-4.07.
      
      	- the mangler, object splitter and GC stats gatherer are separate
      	  scripts in subdirectories of ghc/driver.  ghc-asm.lprl and
      	  ghc-split.lprl have been copied in the CVS repository to maintain
      	  the history (fingers crossed; I've never done this before)
      
      
      Other notes:
      
      	- Java support isn't there yet.  Andy: don't update for the time
      	  being until I can sort this.
      
      	- Windows support is also broken, but will be fixed in due course.
      877aad48