source: trunk/dports/devel/hs-semigroups/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.0 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       semigroups
8revision            1
9checksums           rmd160  2ce525c4015f36f41dab63e97a98282fb67fdbc0 \
10                    sha256  46ef9e651bf69634f8e8f0dbe2330629153a7e0c4278af5edaa03f4d6b3113c8
12license             BSD
13maintainers         cal openmaintainer
14platforms           darwin
16description         Haskell 98 semigroups
17long_description    \
18    In mathematics, a semigroup is an algebraic structure consisting of a set \
19    together with an associative binary operation. A semigroup generalizes \
20    a monoid in that there might not exist an identity element. It also \
21    (originally) generalized a group (a monoid with all inverses) to a type \
22    where every element did not have to have an inverse, thus the name \
23    semigroup.
25depends_lib-append  port:hs-nats \
26                    port:hs-unordered-containers
Note: See TracBrowser for help on using the repository browser.