1. 05 Mar, 2015 1 commit
  2. 13 Nov, 2014 2 commits
    • Niklas Hambuechen's avatar
      INSTALL: Remove unclear note · 0d575b2a
      Niklas Hambuechen authored
      This is either outdated or a mistake; one cannot "enable symlinks"
      in the cabal config, and if `symlink-bindir` was meant, that will
      barely help against dependency installation failures.
      Signed-off-by: default avatarNiklas Hambuechen <niklash@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      0d575b2a
    • Niklas Hambuechen's avatar
      Use Cabal to enforce dependency versions · 8e193466
      Niklas Hambuechen authored
      This uses `cabal configure` to determine which exact dependency versions
      we are compiling against, and ensures that these versions are used
      by passing -package-id flags to GHC.
      
      The `cabal configure` step makes the build fail before compiling / type
      checking if the user tries to compile against a dependency version we don't
      support; before, this case led to type errors which were not clearly
      user errors. This fixes issue #988.
      
      The output of `cabal configure` is also used to generate MIN_VERSION_*
      macros.
      
      MIN_VERSION_* macros are the standard way to build CPP dependency switches
      in Haskell packages, and they replace our custom macros (like PARALLEL3
      and NO_REGEX_PCRE) which had to be hand-built for each dependency.
      We can now query the version of any Haskell dependency without having
      to manually add a flag via autoconf.
      
      All ghc and hlint invocations were adjusted to take these macros into
      account.
      
      This change introduces a Haskell-build-time dependency on cabal-install
      (for `cabal configure`) and the Cabal API (for obtaining the configured
      dependency versions and generating the macros).
      Any cabal version since Debian Squeeze is supported.
      
      Note that our use of Cabal does not imply any downloading of dependencies
      at build time, hermetic builds are unaffected by this change.
      
      For developers we now require hlint >= 1.8.60, to make use of its
      --cpp-file option.
      However, hlint >= 1.9.12 is recommended since for
      hlint >= 1.8.58 && < 1.9.12 the --utf8 flag is non-functional
      (see https://github.com/ndmitchell/hlint/issues/96); this can be worked
      though by using the equivalent `--encoding=UTF-8` flag.
      Signed-off-by: default avatarNiklas Hambuechen <niklash@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      8e193466
  3. 16 Sep, 2014 1 commit
  4. 19 Aug, 2014 1 commit
  5. 12 Aug, 2014 1 commit
  6. 21 Jul, 2014 1 commit
  7. 18 Jun, 2014 1 commit
  8. 26 Mar, 2014 1 commit
  9. 18 Mar, 2014 1 commit
  10. 07 Mar, 2014 1 commit
  11. 27 Feb, 2014 1 commit
  12. 14 Feb, 2014 1 commit
  13. 12 Feb, 2014 1 commit
  14. 16 Dec, 2013 1 commit
  15. 17 Oct, 2013 1 commit
  16. 30 Sep, 2013 2 commits
  17. 02 Aug, 2013 1 commit
  18. 30 Jul, 2013 1 commit
  19. 17 Jul, 2013 2 commits
  20. 01 Jul, 2013 1 commit
  21. 21 Jun, 2013 2 commits
  22. 22 May, 2013 2 commits
  23. 13 May, 2013 1 commit
  24. 03 May, 2013 1 commit
  25. 01 May, 2013 1 commit
  26. 02 Apr, 2013 1 commit
  27. 28 Mar, 2013 2 commits
  28. 21 Mar, 2013 1 commit
  29. 25 Feb, 2013 1 commit
  30. 20 Feb, 2013 1 commit
    • Iustin Pop's avatar
      Switch the curl bindings from optional to required · 1ca709c1
      Iustin Pop authored
      Currently, we support curl being optional via some sporting exercises:
      ifdefs in the code, data types that represent 'Curl is disabled'
      state, etc. However, with the future work on RPC, we would have to
      even make the dependencies list conditional on it, etc. This is too
      much work, when the curl library is included even in stable
      distributions.
      
      This patch changes curl from option to required, the same as the other
      base libraries.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      1ca709c1
  31. 08 Jan, 2013 1 commit
  32. 12 Dec, 2012 1 commit
  33. 10 Dec, 2012 1 commit
  34. 21 Nov, 2012 1 commit