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: ChangeLog mono-2.2-r2.ebuild mono-2.2-r1.ebuild
Date: Tue, 20 Jan 2009 13:51:47
Message-Id: E1LPH16-0000ZD-Au@stork.gentoo.org
1 loki_val 09/01/20 13:51:44
2
3 Modified: ChangeLog
4 Added: mono-2.2-r2.ebuild
5 Removed: mono-2.2-r1.ebuild
6 Log:
7 Fix bug 255610, /usr/bin/mod doesn't work. Also include patch for upstream bug 458168, crasher bug that could be triggered during compilation.
8 (Portage version: 2.2_rc22/cvs/Linux 2.6.28 x86_64)
9
10 Revision Changes Path
11 1.151 dev-lang/mono/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.151&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.151&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/ChangeLog?r1=1.150&r2=1.151
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v
20 retrieving revision 1.150
21 retrieving revision 1.151
22 diff -u -r1.150 -r1.151
23 --- ChangeLog 19 Jan 2009 21:30:19 -0000 1.150
24 +++ ChangeLog 20 Jan 2009 13:51:44 -0000 1.151
25 @@ -1,6 +1,14 @@
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.150 2009/01/19 21:30:19 loki_val Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.151 2009/01/20 13:51:44 loki_val Exp $
30 +
31 +*mono-2.2-r2 (20 Jan 2009)
32 +
33 + 20 Jan 2009; Peter Alfredsen <loki_val@g.o>
34 + +files/mono-2.2-r121596-work-around-runtime-crash.patch,
35 + -mono-2.2-r1.ebuild, +mono-2.2-r2.ebuild:
36 + Fix bug 255610, /usr/bin/mod doesn't work. Also include patch for upstream
37 + bug 458168, crasher bug that could be triggered during compilation.
38
39 *mono-2.2-r1 (19 Jan 2009)
40
41
42
43
44 1.1 dev-lang/mono/mono-2.2-r2.ebuild
45
46 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/mono-2.2-r2.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/mono/mono-2.2-r2.ebuild?rev=1.1&content-type=text/plain
48
49 Index: mono-2.2-r2.ebuild
50 ===================================================================
51 # Copyright 1999-2009 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/mono-2.2-r2.ebuild,v 1.1 2009/01/20 13:51:44 loki_val Exp $
54
55 EAPI=2
56
57 inherit mono eutils flag-o-matic multilib go-mono
58
59 DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter"
60 HOMEPAGE="http://www.go-mono.com"
61
62 LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL"
63 SLOT="0"
64 KEYWORDS="~x86 ~amd64"
65 IUSE="xen moonlight minimal"
66
67 #Bash requirement is for += operator
68 COMMONDEPEND="!<dev-dotnet/pnet-0.6.12
69 !dev-util/monodoc
70 dev-libs/glib:2
71 !minimal? ( =dev-dotnet/gluezilla-${GO_MONO_REL_PV}* )
72 ia64? (
73 sys-libs/libunwind
74 )"
75 RDEPEND="${COMMONDEPEND}
76 !minimal? ( =dev-dotnet/libgdiplus-${GO_MONO_REL_PV}* )
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 )
94
95 pkg_setup() {
96 MONO_NUNIT_DIR="/usr/$(get_libdir)/mono/mono-nunit"
97 NUNIT_DIR="/usr/$(get_libdir)/mono/nunit"
98 }
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
110 src_configure() {
111 # mono's build system is finiky, strip the flags
112 strip-flags
113
114 #Remove this at your own peril. Mono will barf in unexpected ways.
115 append-flags -fno-strict-aliasing
116
117 go-mono_src_configure \
118 --disable-quiet-build \
119 --with-preview \
120 --with-glib=system \
121 $(use_with moonlight) \
122 --with-libgdiplus=$(use minimal && printf "no" || printf "installed" ) \
123 $(use_with xen xen_opt) \
124 --without-ikvm-native \
125 --with-jit
126
127 }
128
129 src_test() {
130 vecho ">>> Test phase [check]: ${CATEGORY}/${PF}"
131
132 export MONO_REGISTRY_PATH="${T}/registry"
133 export XDG_DATA_HOME="${T}/data"
134 export MONO_SHARED_DIR="${T}/shared"
135 export XDG_CONFIG_HOME="${T}/config"
136 export HOME="${T}/home"
137
138 emake -j1 check
139 }
140
141 src_install() {
142 go-mono_src_install
143 #Bug 255610
144 sed -i -e "s:mono/2.0/mod.exe:mono/1.0/mod.exe:" \
145 "${D}"/usr/bin/mod || die "Failed to fix mod."
146
147 docinto docs
148 dodoc docs/*
149
150 docinto libgc
151 dodoc libgc/ChangeLog
152
153 find "${D}"/usr/ -name '*nunit-docs*' -exec rm -rf '{}' '+' || die "Removing nunit .docs failed"
154
155 #Standardize install paths for eselect-nunit
156 dodir ${MONO_NUNIT_DIR}
157 rm -f "${D}"/usr/bin/nunit-console*
158
159 for file in "${D}"/usr/$(get_libdir)/mono/1.0/nunit*.dll "${D}"/usr/$(get_libdir)/mono/1.0/nunit*.exe
160 do
161 dosym ../1.0/${file##*/} ${MONO_NUNIT_DIR}/${file##*/}
162 done
163
164 make_wrapper "nunit-console" "mono ${MONO_NUNIT_DIR}/nunit-console.exe" "" "" "${MONO_NUNIT_DIR}"
165 dosym nunit-console "${MONO_NUNIT_DIR}"/nunit-console2
166 }
167
168 #THINK!!!! Before touching postrm and postinst
169 #Reference phase order:
170 #pkg_preinst
171 #pkg_prerm
172 #pkg_postrm
173 #pkg_postinst
174
175
176 pkg_postrm() {
177 if [[ "$(readlink "${ROOT}"/${NUNIT_DIR})" == *"mono-nunit" ]]
178 then
179 ebegin "Removing old symlinks for nunit"
180 rm -rf "${ROOT}"/${NUNIT_DIR} &> /dev/null
181 rm -rf "${ROOT}"/usr/bin/nunit-console &> /dev/null
182 rm -rf "${ROOT}"/usr/bin/nunit-console2 &> /dev/null
183 rm -rf "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc &> /dev/null
184 eend 0
185 fi
186 }
187
188 pkg_postinst() {
189 local -a FAIL
190 local fail return=0
191 if ! [[ -L "${ROOT}/${NUNIT_DIR}" ]]
192 then
193 einfo "No default NUnit installed, using mono-nunit as default."
194 ebegin "Removing stale symlinks for nunit, if any"
195 rm -rf "${ROOT}"/${NUNIT_DIR} &> /dev/null
196 rm -rf "${ROOT}"/usr/bin/nunit-console &> /dev/null
197 rm -rf "${ROOT}"/usr/bin/nunit-console2 &> /dev/null
198 rm -rf "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc &> /dev/null
199 eend 0
200
201 ebegin "Installing mono-nunit symlinks"
202 ln -sf mono-nunit "${ROOT}/${NUNIT_DIR}" || { return=1; FAIL+=( $NUNIT_DIR ) ; }
203 ln -sf ../..${NUNIT_DIR}/nunit-console "${ROOT}"/usr/bin/nunit-console || { return=1; FAIL+=( /usr/bin/nunit-console ) ; }
204 ln -sf ../..${NUNIT_DIR}/nunit-console2 "${ROOT}"/usr/bin/nunit-console2 || { return=1; FAIL+=( /usr/bin/nunit-console2 ) ; }
205 ln -sf mono-nunit.pc "${ROOT}"/usr/$(get_libdir)/pkgconfig/nunit.pc || { return=1; FAIL+=( /usr/$(get_libdir)/pkgconfig/nunit.pc ) ; }
206 eend $return
207
208 if [[ "$return" = "1" ]]
209 then
210 elog "These errors are non-fatal, if re-emerging mono does not solve them, file a bug."
211 for fail in "${FAIL[@]}"
212 do
213 eerror "Linking $fail failed"
214 done
215 fi
216 fi
217 }
218
219
220 # NOTICE: THE COPYRIGHT FILES IN THE TARBALL ARE UNCLEAR!
221 # WHENEVER YOU THINK SOMETHING IS GPL-2+, IT'S ONLY GPL-2
222 # UNLESS MIGUEL DE ICAZA HIMSELF SAYS OTHERWISE.
223
224 # mono
225 # The code we use is LGPL, but contributions must be made under the MIT/X11
226 # license, so Novell can serve its paying customers. Exception is mono/man.
227 # LICENSE="LGPL-2.1"
228
229 # mono/man
230 # LICENSE="MIT"
231
232 # mcs/mcs
233 # mcs/gmcs
234 # LICENSE="GPL-2 MIT"
235
236 # tests
237 # LICENSE="MIT"
238
239 # mcs/class
240 # Except the listed exceptions:
241 # LICENSE="MIT"
242
243 # mcs/class/ByteFX.Data
244 # mcs/class/Npgsql
245 # LICENSE="LGPL-2.1"
246
247 # mcs/class/FirebirdSql.Data.Firebird
248 # LICENSE="IDPL"
249
250 # mcs/class/ICSharpCode.SharpZipLib
251 # LICENSE="GPL-2-with-linking-exception"
252
253 # mcs/class/MicrosoftAjaxLibrary
254 # LICENSE="Ms-Pl"
255
256 # mcs/class/Microsoft.JScript/Microsoft.JScript/TokenStream.cs
257 # mcs/class/Microsoft.JScript/Microsoft.JScript/Token.cs
258 # mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
259 # mcs/class/Microsoft.JScript/Microsoft.JScript/Decompiler.cs
260 # LICENSE="|| ( NPL-1.1 GPL-2 )"
261
262 # mcs/jay
263 # LICENSE="BSD-4"
264
265 # mcs/tools
266 # Except the listed exceptions:
267 # LICENSE="MIT"
268
269 # mcs/tools/mdoc/Mono.Documentation/monodocs2html.cs
270 # LICENSE="GPL-2"
271
272 # mcs/tools/sqlsharp/SqlSharpCli.cs
273 # LICENSE="GPL-2"
274
275 # mcs/tools/csharp/repl.cs
276 # LICENSE="|| ( MIT GPL-2 )"
277
278 # mcs/tools/mono-win32-setup.nsi
279 # LICENSE="GPL-2"
280
281 # samples
282 # LICENSE="MIT"