1 | --- Portfile.bak 2008-01-20 01:44:07.000000000 +0100 |
---|
2 | +++ Portfile.test 2008-01-20 19:26:15.000000000 +0100 |
---|
3 | @@ -2,7 +2,7 @@ |
---|
4 | |
---|
5 | PortSystem 1.0 |
---|
6 | name ghc |
---|
7 | -version 6.6.1 |
---|
8 | +version 6.8.2 |
---|
9 | categories lang |
---|
10 | maintainers gwright@macports.org |
---|
11 | platforms darwin |
---|
12 | @@ -28,12 +28,12 @@ |
---|
13 | distfiles ${name}-${version}-src.tar.bz2 \ |
---|
14 | ${name}-${version}-src-extralibs.tar.bz2 |
---|
15 | |
---|
16 | -checksums ${name}-${version}-src.tar.bz2 md5 ba9f4aec2fde5ff1e1548ae69b78aeb0 \ |
---|
17 | - ${name}-${version}-src-extralibs.tar.bz2 md5 43a26b81608b206c056adc3032f7da2a |
---|
18 | +checksums ${name}-${version}-src.tar.bz2 md5 43108417594be7eba0918c459e871e40 \ |
---|
19 | + ${name}-${version}-src-extralibs.tar.bz2 md5 d199c50814188fb77355d41058b8613c |
---|
20 | |
---|
21 | -patchfiles patch-configure.ac \ |
---|
22 | - patch-GHC.hs \ |
---|
23 | - patch-package.conf.in |
---|
24 | +patchfiles patch-Install.hs \ |
---|
25 | + patch-configure.ac |
---|
26 | +# patch-package.conf.in |
---|
27 | |
---|
28 | depends_lib port:readline \ |
---|
29 | port:gmp |
---|
30 | @@ -74,35 +74,6 @@ |
---|
31 | |
---|
32 | depends_lib-append port:readline-5 |
---|
33 | |
---|
34 | - pre-configure { |
---|
35 | - system "cd ${worksrcpath} && autoreconf" |
---|
36 | - |
---|
37 | - set cfg [open "${worksrcpath}/mk/build.mk" w] |
---|
38 | - puts $cfg "#" |
---|
39 | - puts $cfg "# Local configuration overrides for MacPorts" |
---|
40 | - puts $cfg "#" |
---|
41 | - puts $cfg "SRC_CC_OPTS += -I${prefix}/include" |
---|
42 | - puts $cfg "SRC_HC_OPTS += -I${prefix}/include -I/usr/include -L${prefix}/lib -L/usr/lib" |
---|
43 | - puts $cfg "EXTRA_HSC2HS_OPTS += -I${prefix}/include" |
---|
44 | - puts $cfg "EXTRA_LD_OPTS += -L${prefix}/lib" |
---|
45 | - puts $cfg "EXTRA_LD_OPTS += -L/usr/lib" |
---|
46 | - close $cfg |
---|
47 | - |
---|
48 | - reinplace "s|/opt/local|${workpath}/ghc-bootstrap|g" ${workpath}/ghc-bootstrap/lib/ghc-${ghc_bootversion}/package.conf |
---|
49 | - |
---|
50 | - reinplace "s|GHCBIN=\"/opt/local|GHCBIN=\"${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
51 | - |
---|
52 | - reinplace "s|TOPDIROPT=\"-B/opt/local|TOPDIROPT=\"-B${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
53 | - |
---|
54 | - reinplace "s|-L/opt/local|-L${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
55 | - |
---|
56 | - reinplace "s|-I/opt/local|-I${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
57 | - |
---|
58 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-asm |
---|
59 | - |
---|
60 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-split |
---|
61 | - } |
---|
62 | - |
---|
63 | configure.args-append --with-ghc='${workpath}/${name}-bootstrap/bin/ghc' |
---|
64 | build.cmd gmake |
---|
65 | } |
---|
66 | @@ -122,35 +93,6 @@ |
---|
67 | ${name}-${version}-src-extralibs.tar.bz2 \ |
---|
68 | ${name}-${ghc_bootversion}-darwin-bootstrap-tiger.tar.bz2 |
---|
69 | |
---|
70 | - pre-configure { |
---|
71 | - system "cd ${worksrcpath} && autoreconf" |
---|
72 | - |
---|
73 | - set cfg [open "${worksrcpath}/mk/build.mk" w] |
---|
74 | - puts $cfg "#" |
---|
75 | - puts $cfg "# Local configuration overrides for MacPorts" |
---|
76 | - puts $cfg "#" |
---|
77 | - puts $cfg "SRC_CC_OPTS += -I${prefix}/include" |
---|
78 | - puts $cfg "SRC_HC_OPTS += -I${prefix}/include -I/usr/include -L${prefix}/lib -L/usr/lib" |
---|
79 | - puts $cfg "EXTRA_HSC2HS_OPTS += -I${prefix}/include" |
---|
80 | - puts $cfg "EXTRA_LD_OPTS += -L${prefix}/lib" |
---|
81 | - puts $cfg "EXTRA_LD_OPTS += -L/usr/lib" |
---|
82 | - close $cfg |
---|
83 | - |
---|
84 | - reinplace "s|/opt/local|${workpath}/ghc-bootstrap|g" ${workpath}/ghc-bootstrap/lib/ghc-${ghc_bootversion}/package.conf |
---|
85 | - |
---|
86 | - reinplace "s|GHCBIN=\"/opt/local|GHCBIN=\"${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
87 | - |
---|
88 | - reinplace "s|TOPDIROPT=\"-B/opt/local|TOPDIROPT=\"-B${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
89 | - |
---|
90 | - reinplace "s|-L/opt/local|-L${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
91 | - |
---|
92 | - reinplace "s|-I/opt/local|-I${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
93 | - |
---|
94 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-asm |
---|
95 | - |
---|
96 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-split |
---|
97 | - } |
---|
98 | - |
---|
99 | configure.args-append --with-ghc='${workpath}/${name}-bootstrap/bin/ghc' |
---|
100 | } |
---|
101 | |
---|
102 | @@ -169,37 +111,61 @@ |
---|
103 | ${name}-${version}-src-extralibs.tar.bz2 \ |
---|
104 | ${name}-${ghc_bootversion}-i386-apple-darwin-bootstrap.tar.bz2 |
---|
105 | |
---|
106 | - pre-configure { |
---|
107 | - system "cd ${worksrcpath} && autoreconf" |
---|
108 | + configure.args-append --with-ghc='${workpath}/${name}-bootstrap/bin/ghc' |
---|
109 | + } |
---|
110 | |
---|
111 | - set cfg [open "${worksrcpath}/mk/build.mk" w] |
---|
112 | - puts $cfg "#" |
---|
113 | - puts $cfg "# Local configuration overrides for MacPorts" |
---|
114 | - puts $cfg "#" |
---|
115 | - puts $cfg "SRC_CC_OPTS += -I${prefix}/include" |
---|
116 | - puts $cfg "SRC_HC_OPTS += -I${prefix}/include -I/usr/include -L${prefix}/lib -L/usr/lib" |
---|
117 | - puts $cfg "EXTRA_HSC2HS_OPTS += -I${prefix}/include" |
---|
118 | - puts $cfg "EXTRA_LD_OPTS += -L${prefix}/lib" |
---|
119 | - puts $cfg "EXTRA_LD_OPTS += -L/usr/lib" |
---|
120 | - close $cfg |
---|
121 | +platform darwin 9 i386 { |
---|
122 | + global ghc_bootversion |
---|
123 | + set ghc_bootversion 6.8.2 |
---|
124 | |
---|
125 | - reinplace "s|/opt/local|${workpath}/ghc-bootstrap|g" ${workpath}/ghc-bootstrap/lib/ghc-${ghc_bootversion}/package.conf |
---|
126 | + master_sites-append ${homepage}/dist/${ghc_bootversion}/:bootstrap |
---|
127 | |
---|
128 | - reinplace "s|GHCBIN=\"/opt/local|GHCBIN=\"${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
129 | + distfiles-append ${name}-${ghc_bootversion}-darwin-i386-leopard-bootstrap.tar.bz2:bootstrap |
---|
130 | |
---|
131 | - reinplace "s|TOPDIROPT=\"-B/opt/local|TOPDIROPT=\"-B${workpath}/${name}-bootstrap|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
132 | + checksums-append ${name}-${ghc_bootversion}-darwin-i386-leopard-bootstrap.tar.bz2 md5 735a6dca41f36044199784d5bd1ece69 |
---|
133 | |
---|
134 | - reinplace "s|-L/opt/local|-L${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
135 | + extract.only ${name}-${version}-src.tar.bz2 \ |
---|
136 | + ${name}-${version}-src-extralibs.tar.bz2 \ |
---|
137 | + ${name}-${ghc_bootversion}-darwin-i386-leopard-bootstrap.tar.bz2 |
---|
138 | |
---|
139 | - reinplace "s|-I/opt/local|-I${prefix}|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
140 | + configure.args-append --with-ghc='${workpath}/${name}-bootstrap/bin/ghc' |
---|
141 | + } |
---|
142 | |
---|
143 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-asm |
---|
144 | +pre-configure { |
---|
145 | + system "cd ${worksrcpath} && autoreconf" |
---|
146 | |
---|
147 | - reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-split |
---|
148 | - } |
---|
149 | + set cfg [open "${worksrcpath}/mk/build.mk" w] |
---|
150 | + puts $cfg "#" |
---|
151 | + puts $cfg "# Local configuration overrides for MacPorts" |
---|
152 | + puts $cfg "#" |
---|
153 | + puts $cfg "SRC_CC_OPTS += -I${prefix}/include" |
---|
154 | + puts $cfg "SRC_HC_OPTS += -I${prefix}/include -I/usr/include -L${prefix}/lib -L/usr/lib" |
---|
155 | + puts $cfg "EXTRA_HSC2HS_OPTS += -I${prefix}/include" |
---|
156 | + puts $cfg "EXTRA_LD_OPTS += -L${prefix}/lib" |
---|
157 | + puts $cfg "EXTRA_LD_OPTS += -L/usr/lib" |
---|
158 | + puts $cfg "CPPFLAGS += -I${prefix}/include" |
---|
159 | + puts $cfg "LDFLAGS += -L${prefix}/lib" |
---|
160 | + close $cfg |
---|
161 | + |
---|
162 | + # Prepare bootstrap compiler for use in building current GHC |
---|
163 | + reinplace "s|/opt/local|${workpath}/ghc-bootstrap|g" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/package.conf |
---|
164 | + reinplace "s|GHCBIN=/opt/local\\(.*\\)|GHCBIN=${workpath}/${name}-bootstrap\\1|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
165 | + reinplace "s|TOPDIROPT=-B/opt/local\\(.*\\)|TOPDIROPT=-B${workpath}/${name}-bootstrap\\1|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
166 | + reinplace "s|-L/opt/local\\(.*\\)|-L${prefix}\\1|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
167 | + reinplace "s|-I/opt/local\\(.*\\)|-I${prefix}\\1|" ${workpath}/${name}-bootstrap/bin/ghc |
---|
168 | + reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-asm |
---|
169 | + reinplace "s|/opt/local|${prefix}|" ${workpath}/${name}-bootstrap/lib/ghc-${ghc_bootversion}/ghc-split |
---|
170 | + |
---|
171 | + # Deal with GMP |
---|
172 | + reinplace "s|GHC_CC_OPTS += \\(.*\\)|GHC_CC_OPTS += ${prefix}/include \\1|" ${worksrcpath}/libraries/Cabal/Distribution/Simple/GHC/Makefile.in |
---|
173 | + system "ln -sf ${prefix}/include/gmp.h ${worksrcpath}/libraries/base/include" |
---|
174 | + system "ln -sf ${prefix}/include/gmpxx.h ${worksrcpath}/libraries/base/include" |
---|
175 | + system "ln -sf ${prefix}/include/gmp.h ${worksrcpath}/includes" |
---|
176 | + system "ln -sf ${prefix}/include/gmpxx.h ${worksrcpath}/includes" |
---|
177 | + |
---|
178 | + reinplace "s|\\(SUBDIRS += \$\(wildcard OpenAL\).*\\)|#\\1|" ${worksrcpath}/libraries/Makefile |
---|
179 | +} |
---|
180 | |
---|
181 | - configure.args-append --with-ghc='${workpath}/${name}-bootstrap/bin/ghc' |
---|
182 | - } |
---|
183 | |
---|
184 | |
---|
185 | #bugs GHC does not support DESTDIR. Instead, we install \ |
---|
186 | @@ -207,14 +173,17 @@ |
---|
187 | # the five scripts which actually have the installation \ |
---|
188 | # path hard coded. |
---|
189 | |
---|
190 | -configure.ldflags-append "-L/usr/lib" |
---|
191 | +configure.ldflags-append "-L/usr/lib -L${prefix}/lib" |
---|
192 | configure.cflags-append "-I${prefix}/include" |
---|
193 | -configure.env DYLD_FALLBACK_LIBRARY_PATH=${prefix}/lib |
---|
194 | +configure.env DYLD_FALLBACK_LIBRARY_PATH=${prefix}/lib \ |
---|
195 | + CFLAGS=-I${prefix}/include |
---|
196 | |
---|
197 | -configure.args --prefix=${destroot}/${prefix} \ |
---|
198 | - --mandir=${destroot}/${prefix}/share/man/ \ |
---|
199 | +configure.args --prefix=${destroot}${prefix} \ |
---|
200 | + --mandir=${destroot}${prefix}/share/man/ \ |
---|
201 | --with-readline-includes=${prefix}/include \ |
---|
202 | --with-readline-libraries=${prefix}/lib \ |
---|
203 | + --with-gmp-libraries=${prefix}/lib \ |
---|
204 | + --with-gmp-includes=${prefix}/include \ |
---|
205 | --disable-openal \ |
---|
206 | --disable-alut |
---|
207 | |
---|
208 | @@ -224,22 +193,24 @@ |
---|
209 | system "env DYLD_FALLBACK_LIBRARY_PATH=${prefix}/lib ${build.cmd} ${build.target}" |
---|
210 | } |
---|
211 | |
---|
212 | - |
---|
213 | +destroot { |
---|
214 | + system "${build.cmd} install" |
---|
215 | +} |
---|
216 | |
---|
217 | # Note the middle "/" in the ${destroot}/${prefix} pattern. It is required, |
---|
218 | # because the actual text we are trying to match has a "//" between the |
---|
219 | # destroot and the prefix pieces. |
---|
220 | |
---|
221 | post-destroot { |
---|
222 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghc |
---|
223 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghci |
---|
224 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghc-pkg |
---|
225 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghcprof |
---|
226 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}/${prefix}/bin/hsc2hs |
---|
227 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghc |
---|
228 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghci |
---|
229 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghc-pkg |
---|
230 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}/${prefix}/bin/ghcprof |
---|
231 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}/${prefix}/bin/hsc2hs |
---|
232 | |
---|
233 | reinplace "s|\\\$@\"\}|\\\$@\"\} -L${prefix}/lib -I${prefix}/include |" ${destroot}/${prefix}/bin/ghc |
---|
234 | |
---|
235 | - reinplace s|${destroot}/${prefix}|${prefix}|g ${destroot}${prefix}/lib/${name}-${version}/package.conf |
---|
236 | + reinplace s|${destroot}${prefix}|${prefix}|g ${destroot}${prefix}/lib/${name}-${version}/package.conf |
---|
237 | |
---|
238 | system "cd ${destroot}${prefix}/lib/ghc-${version} && ranlib *.a" |
---|
239 | } |
---|