source: trunk/dports/devel/thrift-devel/Portfile @ 131411

Last change on this file since 131411 was 131411, checked in by cal@…, 4 years ago

Haskell: remove duplicate hs-binary which is now provided by GHC, fix build of pandoc, #42082

The ghc port installs a copy of the binary haskell module as of 7.8.3.
Previously, we had an additional hs-binary port that would install the same
module. On its uninstallation, it also unregistered the copy that came with
GHC, breaking its dependencies. This makes a revbump for GHC necessary.
Additionally, this commit removes all hs-binary dependencies and increases the
revision to force a rebuild with GHC's copy (unless the port is also upgraded
in this commit, in which case the revbump is unnecessary).

This commit also

  • updates hs-aeson to 0.7.0.4; 0.8.* is available, but requires a newer hs-text. Since hs-text is part of the Haskell platform, we could (a) leave the Haskell platform, which I'd like to avoid because it's tested and stable, whereas latest and greatest of the modules in the platform might not be, (b) ship a second, newer copy of hs-text, which is hard, because packages that depend on two versions of hs-text are hard to avoid in this case, and this situation could lead to build errors or crashes. For these reasons I've decided to stay at the somewhat older hs-aeson (and because of that and the same situation a couple of times more also at an older version of pandoc).
  • marks hs-binary obsolete
  • updates hs-conduit to 1.2.3.1
  • adds hs-enclosed-exceptions
  • updates hs-resourcet to 1.1.3.3
  • downgrades hs-scientific to 0.2.0.2 because hs-aeson 0.7.* needs hs-scientific ==0.2.*
  • updates hs-sha to 1.6.4.1
  • updates hs-tagsoup to 0.13.3
  • updates hs-texmath to 0.6.6.3, 0.8.* is available, but isn't supported before pandoc 1.13
  • updates hs-yaml to 0.8.10.1
  • updates hs-zip-archive to 0.1.4
  • updates pandoc to 1.12.4.2, which should close #42082
  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.7 KB
Line 
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 131411 2015-01-11 21:17:30Z cal@macports.org $
3
4PortSystem      1.0
5
6name            thrift-devel
7conflicts       thrift
8version         1372257
9categories      devel
10license         Apache-2
11maintainers     gmail.com:naoya.n blair openmaintainer
12platforms       darwin
13
14description     framework for scalable cross-language services development
15long_description \
16    Thrift is a software framework for scalable cross-language \
17    services development. It combines a software stack with a code \
18    generation engine to build services that work efficiently and \
19    seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, \
20    Haskell, C#, Cocoa, Smalltalk, and OCaml.
21
22homepage        http://thrift.apache.org/
23fetch.type      svn
24svn.url         https://svn.apache.org/repos/asf/thrift/trunk
25svn.revision    ${version}
26
27worksrcdir      [file tail ${svn.url}]
28
29use_parallel_build  no
30
31depends_build       port:autoconf \
32                    port:automake \
33                    port:boost \
34                    port:libtool \
35                    port:pkgconfig
36depends_lib-append  port:openssl
37
38pre-configure {
39    system "cd ${worksrcpath} && ./bootstrap.sh"
40
41    # Remove when https://issues.apache.org/jira/browse/THRIFT-1614 is
42    # fixed.
43    reinplace "s|thrifty\.h|thrifty.hh|g" \
44        ${worksrcpath}/compiler/cpp/src/thriftl.ll
45}
46
47configure.args  --with-c_glib=no \
48                --with-csharp=no \
49                --with-d=no \
50                --with-erlang=no \
51                --with-go=no \
52                --with-haskell=no \
53                --with-java=no \
54                --with-perl=no \
55                --with-php=no \
56                --with-php_extension=no \
57                --with-python=no \
58                --with-qt4=no \
59                --with-ruby=no
60
61variant java description "enable the Java library" {
62    depends_build-append    bin:ant:apache-ant
63    configure.env-append    JAVA_PREFIX=${prefix}/share/java
64    configure.args-delete   --with-java=no
65    configure.args-append   --with-java=yes
66}
67
68variant csharp description "enable the C# library" {
69    configure.args-delete   --with-csharp=no
70    configure.args-append   --with-csharp=yes
71    depends_lib-append      port:mono
72}
73
74variant glib2 description "enable the C (GLib) library" {
75    configure.args-delete   --with-c_glib=no
76    configure.args-append   --with-c_glib=yes
77    depends_lib-append      path:lib/pkgconfig/glib-2.0.pc:glib2
78}
79
80# doesn't install into destroot
81#variant ruby description "enable the Ruby library" {
82#    configure.args-delete   --with-ruby=no
83#    configure.args-append   --with-ruby=yes
84#    depends_lib-append      port:ruby
85#}
86
87variant haskell description "enable the Haskell library" {
88    configure.args-delete   --with-haskell=no
89    configure.args-append   --with-haskell=yes
90    depends_lib-append      port:ghc \
91                            port:hs-http \
92}
93
94variant php description "enable the PHP library" {
95    configure.env-append    PHP_PREFIX=${prefix}/lib/php
96    configure.args-delete   --with-php=no
97    configure.args-append   --with-php=yes
98    depends_lib-append      path:bin/php:php5
99}
100
101variant erlang description "enable the Erlang library" {
102    configure.args-delete   --with-erlang=no
103    configure.args-append   --with-erlang=yes
104    depends_lib-append      port:erlang
105}
106
107# See https://issues.apache.org/jira/browse/THRIFT-1348.
108variant qt4 description "enable non-blocking thrift server for use within Qt" {
109    configure.args-delete   --with-qt4=no
110    configure.args-append   --with-qt4=yes
111    depends_lib-append      port:qt4-mac
112}
113
114livecheck.type  regex
115livecheck.url   http://www.apache.org/dist/thrift/
116livecheck.regex {(\d+(?:\.\d+)*)/}
Note: See TracBrowser for help on using the repository browser.