1. 12 Nov, 2013 2 commits
  2. 11 Nov, 2013 2 commits
  3. 08 Nov, 2013 23 commits
  4. 06 Nov, 2013 1 commit
    • Jose A. Lopes's avatar
      Optimize Haskell compilation · d16e3ce4
      Jose A. Lopes authored
      The idea is to compile (on demand, that is, when necessary) each
      source file to a normal object file, a coverage object file, a
      profiling object file, and a test object file.  Also, a given Haskell
      binary is linked with the proper object files.  This is achieved with
      the following Makefile variables:
      
      Compilation modes (profiles):
      1. HPROFILE enables/disables profiling
      2. HCOVERAGE enables/disables coverage
      3. HTEST enables/disables 'TEST' preprocessor definition
      
      A few words on testing: testing means the problem described in issue
      535: https://code.google.com/p/ganeti/issues/detail?id=535.  With
      HTEST enable, ghc will be instructed to define the preprocessor
      definition TEST, for modules that use '#ifdef TEST'.
      
      Haskell binary targets fetch the proper dependencies.  They are also
      '.PHONY' targets so that 'make' does not check for the file timestamp
      and instead it will always call 'ghc --make ...'.  This is not a
      problem because 'ghc' with the '--make' flag only compiles the
      necessary object files.
      Signed-off-by: default avatarJose A. Lopes <jabolopes@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      d16e3ce4
  5. 05 Nov, 2013 3 commits
  6. 04 Nov, 2013 9 commits