source: trunk/dports/lang/mercury/Portfile @ 85585

Last change on this file since 85585 was 85585, checked in by ryandesign@…, 9 years ago

Add depends_skip_archcheck apple-gcc42; see #31584

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 14.6 KB
Line 
1# $Id: Portfile 85585 2011-10-14 20:17:51Z ryandesign@macports.org $
2
3PortSystem 1.0
4
5name            mercury
6version         11.01
7categories      lang
8maintainers     nomaintainer
9platforms       darwin
10license         GPL-2 LGPL-2
11
12description     The Mercury Programming Language
13long_description        \
14                Mercury is a new logic/functional programming   \
15                language, which combines the clarity and        \
16                expressiveness of declarative programming with  \
17                advanced static analysis and error detection    \
18                features. Its highly optimized execution        \
19                algorithm delivers efficiency far in excess of  \
20                existing logic programming systems, and close   \
21                to conventional programming systems. Mercury    \
22                addresses the problems of large-scale program   \
23                development, allowing modularity, separate      \
24                compilation, and numerous optimization/time     \
25                trade-offs.
26
27homepage        http://www.${name}.cs.mu.oz.au/
28master_sites    ${homepage}download/files/
29
30distname        ${name}-compiler-${version}
31
32checksums           md5     5d7dc00ab06f87ee5ddfb8dca088be56 \
33                    sha1    508f9fbebdf061f706a44db5c77868cb4e769066 \
34                    rmd160  bee82b6037fa1f14f27b43d6f7d751d232941bc7
35
36worksrcdir      ${name}-compiler-${version}
37
38depends_lib \
39    port:readline
40
41patchfiles \
42    asm.patch \
43    nolibgcc.patch
44
45post-patch {
46    reinplace "s:\*gcc\*:*gcc*|*clang*:" ${worksrcpath}/scripts/ml.in ${worksrcpath}/scripts/mgnuc.in
47}
48
49# Release notes state that gcc-4.0 generates a broken mercury compiler
50# llvm-gcc-4.2 fails to build
51if {${configure.compiler} == "gcc-4.0"} {
52    configure.compiler gcc-4.2
53    if {![file executable ${configure.cc}]} {
54        depends_build-append port:apple-gcc42
55        depends_skip_archcheck apple-gcc42
56        configure.compiler apple-gcc-4.2
57    }
58} elseif {${configure.compiler} == "llvm-gcc-4.2"} {
59    configure.compiler clang
60}
61
62# mercury doesn't honor $CFLAGS
63configure.cc ${configure.cc} -std=gnu89
64
65# mercury's bootstrapping doesn't work with DESTDIR, so do it an ugly way...
66configure.pre_args-delete --prefix=${prefix}
67configure.pre_args-append --prefix=${destroot}${prefix}
68destroot.destdir ""
69
70post-destroot {
71    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_browser.dylib"
72    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_eventspec.dylib"
73    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_mdbcomp.dylib"
74    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_rt.dylib"
75    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_ssdb.dylib"
76    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_std.dylib"
77    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc/libmer_trace.dylib"
78    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_browser.dylib"
79    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_eventspec.dylib"
80    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_mdbcomp.dylib"
81    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_rt.dylib"
82    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_ssdb.dylib"
83    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_std.dylib"
84    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.memprof/libmer_trace.dylib"
85    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_browser.dylib"
86    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_eventspec.dylib"
87    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_mdbcomp.dylib"
88    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_rt.dylib"
89    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_ssdb.dylib"
90    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_std.dylib"
91    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.prof/libmer_trace.dylib"
92    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_browser.dylib"
93    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_eventspec.dylib"
94    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_mdbcomp.dylib"
95    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_rt.dylib"
96    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_ssdb.dylib"
97    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_std.dylib"
98    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.gc.trseg/libmer_trace.dylib"
99    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_browser.dylib"
100    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_eventspec.dylib"
101    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_mdbcomp.dylib"
102    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_rt.dylib"
103    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_ssdb.dylib"
104    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_std.dylib"
105    system "install_name_tool -id ${prefix}/lib/mercury/lib/hlc.par.gc/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/hlc.par.gc/libmer_trace.dylib"
106    system "install_name_tool -id ${prefix}/lib/mercury/lib/libgc.dylib ${destroot}${prefix}/lib/mercury/lib/libgc.dylib"
107    system "install_name_tool -id ${prefix}/lib/mercury/lib/libgc_prof.dylib ${destroot}${prefix}/lib/mercury/lib/libgc_prof.dylib"
108    system "install_name_tool -id ${prefix}/lib/mercury/lib/libpar_gc.dylib ${destroot}${prefix}/lib/mercury/lib/libpar_gc.dylib"
109    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_browser.dylib"
110    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_eventspec.dylib"
111    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_mdbcomp.dylib"
112    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_rt.dylib"
113    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_ssdb.dylib"
114    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_std.dylib"
115    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc/libmer_trace.dylib"
116    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_browser.dylib"
117    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_eventspec.dylib"
118    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_mdbcomp.dylib"
119    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_rt.dylib"
120    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_ssdb.dylib"
121    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_std.dylib"
122    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.debug/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.debug/libmer_trace.dylib"
123    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_browser.dylib"
124    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_eventspec.dylib"
125    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_mdbcomp.dylib"
126    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_rt.dylib"
127    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_ssdb.dylib"
128    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_std.dylib"
129    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.decldebug/libmer_trace.dylib"
130    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_browser.dylib"
131    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_eventspec.dylib"
132    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_mdbcomp.dylib"
133    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_rt.dylib"
134    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_ssdb.dylib"
135    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_std.dylib"
136    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.prof/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.prof/libmer_trace.dylib"
137    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_browser.dylib"
138    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_eventspec.dylib"
139    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_mdbcomp.dylib"
140    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_rt.dylib"
141    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_ssdb.dylib"
142    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_std.dylib"
143    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.gc.profdeep/libmer_trace.dylib"
144    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_browser.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_browser.dylib"
145    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_eventspec.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_eventspec.dylib"
146    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_mdbcomp.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_mdbcomp.dylib"
147    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_rt.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_rt.dylib"
148    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_ssdb.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_ssdb.dylib"
149    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_std.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_std.dylib"
150    system "install_name_tool -id ${prefix}/lib/mercury/lib/none.par.gc/libmer_trace.dylib ${destroot}${prefix}/lib/mercury/lib/none.par.gc/libmer_trace.dylib"
151
152    file delete ${destroot}${prefix}/var/macports/build
153}
Note: See TracBrowser for help on using the repository browser.