source: trunk/dports/devel/hs-monad-control/Portfile

Last change on this file was 131981, checked in by cal@…, 3 years ago

haskell world: revbump everything (including ghc)

  • Clean up remnants left in GHC's package directory that may be left over from previous installations. See for example #46611, which has a log of all the superfluous files left on the buildbots, which should be cleaned up by this.
  • Modify portgroups to register configuration files in $prefix/lib/ghc-7.8.3/package.conf.d/ directly before calling ghc-pkg recache rather than using activation and deactivation scripts that indirectly create these files to avoid the same mess in the future. This way, the state in the package cache directory will always represent the same state MacPorts expects.
  • Simplify and clean up some of the portgroups, especially related to variable substitution in pre-/post-activation hooks.
  • Avoid duplicating most of the code in the haskellplatform 2.0 portgroup and just refer back to the haskell 1.0 portgroup instead.
  • Apply the hook variable substitution cleanup to the local helper functions in the haskell-platform Portfile.

This change

  • should finally fix #46611 and #42082 and all the weird little misconfigurations that would occasionally occur on users' machines
  • adds helpful debugging information (ghc-pkg list, ghc-pkg check) to the main.log in the configure phase.
  • breaks manual installation of haskell packages (e.g. using cabal) in the system directory, because the ghc Portfile will clean out everything that isn't owned by a port in the package cache directory. If this affects you, be advised that you should not be putting stuff MacPorts doesn't know about in MacPorts' prefix. Instead, please use user installations of these packages.
  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 1.3 KB
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 131981 2015-01-22 19:34:32Z $
4PortSystem          1.0
5PortGroup           haskell 1.0
7haskell.setup       monad-control
8revision            2
9checksums           rmd160  c09b0d537c82a7b906cf532e7d135407d9bb61a5 \
10                    sha256  acef78a42ec8bb99efda077b36bb1db8f4b6a1d58aa3865cc7b27e0ba6e88cf3
12maintainers         cal openmaintainer
13platforms           darwin
14license             BSD
16description         Lift control operations, like exception catching, through monad transformers
17long_description    \
18    This package defines the type class MonadBaseControl, a subset of MonadBase \
19    into which generic control operations such as catch can be lifted from IO \
20    or any other base monad. Instances are based on monad transformers in \
21    MonadTransControl, which includes all standard monad transformers in the \
22    transformers library except ContT. \
23    \nSee the lifted-base package which uses monad-control to lift IO operations \
24    from the base library (like catch or bracket) into any monad that is an \
25    instance of MonadBase or MonadBaseControl.
27depends_lib-append  port:hs-base-unicode-symbols \
28                    port:hs-transformers-base
Note: See TracBrowser for help on using the repository browser.