Gentoo Archives: gentoo-commits

From: "Peter Alfredsen (loki_val)" <loki_val@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/mono: mono-2.2-r4.ebuild ChangeLog mono-2.2-r3.ebuild
Date: Sun, 22 Mar 2009 21:35:16
Message-Id: E1LlVK5-0004bn-VH@stork.gentoo.org
1 loki_val 09/03/22 21:35:13
2
3 Modified: ChangeLog
4 Added: mono-2.2-r4.ebuild
5 Removed: mono-2.2-r3.ebuild
6 Log:
7 Fix bug 256264, mono-debugger-2.2 doesn't work. It seems mono-debugger uses some symbols that are only available if mono is compiled statically. Do --enable-static so we can debug our progams finally. Thanks to Jan Oravec <jan.oravec@××××.sk> for the fix and ikelos for the report.
8 (Portage version: 2.2_rc26/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.155 dev-lang/mono/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.155&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.155&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?r1=1.154&r2=1.155
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v
20 retrieving revision 1.154
21 retrieving revision 1.155
22 diff -u -r1.154 -r1.155
23 --- ChangeLog 12 Feb 2009 01:23:02 -0000 1.154
24 +++ ChangeLog 22 Mar 2009 21:35:13 -0000 1.155
25 @@ -1,6 +1,15 @@
26 # ChangeLog for dev-lang/mono
27 # Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.154 2009/02/12 01:23:02 dirtyepic Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.155 2009/03/22 21:35:13 loki_val Exp $
30 +
31 +*mono-2.2-r4 (22 Mar 2009)
32 +
33 + 22 Mar 2009; Peter Alfredsen <loki_val@g.o> -mono-2.2-r3.ebuild,
34 + +mono-2.2-r4.ebuild:
35 + Fix bug 256264, mono-debugger-2.2 doesn't work. It seems mono-debugger
36 + uses some symbols that are only available if mono is compiled statically.
37 + Do --enable-static so we can debug our progams finally. Thanks to Jan
38 + Oravec <jan.oravec@××××.sk> for the fix and ikelos for the report.
39
40 12 Feb 2009; Ryan Hill <dirtyepic@g.o>
41 +files/mono-1.2-glibc28.patch, mono-1.2.5.1-r1.ebuild:
42
43
44
45 1.1 dev-lang/mono/mono-2.2-r4.ebuild
46
47 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/mono-2.2-r4.ebuild?rev=1.1&view=markup
48 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/mono-2.2-r4.ebuild?rev=1.1&content-type=text/plain
49
50 Index: mono-2.2-r4.ebuild
51 ===================================================================
52 # Copyright 1999-2009 Gentoo Foundation
53 # Distributed under the terms of the GNU General Public License v2
54 # $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/mono-2.2-r4.ebuild,v 1.1 2009/03/22 21:35:13 loki_val Exp $
55
56 EAPI=2
57
58 inherit mono eutils flag-o-matic multilib go-mono
59
60 DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter"
61 HOMEPAGE="http://www.go-mono.com"
62
63 LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL"
64 SLOT="0"
65 KEYWORDS="~x86 ~amd64"
66 IUSE="xen moonlight minimal"
67
68 #Bash requirement is for += operator
69 COMMONDEPEND="!<dev-dotnet/pnet-0.6.12
70 !dev-util/monodoc
71 dev-libs/glib:2
72 !minimal? ( =dev-dotnet/libgdiplus-${GO_MONO_REL_PV}* )
73 ia64? (
74 sys-libs/libunwind
75 )"
76 RDEPEND="${COMMONDEPEND}
77 || ( www-client/links www-client/lynx )"
78
79 DEPEND="${COMMONDEPEND}
80 sys-devel/bc
81 >=app-shells/bash-3.2"
82 PDEPEND="dev-dotnet/pe-format"
83
84 MAKEOPTS="${MAKEOPTS} -j1"
85
86 RESTRICT="test"
87
88 PATCHES=(
89 "${WORKDIR}/mono-2.2-libdir126.patch"
90 "${FILESDIR}/mono-2.2-ppc-threading.patch"
91 "${FILESDIR}/mono-2.2-uselibdir.patch"
92 "${FILESDIR}/mono-2.2-r121596-work-around-runtime-crash.patch"
93 "${FILESDIR}/mono-2.2-r123987-bless-crash.patch"
94 )
95
96 pkg_setup() {
97 MONO_NUNIT_DIR="/usr/$(get_libdir)/mono/mono-nunit"
98 NUNIT_DIR="/usr/$(get_libdir)/mono/nunit"
99 }
100
101 src_prepare() {
102 sed -e "s:@MONOLIBDIR@:$(get_libdir):" \
103 < "${FILESDIR}"/mono-2.2-libdir126.patch \
104 > "${WORKDIR}"/mono-2.2-libdir126.patch ||
105 die "Sedding patch file failed"
106 go-mono_src_prepare
107 }
108
109 src_configure() {
110 # mono's build system is finiky, strip the flags
111 strip-flags
112
113 #Remove this at your own peril. Mono will barf in unexpected ways.
114 append-flags -fno-strict-aliasing
115
116 #NOTE: We need the static libs for now so mono-debugger works.
117 #See http://bugs.gentoo.org/show_bug.cgi?id=256264 for details
118 go-mono_src_configure \
119 --enable-static \
120 --disable-quiet-build \
121 --with-preview \
122 --with-glib=system \
123 $(use_with moonlight) \
124 --with-libgdiplus=$(use minimal && printf "no" || printf "installed" ) \
125 $(use_with xen xen_opt) \
126 --without-ikvm-native \
127 --with-jit
128
129 }
130
131 src_test() {
132 vecho ">>> Test phase [check]: ${CATEGORY}/${PF}"
133
134 export MONO_REGISTRY_PATH="${T}/registry"
135 export XDG_DATA_HOME="${T}/data"
136 export MONO_SHARED_DIR="${T}/shared"
137 export XDG_CONFIG_HOME="${T}/config"
138 export HOME="${T}/home"
139
140 emake -j1 check
141 }
142
143 src_install() {
144 go-mono_src_install
145 #Bug 255610
146 sed -i -e "s:mono/2.0/mod.exe:mono/1.0/mod.exe:" \
147 "${D}"/usr/bin/mod || die "Failed to fix mod."
148
149 docinto docs
150 dodoc docs/*
151
152 docinto libgc
153 dodoc libgc/ChangeLog
154
155 find "${D}"/usr/ -name '*nunit-docs*' -exec rm -rf '{}' '+' || die "Removing nunit .docs failed"
156
157 #Standardize install paths for eselect-nunit
158 dodir ${MONO_NUNIT_DIR}
159 rm -f "${D}"/usr/bin/nunit-console*
160
161 for file in "${D}"/usr/$(get_libdir)/mono/1.0/nunit*.dll "${D}"/usr/$(get_libdir)/mono/1.0/nunit*.exe
162 do
163 dosym ../1.0/${file##*/} ${MONO_NUNIT_DIR}/${file##*/}
164 done
165
166 make_wrapper "nunit-console" "mono ${MONO_NUNIT_DIR}/nunit-console.exe" "" "" "${MONO_NUNIT_DIR}"
167 dosym nunit-console "${MONO_NUNIT_DIR}"/nunit-console2
168 }
169
170 #THINK!!!! Before touching postrm and postinst
171 #Reference phase order:
172 #pkg_preinst
173 #pkg_prerm
174 #pkg_postrm
175 #pkg_postinst
176
177 pkg_postrm() {
178 if [[ "$(readlink "${ROOT}"/${NUNIT_DIR})" == *"mono-nunit" ]]
179 then
180 ebegin "Removing old symlinks for nunit"
181 rm -rf "${ROOT}"/${NUNIT_DIR} &> /dev/null
182 rm -rf "${ROOT}"/usr/bin/nunit-console &> /dev/null
183 rm -rf "${ROOT}"/usr/bin/nunit-console2 &> /dev/null
184 rm -rf "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc &> /dev/null
185 eend 0
186 fi
187 }
188
189 pkg_postinst() {
190 local -a FAIL
191 local fail return=0
192 if ! [[ -L "${ROOT}/${NUNIT_DIR}" ]]
193 then
194 einfo "No default NUnit installed, using mono-nunit as default."
195 ebegin "Removing stale symlinks for nunit, if any"
196 rm -rf "${ROOT}"/${NUNIT_DIR} &> /dev/null
197 rm -rf "${ROOT}"/usr/bin/nunit-console &> /dev/null
198 rm -rf "${ROOT}"/usr/bin/nunit-console2 &> /dev/null
199 rm -rf "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc &> /dev/null
200 eend 0
201
202 ebegin "Installing mono-nunit symlinks"
203 ln -sf mono-nunit "${ROOT}/${NUNIT_DIR}" || { return=1; FAIL+=( $NUNIT_DIR ) ; }
204 ln -sf ../..${NUNIT_DIR}/nunit-console "${ROOT}"/usr/bin/nunit-console || { return=1; FAIL+=( /usr/bin/nunit-console ) ; }
205 ln -sf ../..${NUNIT_DIR}/nunit-console2 "${ROOT}"/usr/bin/nunit-console2 || { return=1; FAIL+=( /usr/bin/nunit-console2 ) ; }
206 ln -sf mono-nunit.pc "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc || { return=1; FAIL+=( /usr/$(get_libdir)/pkgconfig/nunit.pc ) ; }
207 eend $return
208
209 if [[ "$return" = "1" ]]
210 then
211 elog "These errors are non-fatal, if re-emerging mono does not solve them, file a bug."
212 for fail in "${FAIL[@]}"
213 do
214 eerror "Linking $fail failed"
215 done
216 fi
217 fi
218
219 elog "PLEASE TAKE NOTE!"
220 elog ""
221 elog "Some of the namespaces supported by Mono require extra packages to be installed."
222 elog "Below is a list of namespaces and the corresponding package you must install:"
223 elog ""
224 elog ">=x11-libs/cairo-1.6.4"
225 elog " Mono.Cairo"
226 elog "Also read:"
227 elog "http://www.mono-project.com/Mono.Cairo"
228 elog ""
229 elog ">=dev-db/firebird-2.0.4.13130.1"
230 elog " FirebirdSql.Data.Firebird"
231 elog "Also read:"
232 elog "http://www.mono-project.com/Firebird_Interbase"
233 elog ""
234 elog "=dev-dotnet/gluezilla-${GO_MONO_REL_PV}*"
235 elog " Mono.Mozilla"
236 elog " Mono.Mozilla.WebBrowser"
237 elog " Mono.Mozilla.Widget"
238 elog " Interop.SHDocVw"
239 elog " AxInterop.SHDocVw"
240 elog " Interop.mshtml.dll"
241 elog " System.Windows.Forms.WebBrowser"
242 elog " Microsoft.IE"
243 elog "Also read:"
244 elog "http://www.mono-project.com/WebBrowser"
245 elog ""
246 elog "dev-db/sqlite:3"
247 elog " Mono.Data.Sqlite"
248 elog " Mono.Data.SqliteClient"
249 elog "Also read:"
250 elog "http://www.mono-project.com/SQLite"
251 elog ""
252 elog ">=dev-db/oracle-instantclient-basic-10.2"
253 elog " System.Data.OracleClient"
254 elog "Also read:"
255 elog "http://www.mono-project.com/Oracle"
256 elog ""
257 elog "Mono also has support for packages that are not included in portage:"
258 elog ""
259 elog "No ebuild available:"
260 elog " IBM.Data.DB2"
261 elog "Also read: http://www.mono-project.com/IBM_DB2"
262 elog ""
263 elog "No ebuild needed:"
264 elog " Mono.Data.SybaseClient"
265 elog "Also read: http://www.mono-project.com/Sybase"
266 }
267
268 # NOTICE: THE COPYRIGHT FILES IN THE TARBALL ARE UNCLEAR!
269 # WHENEVER YOU THINK SOMETHING IS GPL-2+, IT'S ONLY GPL-2
270 # UNLESS MIGUEL DE ICAZA HIMSELF SAYS OTHERWISE.
271
272 # mono
273 # The code we use is LGPL, but contributions must be made under the MIT/X11
274 # license, so Novell can serve its paying customers. Exception is mono/man.
275 # LICENSE="LGPL-2.1"
276
277 # mono/man
278 # LICENSE="MIT"
279
280 # mcs/mcs
281 # mcs/gmcs
282 # LICENSE="GPL-2 MIT"
283
284 # tests
285 # LICENSE="MIT"
286
287 # mcs/class
288 # Except the listed exceptions:
289 # LICENSE="MIT"
290
291 # mcs/class/ByteFX.Data
292 # mcs/class/Npgsql
293 # LICENSE="LGPL-2.1"
294
295 # mcs/class/FirebirdSql.Data.Firebird
296 # LICENSE="IDPL"
297
298 # mcs/class/ICSharpCode.SharpZipLib
299 # LICENSE="GPL-2-with-linking-exception"
300
301 # mcs/class/MicrosoftAjaxLibrary
302 # LICENSE="Ms-Pl"
303
304 # mcs/class/Microsoft.JScript/Microsoft.JScript/TokenStream.cs
305 # mcs/class/Microsoft.JScript/Microsoft.JScript/Token.cs
306 # mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
307 # mcs/class/Microsoft.JScript/Microsoft.JScript/Decompiler.cs
308 # LICENSE="|| ( NPL-1.1 GPL-2 )"
309
310 # mcs/jay
311 # LICENSE="BSD-4"
312
313 # mcs/tools
314 # Except the listed exceptions:
315 # LICENSE="MIT"
316
317 # mcs/tools/mdoc/Mono.Documentation/monodocs2html.cs
318 # LICENSE="GPL-2"
319
320 # mcs/tools/sqlsharp/SqlSharpCli.cs
321 # LICENSE="GPL-2"
322
323 # mcs/tools/csharp/repl.cs
324 # LICENSE="|| ( MIT GPL-2 )"
325
326 # mcs/tools/mono-win32-setup.nsi
327 # LICENSE="GPL-2"
328
329 # samples
330 # LICENSE="MIT"