Gentoo Archives: gentoo-commits

From: Mikhail Pukhlikov <cynede@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/dotnet:master commit in: dev-lang/mono/
Date: Thu, 25 Aug 2016 17:41:24
Message-Id: 1472027639.53041950257b571c027ee921ae249eb1939823a5.cynede@gentoo
1 commit: 53041950257b571c027ee921ae249eb1939823a5
2 Author: ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
3 AuthorDate: Wed Aug 24 08:33:59 2016 +0000
4 Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
5 CommitDate: Wed Aug 24 08:33:59 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=53041950
7
8 version bump (no changes)
9
10 dev-lang/mono/mono-4.6.0.150.ebuild | 114 ++++++++++++++++++++++++++++++++++++
11 1 file changed, 114 insertions(+)
12
13 diff --git a/dev-lang/mono/mono-4.6.0.150.ebuild b/dev-lang/mono/mono-4.6.0.150.ebuild
14 new file mode 100644
15 index 0000000..a228416
16 --- /dev/null
17 +++ b/dev-lang/mono/mono-4.6.0.150.ebuild
18 @@ -0,0 +1,114 @@
19 +# Copyright 1999-2016 Gentoo Foundation
20 +# Distributed under the terms of the GNU General Public License v2
21 +# $Id$
22 +
23 +EAPI=6
24 +
25 +inherit eutils linux-info mono-env flag-o-matic pax-utils versionator multilib-minimal
26 +
27 +DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter"
28 +HOMEPAGE="http://www.mono-project.com/Main_Page"
29 +SRC_URI="http://download.mono-project.com/sources/${PN}/${P}.tar.bz2"
30 +
31 +LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL"
32 +SLOT="0"
33 +
34 +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux"
35 +
36 +IUSE="nls minimal pax_kernel xen doc"
37 +
38 +COMMONDEPEND="
39 + !minimal? ( >=dev-dotnet/libgdiplus-2.10 )
40 + ia64? ( sys-libs/libunwind )
41 + nls? ( sys-devel/gettext )
42 +"
43 +RDEPEND="${COMMONDEPEND}
44 + || ( www-client/links www-client/lynx )
45 +"
46 +DEPEND="${COMMONDEPEND}
47 + sys-devel/bc
48 + virtual/yacc
49 + pax_kernel? ( sys-apps/elfix )
50 + !dev-lang/mono-basic
51 +"
52 +
53 +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)"
54 +
55 +pkg_pretend() {
56 + # https://github.com/gentoo/gentoo/blob/f200e625bda8de696a28338318c9005b69e34710/eclass/linux-info.eclass#L686
57 + # If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling.
58 + # See http://bugs.gentoo.org/261869 for more info."
59 + CONFIG_CHECK="SYSVIPC"
60 + use kernel_linux && check_extra_config
61 +}
62 +
63 +pkg_setup() {
64 + linux-info_pkg_setup
65 + mono-env_pkg_setup
66 +}
67 +
68 +src_prepare() {
69 + # we need to sed in the paxctl-ng -mr in the runtime/mono-wrapper.in so it don't
70 + # get killed in the build proces when MPROTECT is enable. #286280
71 + # RANDMMAP kill the build proces to #347365
72 + # use paxmark.sh to get PT/XT logic #532244
73 + if use pax_kernel ; then
74 + ewarn "We are disabling MPROTECT on the mono binary."
75 +
76 + # issue 9 : https://github.com/Heather/gentoo-dotnet/issues/9
77 + sed '/exec "/ i\paxmark.sh -mr "$r/@mono_runtime@"' -i "${S}"/runtime/mono-wrapper.in || die "Failed to sed mono-wrapper.in"
78 + fi
79 +
80 + # mono build system can fail otherwise
81 + strip-flags
82 +
83 + # Fix VB targets
84 + # http://osdir.com/ml/general/2015-05/msg20808.html
85 + #eapply "${FILESDIR}/add_missing_vb_portable_targets.patch"
86 +
87 + # Fix build when sgen disabled
88 + # https://bugzilla.xamarin.com/show_bug.cgi?id=32015
89 + #eapply "${FILESDIR}/${PN}-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch"
90 +
91 + # TODO: update patch
92 + # Fix atomic_add_i4 support for 32-bit ppc
93 + # https://github.com/mono/mono/compare/f967c79926900343f399c75624deedaba460e544^...8f379f0c8f98493180b508b9e68b9aa76c0c5bdf
94 + #epatch "${FILESDIR}/${PN}-4.0.2.5-fix-ppc-atomic-add-i4.patch"
95 +
96 + # TODO: update patch
97 + #epatch "${FILESDIR}/systemweb3.patch"
98 + #epatch "${FILESDIR}/fix-for-GitExtensions-issue-2710-another-resolution.patch"
99 + #epatch "${FILESDIR}/fix-for-bug36724.patch"
100 +
101 + default
102 + #eapply_user
103 + multilib_copy_sources
104 +}
105 +
106 +multilib_src_configure() {
107 + local myeconfargs=(
108 + --disable-silent-rules
109 + $(use_with xen xen_opt)
110 + --without-ikvm-native
111 + --disable-dtrace
112 + $(use_with doc mcs-docs)
113 + $(use_enable nls)
114 + )
115 +
116 + econf "${myeconfargs[@]}"
117 +}
118 +
119 +multilib_src_test() {
120 + cd mcs/tests || die
121 + emake check
122 +}
123 +
124 +multilib_src_install() {
125 + default_src_install
126 +
127 + # Remove files not respecting LDFLAGS and that we are not supposed to provide, see Fedora
128 + # mono.spec and http://www.mail-archive.com/mono-devel-list@××××××××××××.com/msg24870.html
129 + # for reference.
130 + rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mscorlib.dll.so || die
131 + rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mcs.exe.so || die
132 +}