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