1. 23 Oct, 2011 1 commit
  2. 14 Oct, 2011 2 commits
    • Ian Lynagh's avatar
      Don't hide the binary package · 85b0d3ed
      Ian Lynagh authored
      Cabal will use it regardless, and if people are going to use binary then
      it's a lot better if they use the one that we ship, rather than
      installing a second version.
      85b0d3ed
    • Ian Lynagh's avatar
      Simplify the libffi build · 7c3b22ed
      Ian Lynagh authored
      We now put the libffi objects into the RTS library, rather than trying
      to mangle libffi into being a ghc package itself. It would be nicer to
       make it a separate library (but not a ghc package), but for now
       hopefully this will get the build going through on Windows again.
      7c3b22ed
  3. 08 Sep, 2011 2 commits
  4. 28 Aug, 2011 1 commit
    • Ian Lynagh's avatar
      By default, be lax about dependencies on GHC · 12646a9c
      Ian Lynagh authored
      There are a number of things which technically depend on GHC (e.g. if
      ghc changes then Haskell files may be compiled differently, or Cabal
      packages may be configured differently). However, in practice, having
      a real dependency on GHC is just a pain: We normally don't want to
      spend time recompiling other things while we're working on the
      compiler, and even if we did, GHC will normally decide compilation
      isn't needed anyway. So by default we use order-only dependencies on
      GHC, i.e. GHC must exist, but if it's newer than other targets then
      rebuilding is not necessary.
      12646a9c
  5. 05 Aug, 2011 1 commit
    • Simon Marlow's avatar
      sanitise naming of package lists · 043d70f0
      Simon Marlow authored
      The *predicates* all start with "PKGS_THAT_...", e.g.:
      
        PKGS_THAT_BUILD_WITH_STAGE0   (previously "PACKAGES_STAGE0")
        PKGS_THAT_BUILD_WITH_STAGE2   (previously "STAGE2_PACKAGES")
        PKGS_THAT_USE_TH              (previously "TH_PACKAGES)
        etc. (there are a few more)
      
      the lists of packages to build are now consistently named:
      
        PACKAGES_STAGE0
        PACKAGES_STAGE1  (previously just "PACKAGES")
        PACKAGES_STAGE2
      043d70f0
  6. 04 Aug, 2011 1 commit
  7. 31 Jul, 2011 1 commit
  8. 30 Jul, 2011 1 commit
  9. 28 Jul, 2011 1 commit
  10. 18 Jul, 2011 1 commit
  11. 17 Jul, 2011 1 commit
  12. 12 Jul, 2011 1 commit
  13. 08 Jul, 2011 1 commit
  14. 25 Jun, 2011 1 commit
  15. 23 Jun, 2011 1 commit
  16. 28 May, 2011 1 commit
  17. 21 Apr, 2011 1 commit
  18. 14 Apr, 2011 1 commit
  19. 04 Apr, 2011 1 commit
  20. 16 Mar, 2011 1 commit
  21. 07 Feb, 2011 1 commit
  22. 24 Jan, 2011 1 commit
    • Simon Marlow's avatar
      Merge in new code generator branch. · 889c084e
      Simon Marlow authored
      This changes the new code generator to make use of the Hoopl package
      for dataflow analysis.  Hoopl is a new boot package, and is maintained
      in a separate upstream git repository (as usual, GHC has its own
      lagging darcs mirror in http://darcs.haskell.org/packages/hoopl).
      
      During this merge I squashed recent history into one patch.  I tried
      to rebase, but the history had some internal conflicts of its own
      which made rebase extremely confusing, so I gave up. The history I
      squashed was:
      
        - Update new codegen to work with latest Hoopl
        - Add some notes on new code gen to cmm-notes
        - Enable Hoopl lag package.
        - Add SPJ note to cmm-notes
        - Improve GC calls on new code generator.
      
      Work in this branch was done by:
         - Milan Straka <fox@ucw.cz>
         - John Dias <dias@cs.tufts.edu>
         - David Terei <davidterei@gmail.com>
      
      Edward Z. Yang <ezyang@mit.edu> merged in further changes from GHC HEAD
      and fixed a few bugs.
      889c084e
  23. 23 Jan, 2011 2 commits
  24. 22 Jan, 2011 1 commit
    • Ian Lynagh's avatar
      Simplify the build system, and remove 2 phases · 295016c3
      Ian Lynagh authored
      From
          http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture/Idiom/PhaseOrdering
      
      Phase 0:
          Includes: package-data.mk files for things built by the
                    bootstrapping compiler.
          Builds:   the dependency files for hsc2hs and genprimopcode. We need
                    to do this now, as hsc2hs needs to be buildable in phase 1's
                    includes (so that we can make the hpc library's .hs source
                    files, which in turn is necessary for making its dependency
                    files), and genprimopcode needs to be buildable in phase 1's
                    includes (so that we can make the primop-*.hs-incl files,
                    which are sources for the stage1 compiler library, and thus
                    necessary for making its dependency files).
      Phase 1:
          Includes: dependency files for things built by the bootstrapping
                    compiler.
          Builds:   package-data.mk files for everything else. Note that this
                    requires configuring the packages, which means telling cabal
                    which ghc to use, and thus the stage1 compiler gets built
                    during this phase. 
      Phase "":
          Includes: dependency files for everything else.
          Builds:   Everything else. 
      295016c3
  25. 19 Jan, 2011 2 commits
  26. 17 Jan, 2011 1 commit
  27. 16 Jan, 2011 6 commits
  28. 15 Jan, 2011 1 commit
    • Ian Lynagh's avatar
      Build system improvements · a3be88fd
      Ian Lynagh authored
      We no longer use dummy-ghc; instead we don't configure most packages
      until the stage1 compiler is available.
        
      We also now use Cabal for building the ghc-bin package.
      
      There are a couple more sanity checks too.
      a3be88fd
  29. 06 Jan, 2011 1 commit
    • Ian Lynagh's avatar
      On Cygwin, use a Cygwin-style path for /bin/install's destination · 57e2a81c
      Ian Lynagh authored
      cygwin's /bin/install doesn't set file modes correctly if the
      destination path is a C: style path:
      
      $ /bin/install -c -m 644 foo /cygdrive/c/cygwin/home/ian/foo2
      $ /bin/install -c -m 644 foo c:/cygwin/home/ian/foo3
      $ ls -l foo*
      -rw-r--r-- 1 ian None 0 2011-01-06 18:28 foo
      -rw-r--r-- 1 ian None 0 2011-01-06 18:29 foo2
      -rwxrwxrwx 1 ian None 0 2011-01-06 18:29 foo3
      
      This causes problems for bindisttest/checkBinaries.sh which then
      thinks that e.g. the userguide HTML files are binaries.
      
      We therefore use a /cygdrive path if we are on cygwin
      57e2a81c
  30. 10 Dec, 2010 1 commit
  31. 05 Dec, 2010 1 commit