This project is mirrored from https://gitlab.haskell.org/ghc/ghc.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 14 Oct, 2012 1 commit
    • ian@well-typed.com's avatar
      Don't set dynlib install names when building · b3dacbdb
      ian@well-typed.com authored
      When building things to run in the build tree, we want the install name
      to be the location in the build tree.
      
      Bindists may be installed somewhere other than the configured install
      location, so we weren't even necessarily setting it to the right value.
      b3dacbdb
  2. 13 Oct, 2012 1 commit
  3. 03 Oct, 2012 1 commit
    • ian@well-typed.com's avatar
      Build the dynamic way by default on Linux/amd64 · 898cb090
      ian@well-typed.com authored
      This required various build system changes to get the build to go
      through.
      
      In the inplace shell wrappers, we set LD_LIBRARY_PATH to allow programs
      to find their libraries. In the future, we might change the inplace tree
      to be the same shape as an installed tree instead. However, this would
      mean changing the way we do installation, as currently we use cabal's
      installation methods to install the libraries, but that only works if
      the libraries are under libraries/foo/dist-install/build/..., rather
      than in inplace/lib/...
      898cb090
  4. 27 May, 2012 1 commit
  5. 06 May, 2012 1 commit
  6. 04 May, 2012 2 commits
  7. 20 Mar, 2012 1 commit
  8. 18 Mar, 2012 1 commit
  9. 15 Mar, 2012 2 commits
  10. 08 Jan, 2012 1 commit
    • Ian Lynagh's avatar
      Refactoring · 9e452874
      Ian Lynagh authored
      This is working towards being able to put ghcautoconf.h and
      ghcplatform.h in includes/dist
      9e452874
  11. 13 Dec, 2011 1 commit
  12. 08 Dec, 2011 1 commit
    • PHO's avatar
      Resurrect UseLibFFIForAdjustors from bitrot. · 616b6697
      PHO authored
      * Pass -Irts/dist/build to the C preprocessor to expose libffi headers (ffi.h and ffitarget.h) to foreign import wrappers during the building process of GHC itself.
      * Install libffi headers into $(ghcheaderdir) just like any other C headers. Otherwise an installed GHC can't find them when it wants to compile foreign import wrappers.
      * Include libffi headers in the bindist for the same reason.
      616b6697
  13. 02 Dec, 2011 1 commit
    • Ian Lynagh's avatar
      Use touchy rather than touch when building on Windows · 2694bb74
      Ian Lynagh authored
      With Windows 7 in a vitrual box VM on OS X, some very odd things happen
      with dates and time stamps when SSHing into cygwin. e.g. here the
      "Change" time is in the past:
      
      $ date; touch foo; stat foo
      Fri Dec  2 16:58:07 GMTST 2011
        File: `foo'
        Size: 0               Blocks: 0          IO Block: 65536  regular
      empty file
      Device: 540aba0bh/1409989131d   Inode: 562949953592977  Links: 1
      Access: (0644/-rw-r--r--)  Uid: ( 1000/     ian)   Gid: (  513/    None)
      Access: 2011-12-02 16:58:07.414457900 +0000
      Modify: 2011-12-02 16:58:07.414457900 +0000
      Change: 2011-12-02 16:58:03.495141800 +0000
       Birth: 2011-12-02 16:57:57.731469900 +0000
      
      And if we copy such a file, then the copy is older (as determined by the
      "Modify" time) than the original:
      
      $ date; touch foo; stat foo; cp foo bar; stat bar
      Fri Dec  2 16:59:10 GMTST 2011
        File: `foo'
        Size: 0               Blocks: 0          IO Block: 65536  regular
      empty file
      Device: 540aba0bh/1409989131d   Inode: 1407374883725128  Links: 1
      Access: (0644/-rw-r--r--)  Uid: ( 1000/     ian)   Gid: (  513/    None)
      Access: 2011-12-02 16:59:10.118457900 +0000
      Modify: 2011-12-02 16:59:10.118457900 +0000
      Change: 2011-12-02 16:59:06.189477700 +0000
       Birth: 2011-12-02 16:57:57.731469900 +0000
        File: `bar'
        Size: 0               Blocks: 0          IO Block: 65536  regular
      empty file
      Device: 540aba0bh/1409989131d   Inode: 281474976882512  Links: 1
      Access: (0644/-rw-r--r--)  Uid: ( 1000/     ian)   Gid: (  513/    None)
      Access: 2011-12-02 16:59:06.394555800 +0000
      Modify: 2011-12-02 16:59:06.394555800 +0000
      Change: 2011-12-02 16:59:06.395532400 +0000
       Birth: 2011-12-02 16:58:40.921899600 +0000
      
      This means that make thinks that things are out of date when it
      shouldn't, so reinvokes itself repeatedly until the MAKE_RESTARTS
      infinite-recursion test triggers.
      
      The touchy program, like most other programs, creates files with both
      Modify and Change in the past, which is still a little odd, but is
      consistent, so doesn't break make.
      2694bb74
  14. 16 Nov, 2011 1 commit
    • Simon Marlow's avatar
      Generate the C main() function when linking a binary (fixes #5373) · 1df28a80
      Simon Marlow authored
      Rather than have main() be statically compiled as part of the RTS, we
      now generate it into the tiny C file that we compile when linking a
      binary.
      
      The main motivation is that we want to pass the settings for the
      -rtsotps and -with-rtsopts flags into the RTS, rather than relying on
      fragile linking semantics to override the defaults, which don't work
      with DLLs on Windows (#5373).  In order to do this, we need to extend
      the API for initialising the RTS, so now we have:
      
      void hs_init_ghc (int *argc, char **argv[],   // program arguments
                        RtsConfig rts_config);      // RTS configuration
      
      hs_init_ghc() can optionally be used instead of hs_init(), and allows
      passing in configuration options for the RTS.  RtsConfig is a struct,
      which currently has two fields:
      
      typedef struct {
          RtsOptsEnabledEnum rts_opts_enabled;
          const char *rts_opts;
      } RtsConfig;
      
      but might have more in the future.  There is a default value for the
      struct, defaultRtsConfig, the idea being that you start with this and
      override individual fields as necessary.
      
      In fact, main() was in a separate static library, libHSrtsmain.a.
      That's now gone.
      1df28a80
  15. 18 Oct, 2011 1 commit
  16. 16 Oct, 2011 1 commit
  17. 14 Oct, 2011 2 commits
    • Ian Lynagh's avatar
      Fix libffi build on Windows · 0ffc2b29
      Ian Lynagh authored
      0ffc2b29
    • 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
  18. 06 Oct, 2011 1 commit
  19. 29 Jun, 2011 1 commit
  20. 26 May, 2011 1 commit
  21. 22 May, 2011 1 commit
  22. 18 May, 2011 1 commit
  23. 23 Apr, 2011 2 commits
  24. 14 Apr, 2011 1 commit
  25. 12 Apr, 2011 1 commit
    • Simon Marlow's avatar
      Cleanup sweep and fix a bug in RTS flag processing. · 5463b55b
      Simon Marlow authored
      This code has accumulated a great deal of cruft over the years, this
      pass cleans up a lot of the surrounding cruft but leaves the actual
      argument processing alone - so there's still more that could be done.
      
      Bug fixed:
      
        - ghc_rts_opts should not be subject to the --rtsopts setting.  If
          the programmer explicitly declares options with ghc_rts_opts, they
          shouldn't also have to accept command-line RTS options to make them
          work.
      5463b55b
  26. 16 Mar, 2011 1 commit
  27. 23 Jan, 2011 2 commits
  28. 22 Jan, 2011 1 commit
  29. 16 Jan, 2011 1 commit
  30. 21 Dec, 2010 1 commit
    • gwright@antiope.com's avatar
      Fix #4829 (build does not respect --with-gcc option) · 834a2186
      gwright@antiope.com authored
      This patch fixes what seems to be the last problem with the --with-gcc
      option.  On OS X, we need to pass the path to gcc to dtrace as the
      preprocessor.  (Internally, dtrace on OS X sets the default preprocessor
      to /usr/bin/gcc.)  ATM, dtrace is only supported on OS X, so we don't
      need any conditionalization.  If dtrace is ported to other platforms,
      we might need to change this. However, usage on other platforms will
      probably be similar to OS X, since many of Apple's changes are to
      use the gnu toolchain instead of the Sun toolchain.
        
      834a2186
  31. 17 Dec, 2010 1 commit
  32. 27 Nov, 2010 1 commit
  33. 10 Feb, 2011 1 commit
  34. 14 Nov, 2010 1 commit
  35. 20 Sep, 2010 1 commit