Gentoo Archives: gentoo-commits

From: "Pacho Ramos (pacho)" <pacho@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/mono: mono-2.8.1-r1.ebuild ChangeLog mono-2.8.1.ebuild
Date: Sat, 27 Nov 2010 15:50:59
Message-Id: 20101127155040.5FC8C20051@flycatcher.gentoo.org
1 pacho 10/11/27 15:50:40
2
3 Modified: ChangeLog
4 Added: mono-2.8.1-r1.ebuild
5 Removed: mono-2.8.1.ebuild
6 Log:
7 Backport upstream patch to fix radegast crash (bug #341435 by tman).
8
9 (Portage version: 2.1.9.24/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.205 dev-lang/mono/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.205&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mono/ChangeLog?rev=1.205&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mono/ChangeLog?r1=1.204&r2=1.205
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v
21 retrieving revision 1.204
22 retrieving revision 1.205
23 diff -u -r1.204 -r1.205
24 --- ChangeLog 26 Nov 2010 10:47:43 -0000 1.204
25 +++ ChangeLog 27 Nov 2010 15:50:40 -0000 1.205
26 @@ -1,6 +1,12 @@
27 # ChangeLog for dev-lang/mono
28 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.204 2010/11/26 10:47:43 pacho Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.205 2010/11/27 15:50:40 pacho Exp $
31 +
32 +*mono-2.8.1-r1 (27 Nov 2010)
33 +
34 + 27 Nov 2010; Pacho Ramos <pacho@g.o> -mono-2.8.1.ebuild,
35 + +mono-2.8.1-r1.ebuild, +files/mono-2.8.1-radegast-crash.patch:
36 + Backport upstream patch to fix radegast crash (bug #341435 by tman).
37
38 *mono-2.8.1 (26 Nov 2010)
39
40
41
42
43 1.1 dev-lang/mono/mono-2.8.1-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mono/mono-2.8.1-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mono/mono-2.8.1-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: mono-2.8.1-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2010 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/mono-2.8.1-r1.ebuild,v 1.1 2010/11/27 15:50:40 pacho Exp $
53
54 EAPI="2"
55
56 inherit linux-info mono eutils flag-o-matic multilib go-mono pax-utils
57
58 DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter"
59 HOMEPAGE="http://www.go-mono.com"
60
61 LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL"
62 SLOT="0"
63 KEYWORDS="~amd64 ~ppc ~x86"
64
65 IUSE="hardened minimal xen"
66
67 #Bash requirement is for += operator
68 COMMONDEPEND="!<dev-dotnet/pnet-0.6.12
69 !dev-util/monodoc
70 !minimal? ( =dev-dotnet/libgdiplus-${GO_MONO_REL_PV}* )
71 ia64? ( sys-libs/libunwind )"
72 RDEPEND="${COMMONDEPEND}
73 || ( www-client/links www-client/lynx )"
74
75 DEPEND="${COMMONDEPEND}
76 sys-devel/bc
77 >=app-shells/bash-3.2
78 hardened? ( sys-apps/paxctl )"
79
80 MAKEOPTS="${MAKEOPTS} -j1"
81
82 RESTRICT="test"
83
84 PATCHES=(
85 "${WORKDIR}/${PN}-2.8-libdir.patch"
86 "${FILESDIR}/${PN}-2.2-ppc-threading.patch"
87 "${FILESDIR}/${PN}-2.2-uselibdir.patch"
88 "${FILESDIR}/${PN}-2.8.1-radegast-crash.patch"
89 )
90
91 pkg_setup() {
92 if use kernel_linux
93 then
94 get_version
95 if linux_config_exists
96 then
97 if linux_chkconfig_present SYSVIPC
98 then
99 einfo "CONFIG_SYSVIPC is set, looking good."
100 else
101 eerror "If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling."
102 eerror "See http://bugs.gentoo.org/261869 for more info."
103 die "Please set CONFIG_SYSVIPC in your kernel .config"
104 fi
105 else
106 ewarn "Was unable to determine your kernel .config"
107 ewarn "Please note that if CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling."
108 ewarn "See http://bugs.gentoo.org/261869 for more info."
109 fi
110 fi
111 }
112
113 src_prepare() {
114 sed -e "s:@MONOLIBDIR@:$(get_libdir):" \
115 < "${FILESDIR}"/${PN}-2.8-libdir.patch \
116 > "${WORKDIR}"/${PN}-2.8-libdir.patch ||
117 die "Sedding patch file failed"
118 go-mono_src_prepare
119
120 # we need to sed in the paxctl -m in the runtime/mono-wrapper.in so it don't
121 # get killed in the build proces when MPROTEC is enable. #286280
122 if use hardened ; then
123 ewarn "We are disabling MPROTECT on the mono binary."
124 sed '/exec/ i\paxctl -m "$r/@mono_runtime@"' -i "${S}"/runtime/mono-wrapper.in
125 fi
126 }
127
128 src_configure() {
129 # mono's build system is finiky, strip the flags
130 strip-flags
131
132 #Remove this at your own peril. Mono will barf in unexpected ways.
133 append-flags -fno-strict-aliasing
134
135 # NOTE: We need the static libs for now so mono-debugger works.
136 # See http://bugs.gentoo.org/show_bug.cgi?id=256264 for details
137 #
138 # --without-moonlight since www-plugins/moonlight is not the only one
139 # using mono: https://bugzilla.novell.com/show_bug.cgi?id=641005#c3
140 #
141 # --with-profile4 needs to be always enabled since it's used by default
142 # and, otherwise, problems like bug #340641 appear.
143
144 go-mono_src_configure \
145 --enable-static \
146 --disable-quiet-build \
147 --without-moonlight \
148 --with-libgdiplus=$(use minimal && printf "no" || printf "installed" ) \
149 $(use_with xen xen_opt) \
150 --without-ikvm-native \
151 --with-jit \
152 --disable-dtrace \
153 --with-profile4
154 }
155
156 src_test() {
157 echo ">>> Test phase [check]: ${CATEGORY}/${PF}"
158
159 export MONO_REGISTRY_PATH="${T}/registry"
160 export XDG_DATA_HOME="${T}/data"
161 export MONO_SHARED_DIR="${T}/shared"
162 export XDG_CONFIG_HOME="${T}/config"
163 export HOME="${T}/home"
164
165 emake -j1 check
166 }
167
168 src_install() {
169 go-mono_src_install
170
171 #Bug 255610
172 sed -i -e "s:mono/2.0/mod.exe:mono/1.0/mod.exe:" \
173 "${D}"/usr/bin/mod || die "Failed to fix mod."
174
175 find "${D}"/usr/ -name '*nunit-docs*' -exec rm -rf '{}' '+' || die "Removing nunit .docs failed"
176
177 # Remove Jay to avoid colliding with dev-util/jay, the internal
178 # version is only used to build mcs.
179 rm -r "${D}"/usr/share/jay "${D}"/usr/bin/jay "${D}"/usr/share/man/man1/jay.1*
180 }
181
182 #THINK!!!! Before touching postrm and postinst
183 #Reference phase order:
184 #pkg_preinst
185 #pkg_prerm
186 #pkg_postrm
187 #pkg_postinst
188
189 pkg_preinst() {
190 local symlink
191 local NUNIT_DIR="/usr/$(get_libdir)/mono/nunit"
192 local pv_atom
193 if [[ "$(readlink "${ROOT}"/${NUNIT_DIR})" == *"mono-nunit"* ]]
194 then
195 for pv_atom in 2.2{,-r1,-r2,-r3,-r4} '2.4_pre*' '2.4_rc*' 2.4
196 do
197 if has_version "=dev-lang/mono-${pv_atom}"
198 then
199 einfo "If you just received a file collision warning message,"
200 einfo "be advised that this is a known problem, which will now be fixed:"
201 ebegin "Found broken symlinks created by $(best_version dev-lang/mono), fixing"
202 for symlink in \
203 "${ROOT}/${NUNIT_DIR}" \
204 "${ROOT}/usr/$(get_libdir)/pkgconfig/nunit.pc" \
205 "${ROOT}/usr/bin/nunit-console" \
206 "${ROOT}/usr/bin/nunit-console2"
207 do
208 if [[ -L "${symlink}" ]]
209 then
210 rm -f "${symlink}" &> /dev/null
211 fi
212 done
213 eend 0
214 break
215 fi
216 done
217 fi
218 }
219
220 pkg_postinst() {
221 elog "PLEASE TAKE NOTE!"
222 elog ""
223 elog "Some of the namespaces supported by Mono require extra packages to be installed."
224 elog "Below is a list of namespaces and the corresponding package you must install:"
225 elog ""
226 elog ">=x11-libs/cairo-1.6.4"
227 elog " Mono.Cairo"
228 elog "Also read:"
229 elog "http://www.mono-project.com/Mono.Cairo"
230 elog ""
231 elog ">=dev-db/firebird-2.0.4.13130.1"
232 elog " FirebirdSql.Data.Firebird"
233 elog "Also read:"
234 elog "http://www.mono-project.com/Firebird_Interbase"
235 elog ""
236 elog "=dev-dotnet/gluezilla-${GO_MONO_REL_PV}*"
237 elog " Mono.Mozilla"
238 elog " Mono.Mozilla.WebBrowser"
239 elog " Mono.Mozilla.Widget"
240 elog " Interop.SHDocVw"
241 elog " AxInterop.SHDocVw"
242 elog " Interop.mshtml.dll"
243 elog " System.Windows.Forms.WebBrowser"
244 elog " Microsoft.IE"
245 elog "Also read:"
246 elog "http://www.mono-project.com/WebBrowser"
247 elog ""
248 elog "dev-db/sqlite:3"
249 elog " Mono.Data.Sqlite"
250 elog "Also read:"
251 elog "http://www.mono-project.com/SQLite"
252 elog ""
253 elog ">=dev-db/oracle-instantclient-basic-10.2"
254 elog " System.Data.OracleClient"
255 elog "Also read:"
256 elog "http://www.mono-project.com/Oracle"
257 elog ""
258 elog "Mono also has support for packages that are not included in portage:"
259 elog ""
260 elog "No ebuild available:"
261 elog " IBM.Data.DB2"
262 elog "Also read: http://www.mono-project.com/IBM_DB2"
263 elog ""
264 elog "No ebuild needed:"
265 elog " Mono.Data.SybaseClient"
266 elog "Also read: http://www.mono-project.com/Sybase"
267 }
268
269 # NOTICE: THE COPYRIGHT FILES IN THE TARBALL ARE UNCLEAR!
270 # WHENEVER YOU THINK SOMETHING IS GPL-2+, IT'S ONLY GPL-2
271 # UNLESS MIGUEL DE ICAZA HIMSELF SAYS OTHERWISE.
272
273 # mono
274 # The code we use is LGPL, but contributions must be made under the MIT/X11
275 # license, so Novell can serve its paying customers. Exception is mono/man.
276 # LICENSE="LGPL-2.1"
277
278 # mono/man
279 # LICENSE="MIT"
280
281 # mcs/mcs
282 # mcs/gmcs
283 # LICENSE="GPL-2 MIT"
284
285 # tests
286 # LICENSE="MIT"
287
288 # mcs/class
289 # Except the listed exceptions:
290 # LICENSE="MIT"
291
292 # mcs/class/ByteFX.Data
293 # mcs/class/Npgsql
294 # LICENSE="LGPL-2.1"
295
296 # mcs/class/FirebirdSql.Data.Firebird
297 # LICENSE="IDPL"
298
299 # mcs/class/ICSharpCode.SharpZipLib
300 # LICENSE="GPL-2-with-linking-exception"
301
302 # mcs/class/MicrosoftAjaxLibrary
303 # LICENSE="Ms-Pl"
304
305 # mcs/class/Microsoft.JScript/Microsoft.JScript/TokenStream.cs
306 # mcs/class/Microsoft.JScript/Microsoft.JScript/Token.cs
307 # mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
308 # mcs/class/Microsoft.JScript/Microsoft.JScript/Decompiler.cs
309 # LICENSE="|| ( NPL-1.1 GPL-2 )"
310
311 # mcs/jay
312 # LICENSE="BSD-4"
313
314 # mcs/tools
315 # Except the listed exceptions:
316 # LICENSE="MIT"
317
318 # mcs/tools/mdoc/Mono.Documentation/monodocs2html.cs
319 # LICENSE="GPL-2"
320
321 # mcs/tools/sqlsharp/SqlSharpCli.cs
322 # LICENSE="GPL-2"
323
324 # mcs/tools/csharp/repl.cs
325 # LICENSE="|| ( MIT GPL-2 )"
326
327 # mcs/tools/mono-win32-setup.nsi
328 # LICENSE="GPL-2"
329
330 # samples
331 # LICENSE="MIT"