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.)
  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
  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.
  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.
    • 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
      - 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
      - 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
      - PrelPosixTypes defines a few POSIX types (CMode == mode_t,
      - 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
      - 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.
  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
        (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
  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.
  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.
  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.
  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
      	- 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.