1. 10 Mar, 2007 1 commit
  2. 08 Mar, 2007 1 commit
  3. 15 Mar, 2007 1 commit
    • sven.panne@aedion.de's avatar
      Use update-alternatives for handling generic tool names · 1ee08bbe
      sven.panne@aedion.de authored
      ATTENTION: Packagers should read the following stuff carefully!
      
      GHC, Hugs and nhc come with various tools like runhaskell or hsc2hs. On the
      one hand this is quite handy, avoiding lots of tiny native packages, but OTOH
      this leads to a few problems:
      
         * The tools are not always identical in functionality.
      
         * The tools fight for a global generic name like "/usr/bin/runhaskell".
      
      These problems are not new and not unique to Haskell implementations, so for
      *nix-based system there is a tool called update-alternatives which handles
      those cases. The idea is as follows:
      
         * Each program/man page/etc. installs itself with a very specific name
           like /usr/bin/hsc2hs-ghc or /usr/share/man/man1/lua5.1.1.gz, so nothing
           clashes.
      
         * The (un-)installation scripts call update-alternatives to notify the
           system about new alternatives for a generic tool/manpage/etc.
      
         * Alternatives can be grouped together ("link groups"), so e.g. switching
           from Sun's Java to Kaffe switches compiler, JRE, manpages etc. together.
           Alas, this doesn't work well with the Haskell implementations yet,
           because they come with different sets of tools (in addition to runFOO):
      
             GHC:  hsc2hs
             Hugs: hsc2hs, cpphs
             nhc:  cpphs
      
           Either these tools should be disentangled fromt the Haskell
           implementations or all implementations should offer the same set.
           Opinions and recommendations on this topic are highly welcome.
      
         * This mechanism can be used to easily switch between several versions of
           the same implementation, too, but we are not yet fully prepared for that.
      
      As a first step, GHC now installs hsc2hs as 'hsc2hs-ghc' and does *not*
      install runhaskell directly anymore, only runghc. hsc2hs and runhaskell are
      created via update-alternatives now. What is currently missing is a mechanism
      for platforms like Windows and probably Mac OS X.
      1ee08bbe
  4. 09 Mar, 2007 2 commits
  5. 22 Feb, 2007 2 commits
  6. 08 Feb, 2007 2 commits
  7. 06 Feb, 2007 1 commit
    • Simon Marlow's avatar
      Detect the snapshot version number using darcs · 06decfcd
      Simon Marlow authored
      For non-release builds, we want to append a date to the version number
      (e.g. 6.7.20070206).  Previously this was done by the nightly build
      script, this new method figures out the snapshot version by querying
      the darcs repository and finding the date of the most recent patch
      (actually it finds the most recent of the last 100 patches, but that
      should be good enough).  This is done by the configure script.
      
      To handle source distributions, we create a file VERSION in the
      top-level directory that contains the version number, and ship this in
      the source distribution.  The configure script picks up the version
      from this file if it doesn't see a _darcs directory.
      06decfcd
  8. 05 Feb, 2007 2 commits
  9. 04 Feb, 2007 1 commit
  10. 16 Sep, 2006 1 commit
  11. 12 Aug, 2006 1 commit
  12. 03 May, 2006 1 commit
  13. 02 May, 2006 1 commit
  14. 24 Apr, 2006 1 commit
  15. 19 Apr, 2006 1 commit
  16. 07 Apr, 2006 3 commits
    • Simon Marlow's avatar
      fix source dists · 2670dc47
      Simon Marlow authored
      2670dc47
    • Simon Marlow's avatar
      fix binary dists · 55bb9846
      Simon Marlow authored
      55bb9846
    • Simon Marlow's avatar
      Reorganisation of the source tree · 0065d5ab
      Simon Marlow authored
      Most of the other users of the fptools build system have migrated to
      Cabal, and with the move to darcs we can now flatten the source tree
      without losing history, so here goes.
      
      The main change is that the ghc/ subdir is gone, and most of what it
      contained is now at the top level.  The build system now makes no
      pretense at being multi-project, it is just the GHC build system.
      
      No doubt this will break many things, and there will be a period of
      instability while we fix the dependencies.  A straightforward build
      should work, but I haven't yet fixed binary/source distributions.
      Changes to the Building Guide will follow, too.
      0065d5ab
  17. 09 Feb, 2006 1 commit
  18. 16 May, 2005 1 commit
  19. 29 Apr, 2005 1 commit
  20. 22 Mar, 2005 1 commit
  21. 08 Mar, 2005 1 commit
  22. 02 Mar, 2005 2 commits
  23. 21 Feb, 2005 1 commit
  24. 07 Feb, 2005 1 commit
  25. 27 Jan, 2005 1 commit
  26. 26 Jan, 2005 1 commit
  27. 20 Jan, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-01-20 14:22:19 by simonmar] · c830ae13
      simonmar authored
      Fill in the haddock-interfaces and haddock-html fields in the
      package.conf files.
      
      To do this I had to make some changes:
      
        - haddock-interfaces requires the value of $(datadir).  We can't
          just plug this in, because $(datadir) might change at install-time
          (eg. a Windows installer can be placed anywhere, as can a Unix
          binary .tar.gz distribution).  The current trick is for the
          compiler to splice in the value of $libdir in package.conf at
          runtime.  So we could extend this mechanism and tell the compiler
          the value of $datadir via a command-line option, but that seems
          ugly.
      
          On Windows, $datadir==$libdir, so we don't need any changes:
          package.conf still uses $libdir, and a Windows installation is
          independent of its absolute location.  Even 'make install' on
          Windows should have this property.
      
          On Unix:
      	- for 'make install' and in-place execution, we just use
                absolute paths in package.conf
      
      	- for a binary dist, we generate a package.conf that refers
      	  to $libdir and $datadir, and splice in the values at
      	  install-time (distrib/Makefile-bin.in).
      
        - Also, I renamed $libdir to $topdir to more closely reflect its
          actual meaning.  This is somewhat malicious in that it will flush
          out all those clients using $libdir when they really shouldn't
          be :-)
      c830ae13
  28. 19 Jan, 2005 1 commit
  29. 14 Jan, 2005 1 commit
  30. 04 Jan, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-01-04 13:41:53 by simonmar] · f3cdd93b
      simonmar authored
      ghc/mk/config.mk was never being included in ordinary Makefiles.  It
      was only included in the top-level fptools/Makefile for the purposes
      of obtaining binary distribution settings.
      
      This fixes that problem, and now as a side-effect $(GhcHasReadline)
      will start working again.
      f3cdd93b
  31. 07 Oct, 2004 1 commit
  32. 21 Sep, 2004 2 commits