diff options
author | Heather Cynede <cynede@gentoo.org> | 2015-08-12 17:56:06 +0400 |
---|---|---|
committer | Heather Cynede <cynede@gentoo.org> | 2015-08-12 17:58:41 +0400 |
commit | 8f5667689e69837a94170aa003a3bfbc3ea207c7 (patch) | |
tree | 2d6c59343029cedbe4d1b80f7ff676e70ba1842c /dev-lang | |
parent | sys-libs/ncurses: fix header mismatch with multilib installs #557360 (diff) | |
download | gentoo-8f5667689e69837a94170aa003a3bfbc3ea207c7.tar.gz gentoo-8f5667689e69837a94170aa003a3bfbc3ea207c7.tar.bz2 gentoo-8f5667689e69837a94170aa003a3bfbc3ea207c7.zip |
dev-lang/mono bump to 4.0.3.20
Package-Manager: portage-2.2.20.1
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/mono/Manifest | 4 | ||||
-rw-r--r-- | dev-lang/mono/files/add_missing_vb_portable_targets.patch | 20 | ||||
-rw-r--r-- | dev-lang/mono/files/mono-3.2.1-mdoc-fix.patch | 12 | ||||
-rw-r--r-- | dev-lang/mono/files/mono-4.0.2.5-fix-decimal-ms-on-big-endian.patch | 22 | ||||
-rw-r--r-- | dev-lang/mono/files/mono-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch | 15 | ||||
-rw-r--r-- | dev-lang/mono/files/mono-4.0.2.5-fix-ppc-atomic-add-i4.patch | 79 | ||||
-rw-r--r-- | dev-lang/mono/files/systemweb3.patch | 22 | ||||
-rw-r--r-- | dev-lang/mono/mono-2.10.9-r2.ebuild | 265 | ||||
-rw-r--r-- | dev-lang/mono/mono-3.0.7.ebuild | 100 | ||||
-rw-r--r-- | dev-lang/mono/mono-4.0.3.20.ebuild (renamed from dev-lang/mono/mono-3.2.8.ebuild) | 73 |
10 files changed, 199 insertions, 413 deletions
diff --git a/dev-lang/mono/Manifest b/dev-lang/mono/Manifest index 89fd30f3002c..af6730b7468a 100644 --- a/dev-lang/mono/Manifest +++ b/dev-lang/mono/Manifest @@ -1,5 +1,3 @@ -DIST mono-2.10.9.tar.bz2 34038017 SHA256 541038cd4edd4a1c485638d49697d45015ef7483bcb21bb6165e4d7eb770c9a5 SHA512 426881873e7f9aaf01e1306bed7b3ac220082ca40dce91fa4f4f331944e8d91453b3cdcc4918882ab039ed694ae8819eeb787edf6a2ad42cc661614076725c01 WHIRLPOOL 93f54fbbf032fb60467fd4317630588d349c3dfb50158bad478bd3e2650fd3e8f12d45be372873b57626d4ac48f798646c3650590bbf731dc2f005ee618b8548 -DIST mono-3.0.7.tar.bz2 81538605 SHA256 89357e58a1b5cb6ff3116d4ce8227dee61b1c0cb494fa2844da5b1fc55fb890b SHA512 b1cb57a38c22d9186fcc1cfbd344e05e24edc5d56391238311ac6b2841a4f971a32f46c3e064760045e8352140a7c4fe785a6108d945371af9de3730e186fbdd WHIRLPOOL 19f451194361d0f0fa3c403310c63cd2f444a2132693fc4b127311a57d0a1df18f917d4c373b8f8f9fbf217d5c6d85f3092ac75d6aede285ed80d3bb2b07f758 DIST mono-3.12.1.tar.bz2 73487974 SHA256 5d8cf153af2948c06bc9fbf5088f6834868e4db8e5f41c7cff76da173732b60d SHA512 7ff87d95c347186347dc7a9ffb767112717de2b808f8f1b612c56c9eb70fdcc0c8f586989be44444509a2768e71854d8195567196c992cc2c5b184ecbe5ac190 WHIRLPOOL fe3a6cdb8bf4602ad1d1e43099b2a552005c315a232a7d2bddf0081a68e882228712af5301f18d3a890f454041c4a34d6f0926aaba34401ecfa702eecd9415c8 DIST mono-3.2.3.tar.bz2 81810387 SHA256 b8c2f97d6a5232dbf5a8180e5c38d4722b81af748893649d7d9e82c5cf8ef41a SHA512 a40a03d09ce07d7f8c25ef872835f6f29458e02aa386e4097b2cffd918d3bece1205bb42beb51a1384eba884e4c6f9b6505421babf337ec64f670c7f90c6262d WHIRLPOOL 9781dd387ce57a54ae84c91b6bfc346c4607daa3738746db0f41515dfc6c0b271b6e7d2ec828f75dc6953d15fd965cd3ef1d88fe5925c6dc8019cc9d188d6982 -DIST mono-3.2.8.tar.bz2 77515552 SHA256 fdb48cad26149288dcb99a3d9b4ec89735706000242c50bdc21ce657af201a40 SHA512 822e9064b7f5897f960e3fbe9de5db31ac1825ecb6edb2b5b49d92fc658fe3ac2580458ecb26b6da7b6135e86a39d7376b8c0eb52d8c3298292a4dae7983f329 WHIRLPOOL 21e22fe0204ae9263f10fa5379d7c884519bb5cddf6f780f5ba6615db25954b1ea8ef1746ee8db738f7d461e93626656525da5cc6221061e8a53bdd0d0c5f62c +DIST mono-4.0.3.20.tar.bz2 95987018 SHA256 976c0be3ab9b66361f48e8133c60b1b2942b88c44a7a11a19cd98f5ff64313fc SHA512 bbf65abb4d91aa65fd467a59dcc7c290f779ab9f8df9d82b56957893556ad8d13dc3cc85f3128145e0dd15aaa8b0ea872c4b66af4fd211243d368514f10a07cd WHIRLPOOL 9e7730c234dbf34a81637789a3ffee4ce37a1eaef6748f28a79875411d3c1d97cfbdce6146abfa7dde245e821fe52b2766bb7240637a8b8272788dffc5fd21ae diff --git a/dev-lang/mono/files/add_missing_vb_portable_targets.patch b/dev-lang/mono/files/add_missing_vb_portable_targets.patch new file mode 100644 index 000000000000..ece90a587713 --- /dev/null +++ b/dev-lang/mono/files/add_missing_vb_portable_targets.patch @@ -0,0 +1,20 @@ +Index: mcs/tools/xbuild/targets/Microsoft.Portable.VisualBasic_4.0.targets +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ mcs/tools/xbuild/targets/Microsoft.Portable.VisualBasic_4.0.targets 2015-05-15 15:55:12.074775985 +0100 +@@ -0,0 +1,5 @@ ++<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> ++ <Import Project="..\Microsoft.Portable.Core.props" /> ++ <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> ++ <Import Project="..\Microsoft.Portable.Core.targets" /> ++</Project> +Index: mcs/tools/xbuild/targets/Microsoft.Portable.VisualBasic_4.5.targets +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ mcs/tools/xbuild/targets/Microsoft.Portable.VisualBasic_4.5.targets 2015-05-15 15:55:19.194775876 +0100 +@@ -0,0 +1,5 @@ ++<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> ++ <Import Project="..\Microsoft.Portable.Core.props" /> ++ <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> ++ <Import Project="..\Microsoft.Portable.Core.targets" /> ++</Project> diff --git a/dev-lang/mono/files/mono-3.2.1-mdoc-fix.patch b/dev-lang/mono/files/mono-3.2.1-mdoc-fix.patch new file mode 100644 index 000000000000..b8fcea967892 --- /dev/null +++ b/dev-lang/mono/files/mono-3.2.1-mdoc-fix.patch @@ -0,0 +1,12 @@ +diff -Naur mono-3.2.1.orig/mcs/tools/mdoc/Resources/monodoc-ecma.xsd mono-3.2.1/mcs/tools/mdoc/Resources/monodoc-ecma.xsd +--- mono-3.2.1.orig/mcs/tools/mdoc/Resources/monodoc-ecma.xsd 2013-08-26 09:33:59.410610438 +0200 ++++ mono-3.2.1/mcs/tools/mdoc/Resources/monodoc-ecma.xsd 2013-08-26 09:34:54.057804438 +0200 +@@ -351,7 +351,7 @@ + <xs:element name="format"> + <xs:complexType> + <xs:sequence> +- <xs:any minOccurs="0" processContents="lax" /> ++ <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax" /> + </xs:sequence> + <xs:attribute ref="type" /> + </xs:complexType> diff --git a/dev-lang/mono/files/mono-4.0.2.5-fix-decimal-ms-on-big-endian.patch b/dev-lang/mono/files/mono-4.0.2.5-fix-decimal-ms-on-big-endian.patch new file mode 100644 index 000000000000..c6349fe3828a --- /dev/null +++ b/dev-lang/mono/files/mono-4.0.2.5-fix-decimal-ms-on-big-endian.patch @@ -0,0 +1,22 @@ +diff -up mono/metadata/decimal-ms.c.than +mono/metadata/decimal-ms.c +--- mono/metadata/decimal-ms.c.than 2015-07-06 08:21:27.524461795 +-0400 ++++ mono/metadata/decimal-ms.c 2015-07-06 08:30:26.954461795 +-0400 +@@ -55,8 +55,13 @@ static const uint32_t ten_to_ten_div_4 = + #define DECIMAL_LO32(dec) ((dec).v.v.Lo32) + #define DECIMAL_MID32(dec) ((dec).v.v.Mid32) + #define DECIMAL_HI32(dec) ((dec).Hi32) +-#define DECIMAL_LO64_GET(dec) ((dec).v.Lo64) +-#define DECIMAL_LO64_SET(dec,value) {(dec).v.Lo64 = value; } ++#if G_BYTE_ORDER != G_LITTLE_ENDIAN ++# define DECIMAL_LO64_GET(dec) (((uint64_t)((dec).v.v.Mid32) << 32) | (dec).v.v.Lo32) ++# define DECIMAL_LO64_SET(dec,value) {(dec).v.v.Lo32 = (value); (dec).v.v.Mid32 = ((value) >> 32); } ++#else ++# define DECIMAL_LO64_GET(dec) ((dec).v.Lo64) ++# define DECIMAL_LO64_SET(dec,value) {(dec).v.Lo64 = value; } ++#endif + + #define DECIMAL_SETZERO(dec) {DECIMAL_LO32(dec) = 0; DECIMAL_MID32(dec) = 0; DECIMAL_HI32(dec) = 0; DECIMAL_SIGNSCALE(dec) = 0;} + #define COPYDEC(dest, src) {DECIMAL_SIGNSCALE(dest) = DECIMAL_SIGNSCALE(src); DECIMAL_HI32(dest) = DECIMAL_HI32(src); \ diff --git a/dev-lang/mono/files/mono-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch b/dev-lang/mono/files/mono-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch new file mode 100644 index 000000000000..bbf4c6fd72e3 --- /dev/null +++ b/dev-lang/mono/files/mono-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch @@ -0,0 +1,15 @@ +=================================================================== +RCS file: mono/dis/RCS/Makefile.am,v +retrieving revision 1.1 +diff -up -r1.1 mono/dis/Makefile.am +--- mono/dis/Makefile.am 2015/05/08 15:00:22 1.1 ++++ mono/dis/Makefile.am 2015/07/14 11:20:29 +@@ -7,7 +7,7 @@ endif + if SUPPORT_SGEN + metadata_lib=$(top_builddir)/mono/metadata/libmonoruntimesgen-static.la + else +-metadata_lib=$(top_builddir)/mono/metadata/libmonoruntime-static.a ++metadata_lib=$(top_builddir)/mono/metadata/libmonoruntime-static.la + gc_lib=$(LIBGC_STATIC_LIBS) + endif + diff --git a/dev-lang/mono/files/mono-4.0.2.5-fix-ppc-atomic-add-i4.patch b/dev-lang/mono/files/mono-4.0.2.5-fix-ppc-atomic-add-i4.patch new file mode 100644 index 000000000000..fd5de72b136f --- /dev/null +++ b/dev-lang/mono/files/mono-4.0.2.5-fix-ppc-atomic-add-i4.patch @@ -0,0 +1,79 @@ +From f967c79926900343f399c75624deedaba460e544 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= <alexrp@xamarin.com> +Date: Mon, 3 Aug 2015 17:32:07 +0200 +Subject: [PATCH 1/2] [ppc] Instruction length of atomic_add_i4 is 28. + +--- + mono/mini/cpu-ppc.md | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mono/mini/cpu-ppc.md b/mono/mini/cpu-ppc.md +index ba2ec60..e6baf91 100644 +--- a/mono/mini/cpu-ppc.md ++++ b/mono/mini/cpu-ppc.md +@@ -314,5 +314,5 @@ vcall2_membase: src1:b len:16 clob:c + + jump_table: dest:i len:8 + +-atomic_add_i4: src1:b src2:i dest:i len:20 ++atomic_add_i4: src1:b src2:i dest:i len:28 + atomic_cas_i4: src1:b src2:i src3:i dest:i len:38 + +From 8f379f0c8f98493180b508b9e68b9aa76c0c5bdf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= <alexrp@xamarin.com> +Date: Mon, 3 Aug 2015 17:32:31 +0200 +Subject: [PATCH 2/2] [ppc] Fix atomic_add_i4 support for 32-bit PPC. + +--- + mono/mini/mini-ppc.c | 31 ++++++++++++++++--------------- + 1 file changed, 16 insertions(+), 15 deletions(-) + +diff --git a/mono/mini/mini-ppc.c b/mono/mini/mini-ppc.c +index 758a63f..06528bd 100644 +--- a/mono/mini/mini-ppc.c ++++ b/mono/mini/mini-ppc.c +@@ -4420,6 +4420,22 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb) + else + ppc_mr (code, ins->dreg, ins->sreg1); + break; ++#else ++ case OP_ICONV_TO_R4: ++ case OP_ICONV_TO_R8: { ++ if (cpu_hw_caps & PPC_ISA_64) { ++ ppc_srawi(code, ppc_r0, ins->sreg1, 31); ++ ppc_stw (code, ppc_r0, -8, ppc_r1); ++ ppc_stw (code, ins->sreg1, -4, ppc_r1); ++ ppc_lfd (code, ins->dreg, -8, ppc_r1); ++ ppc_fcfid (code, ins->dreg, ins->dreg); ++ if (ins->opcode == OP_ICONV_TO_R4) ++ ppc_frsp (code, ins->dreg, ins->dreg); ++ } ++ break; ++ } ++#endif ++ + case OP_ATOMIC_ADD_I4: + CASE_PPC64 (OP_ATOMIC_ADD_I8) { + int location = ins->inst_basereg; +@@ -4453,21 +4469,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb) + ppc_mr (code, ins->dreg, ppc_r0); + break; + } +-#else +- case OP_ICONV_TO_R4: +- case OP_ICONV_TO_R8: { +- if (cpu_hw_caps & PPC_ISA_64) { +- ppc_srawi(code, ppc_r0, ins->sreg1, 31); +- ppc_stw (code, ppc_r0, -8, ppc_r1); +- ppc_stw (code, ins->sreg1, -4, ppc_r1); +- ppc_lfd (code, ins->dreg, -8, ppc_r1); +- ppc_fcfid (code, ins->dreg, ins->dreg); +- if (ins->opcode == OP_ICONV_TO_R4) +- ppc_frsp (code, ins->dreg, ins->dreg); +- } +- break; +- } +-#endif + case OP_ATOMIC_CAS_I4: + CASE_PPC64 (OP_ATOMIC_CAS_I8) { + int location = ins->sreg1; diff --git a/dev-lang/mono/files/systemweb3.patch b/dev-lang/mono/files/systemweb3.patch new file mode 100644 index 000000000000..5ccb63a87869 --- /dev/null +++ b/dev-lang/mono/files/systemweb3.patch @@ -0,0 +1,22 @@ +--- a/mcs/class/System.Web.Routing/System.Web.Routing/RouteBase.cs 2015-05-08 18:00:15.000000000 +0300 ++++ b/mcs/class/System.Web.Routing/System.Web.Routing/RouteBase.cs 2015-07-20 14:13:09.215784924 +0300 +@@ -41,5 +41,19 @@ + { + public abstract RouteData GetRouteData (HttpContextBase httpContext); + public abstract VirtualPathData GetVirtualPath (RequestContext requestContext, RouteValueDictionary values); ++ ++ // Default needs to be true to avoid breaking change ++ private bool _routeExistingFiles = true; ++ public bool RouteExistingFiles ++ { ++ get ++ { ++ return _routeExistingFiles; ++ } ++ set ++ { ++ _routeExistingFiles = value; ++ } ++ } + } + } diff --git a/dev-lang/mono/mono-2.10.9-r2.ebuild b/dev-lang/mono/mono-2.10.9-r2.ebuild deleted file mode 100644 index 1990c36cb9d9..000000000000 --- a/dev-lang/mono/mono-2.10.9-r2.ebuild +++ /dev/null @@ -1,265 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI="4" - -inherit linux-info mono eutils flag-o-matic multilib go-mono pax-utils - -DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter" -HOMEPAGE="http://www.mono-project.com/Main_Page" - -LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL" -SLOT="0" -KEYWORDS="amd64 ppc ~ppc64 x86" - -IUSE="minimal pax_kernel xen" - -#Bash requirement is for += operator -COMMONDEPEND="!dev-util/monodoc - !minimal? ( =dev-dotnet/libgdiplus-${GO_MONO_REL_PV}* ) - ia64? ( sys-libs/libunwind )" -RDEPEND="${COMMONDEPEND} - || ( www-client/links www-client/lynx )" - -DEPEND="${COMMONDEPEND} - sys-devel/bc - virtual/yacc - >=app-shells/bash-3.2 - pax_kernel? ( sys-apps/elfix )" - -MAKEOPTS="${MAKEOPTS} -j1" - -RESTRICT="test" - -pkg_setup() { - if use kernel_linux - then - get_version - if linux_config_exists - then - if linux_chkconfig_present SYSVIPC - then - einfo "CONFIG_SYSVIPC is set, looking good." - else - eerror "If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling." - eerror "See http://bugs.gentoo.org/261869 for more info." - eerror "Please set CONFIG_SYSVIPC in your kernel .config if build fails." - fi - else - ewarn "Was unable to determine your kernel .config" - ewarn "Please note that if CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling." - ewarn "See http://bugs.gentoo.org/261869 for more info." - fi - fi - PATCHES=( "${FILESDIR}/${PN}-2.10.2-threads-access.patch" - "${FILESDIR}/${PN}-2.10.9-CVE-2012-3382.patch" - "${FILESDIR}/${PN}-2.10.9-CVE-2012-3543.patch" - "${FILESDIR}/${PN}-2.10.9-CVE-2012-3543_2.patch" ) -} - -src_prepare() { - go-mono_src_prepare - - # we need to sed in the paxctl-ng -mr in the runtime/mono-wrapper.in so it doesn't - # get killed in the build process when MPROTECT is enabled. #286280 - # RANDMMAP kills the build process to #347365 - if use pax_kernel ; then - ewarn "We are disabling MPROTECT on the mono binary." - sed '/exec "/ i\paxctl-ng -mr "$r/@mono_runtime@"' -i "${S}"/runtime/mono-wrapper.in || die "Failed to sed mono-wrapper.in" - fi -} - -src_configure() { - # mono's build system is finiky, strip the flags - strip-flags - - # Remove this at your own peril. Mono will barf in unexpected ways. - append-flags -fno-strict-aliasing - - # NOTE: We need the static libs for now so mono-debugger works. - # See http://bugs.gentoo.org/show_bug.cgi?id=256264 for details - # - # --without-moonlight since www-plugins/moonlight is not the only one - # using mono: https://bugzilla.novell.com/show_bug.cgi?id=641005#c3 - # - # --with-profile4 needs to be always enabled since it's used by default - # and, otherwise, problems like bug #340641 appear. - # - # sgen fails on ppc, bug #359515 - - local myconf="" - use ppc && myconf="${myconf} --with-sgen=no" - go-mono_src_configure \ - --enable-static \ - --disable-quiet-build \ - --without-moonlight \ - --with-libgdiplus=$(use minimal && printf "no" || printf "installed" ) \ - $(use_with xen xen_opt) \ - --without-ikvm-native \ - --with-jit \ - --disable-dtrace \ - --with-profile4 \ - ${myconf} -} - -src_test() { - echo ">>> Test phase [check]: ${CATEGORY}/${PF}" - - export MONO_REGISTRY_PATH="${T}/registry" - export XDG_DATA_HOME="${T}/data" - export MONO_SHARED_DIR="${T}/shared" - export XDG_CONFIG_HOME="${T}/config" - export HOME="${T}/home" - - emake -j1 check -} - -src_install() { - go-mono_src_install - - # Remove files not respecting LDFLAGS and that we are not supposed to provide, see Fedora - # mono.spec and http://www.mail-archive.com/mono-devel-list@lists.ximian.com/msg24870.html - # for reference. - rm -f "${ED}"/usr/$(get_libdir)/mono/2.0/mscorlib.dll.so - rm -f "${ED}"/usr/$(get_libdir)/mono/2.0/mcs.exe.so -} - -#THINK!!!! Before touching postrm and postinst -#Reference phase order: -#pkg_preinst -#pkg_prerm -#pkg_postrm -#pkg_postinst - -pkg_preinst() { - local symlink - local NUNIT_DIR="/usr/$(get_libdir)/mono/nunit" - local pv_atom - if [[ "$(readlink "${ROOT}"/${NUNIT_DIR})" == *"mono-nunit"* ]] - then - for pv_atom in 2.2{,-r1,-r2,-r3,-r4} '2.4_pre*' '2.4_rc*' 2.4 - do - if has_version "=dev-lang/mono-${pv_atom}" - then - einfo "If you just received a file collision warning message," - einfo "be advised that this is a known problem, which will now be fixed:" - ebegin "Found broken symlinks created by $(best_version dev-lang/mono), fixing" - for symlink in \ - "${ROOT}/${NUNIT_DIR}" \ - "${ROOT}/usr/$(get_libdir)/pkgconfig/nunit.pc" \ - "${ROOT}/usr/bin/nunit-console" \ - "${ROOT}/usr/bin/nunit-console2" - do - if [[ -L "${symlink}" ]] - then - rm -f "${symlink}" &> /dev/null - fi - done - eend 0 - break - fi - done - fi -} - -#pkg_postinst() { -# elog "PLEASE TAKE NOTE!" -# elog "" -# elog "Some of the namespaces supported by Mono require extra packages to be installed." -# elog "Below is a list of namespaces and the corresponding package you must install:" -# elog "" -# elog ">=x11-libs/cairo-1.6.4" -# elog " Mono.Cairo" -# elog "Also read:" -# elog "http://www.mono-project.com/Mono.Cairo" -# elog "" -# elog ">=dev-db/firebird-2.0.4.13130.1" -# elog " FirebirdSql.Data.Firebird" -# elog "Also read:" -# elog "http://www.mono-project.com/Firebird_Interbase" -# elog "" -# elog "dev-db/sqlite:3" -# elog " Mono.Data.Sqlite" -# elog "Also read:" -# elog "http://www.mono-project.com/SQLite" -# elog "" -# elog ">=dev-db/oracle-instantclient-basic-10.2" -# elog " System.Data.OracleClient" -# elog "Also read:" -# elog "http://www.mono-project.com/Oracle" -# elog "" -# elog "Mono also has support for packages that are not included in portage:" -# elog "" -# elog "No ebuild available:" -# elog " IBM.Data.DB2" -# elog "Also read: http://www.mono-project.com/IBM_DB2" -# elog "" -# elog "No ebuild needed:" -# elog " Mono.Data.SybaseClient" -# elog "Also read: http://www.mono-project.com/Sybase" -#} - -# NOTICE: THE COPYRIGHT FILES IN THE TARBALL ARE UNCLEAR! -# WHENEVER YOU THINK SOMETHING IS GPL-2+, IT'S ONLY GPL-2 -# UNLESS MIGUEL DE ICAZA HIMSELF SAYS OTHERWISE. - -# mono -# The code we use is LGPL, but contributions must be made under the MIT/X11 -# license, so Novell can serve its paying customers. Exception is mono/man. -# LICENSE="LGPL-2.1" - - # mono/man - # LICENSE="MIT" - -# mcs/mcs -# mcs/gmcs -# LICENSE="GPL-2 MIT" - -# tests -# LICENSE="MIT" - -# mcs/class -# Except the listed exceptions: -# LICENSE="MIT" - - # mcs/class/ByteFX.Data - # mcs/class/Npgsql - # LICENSE="LGPL-2.1" - - # mcs/class/FirebirdSql.Data.Firebird - # LICENSE="IDPL" - - # mcs/class/ICSharpCode.SharpZipLib - # LICENSE="GPL-2-with-linking-exception" - - # mcs/class/MicrosoftAjaxLibrary - # LICENSE="Ms-Pl" - - # mcs/class/Microsoft.JScript/Microsoft.JScript/TokenStream.cs - # mcs/class/Microsoft.JScript/Microsoft.JScript/Token.cs - # mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs - # mcs/class/Microsoft.JScript/Microsoft.JScript/Decompiler.cs - # LICENSE="|| ( NPL-1.1 GPL-2 )" - -# mcs/jay -# LICENSE="BSD-4" - -# mcs/tools -# Except the listed exceptions: -# LICENSE="MIT" - - # mcs/tools/mdoc/Mono.Documentation/monodocs2html.cs - # LICENSE="GPL-2" - - # mcs/tools/sqlsharp/SqlSharpCli.cs - # LICENSE="GPL-2" - - # mcs/tools/csharp/repl.cs - # LICENSE="|| ( MIT GPL-2 )" - - # mcs/tools/mono-win32-setup.nsi - # LICENSE="GPL-2" - -# samples -# LICENSE="MIT" diff --git a/dev-lang/mono/mono-3.0.7.ebuild b/dev-lang/mono/mono-3.0.7.ebuild deleted file mode 100644 index 9735a81edff4..000000000000 --- a/dev-lang/mono/mono-3.0.7.ebuild +++ /dev/null @@ -1,100 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI="5" -AUTOTOOLS_PRUNE_LIBTOOL_FILES="all" - -inherit linux-info mono-env flag-o-matic pax-utils autotools-utils - -DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter" -HOMEPAGE="http://www.mono-project.com/Main_Page" -SRC_URI="http://download.mono-project.com/sources/${PN}/${P}.tar.bz2" - -LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux" -IUSE="minimal pax_kernel xen doc" - -COMMONDEPEND=" - !dev-util/monodoc - !minimal? ( >=dev-dotnet/libgdiplus-2.10 ) - ia64? ( sys-libs/libunwind ) -" -RDEPEND="${COMMONDEPEND} - || ( www-client/links www-client/lynx ) -" -DEPEND="${COMMONDEPEND} - sys-devel/bc - virtual/yacc - pax_kernel? ( sys-apps/paxctl ) -" - -pkg_pretend() { - # If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling. - # See http://bugs.gentoo.org/261869 for more info." - CONFIG_CHECK="~SYSVIPC" - use kernel_linux && check_extra_config -} - -pkg_setup() { - linux-info_pkg_setup - mono-env_pkg_setup -} - -src_prepare() { - # we need to sed in the paxctl -mr in the runtime/mono-wrapper.in so it don't - # get killed in the build proces when MPROTEC is enable. #286280 - # RANDMMAP kill the build proces to #347365 - if use pax_kernel ; then - ewarn "We are disabling MPROTECT on the mono binary." - sed '/exec/ i\paxctl -mr "$r/@mono_runtime@"' -i "${S}"/runtime/mono-wrapper.in - fi - - # mono build system can fail otherwise - strip-flags - - # Remove this at your own peril. Mono will barf in unexpected ways. - append-flags -fno-strict-aliasing - - autotools-utils_src_prepare -} - -src_configure() { - # NOTE: We need the static libs for now so mono-debugger works. - # See http://bugs.gentoo.org/show_bug.cgi?id=256264 for details - # - # --without-moonlight since www-plugins/moonlight is not the only one - # using mono: https://bugzilla.novell.com/show_bug.cgi?id=641005#c3 - # - # --with-profile4 needs to be always enabled since it's used by default - # and, otherwise, problems like bug #340641 appear. - # - # sgen fails on ppc, bug #359515 - local myeconfargs=( - --enable-system-aot=yes - --enable-static - --disable-quiet-build - --without-moonlight - --with-libgdiplus=$(use minimal && printf "no" || printf "installed" ) - $(use_with xen xen_opt) - --without-ikvm-native - --with-jit - --disable-dtrace - --with-profile4 - --with-sgen=$(use ppc && printf "no" || printf "yes" ) - $(use_with doc mcs-docs) - ) - - autotools-utils_src_configure -} - -src_install() { - autotools-utils_src_install - - # Remove files not respecting LDFLAGS and that we are not supposed to provide, see Fedora - # mono.spec and http://www.mail-archive.com/mono-devel-list@lists.ximian.com/msg24870.html - # for reference. - rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mscorlib.dll.so - rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mcs.exe.so -} diff --git a/dev-lang/mono/mono-3.2.8.ebuild b/dev-lang/mono/mono-4.0.3.20.ebuild index ec4e9e89cf01..526b34b1b9c1 100644 --- a/dev-lang/mono/mono-3.2.8.ebuild +++ b/dev-lang/mono/mono-4.0.3.20.ebuild @@ -1,11 +1,12 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI="5" +EAPI=5 AUTOTOOLS_PRUNE_LIBTOOL_FILES="all" +AUTOTOOLS_AUTORECONF=1 -inherit eutils linux-info mono-env flag-o-matic pax-utils autotools-utils +inherit eutils linux-info mono-env flag-o-matic pax-utils autotools-utils versionator DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter" HOMEPAGE="http://www.mono-project.com/Main_Page" @@ -16,12 +17,11 @@ SLOT="0" KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux" -IUSE="nls minimal pax_kernel xen doc debug" +IUSE="nls minimal pax_kernel xen doc" COMMONDEPEND=" - !dev-util/monodoc !minimal? ( >=dev-dotnet/libgdiplus-2.10 ) - ia64? ( sys-libs/libunwind ) + ia64? ( sys-libs/libunwind ) nls? ( sys-devel/gettext ) " RDEPEND="${COMMONDEPEND} @@ -33,10 +33,13 @@ DEPEND="${COMMONDEPEND} pax_kernel? ( sys-apps/elfix ) " +MAKEOPTS="${MAKEOPTS} -j1" #nowarn +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)" + pkg_pretend() { # If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling. # See http://bugs.gentoo.org/261869 for more info." - CONFIG_CHECK="~SYSVIPC" + CONFIG_CHECK="SYSVIPC" use kernel_linux && check_extra_config } @@ -59,41 +62,34 @@ src_prepare() { # mono build system can fail otherwise strip-flags - # Remove this at your own peril. Mono will barf in unexpected ways. - append-flags -fno-strict-aliasing + # Fix VB targets + # http://osdir.com/ml/general/2015-05/msg20808.html + epatch "${FILESDIR}/add_missing_vb_portable_targets.patch" + + # Fix build on big-endian machines + # https://bugzilla.xamarin.com/show_bug.cgi?id=31779 + epatch "${FILESDIR}/${PN}-4.0.2.5-fix-decimal-ms-on-big-endian.patch" - # Bug #504108, dlls/test-883.il unexisting; TODO: Figure out how to make it. - epatch "${FILESDIR}"/${P}-disable-missing-test.patch - rm mcs/tests/test-883{,-lib}.cs|| die + # Fix build when sgen disabled + # https://bugzilla.xamarin.com/show_bug.cgi?id=32015 + epatch "${FILESDIR}/${PN}-4.0.2.5-fix-mono-dis-makefile-am-when-without-sgen.patch" + + # Fix atomic_add_i4 support for 32-bit ppc + # https://github.com/mono/mono/compare/f967c79926900343f399c75624deedaba460e544^...8f379f0c8f98493180b508b9e68b9aa76c0c5bdf + epatch "${FILESDIR}/${PN}-4.0.2.5-fix-ppc-atomic-add-i4.patch" autotools-utils_src_prepare + + epatch "${FILESDIR}/systemweb3.patch" } src_configure() { - # NOTE: We need the static libs for now so mono-debugger works. - # See http://bugs.gentoo.org/show_bug.cgi?id=256264 for details - # - # --without-moonlight since www-plugins/moonlight is not the only one - # using mono: https://bugzilla.novell.com/show_bug.cgi?id=641005#c3 - # - # --with-profile4 needs to be always enabled since it's used by default - # and, otherwise, problems like bug #340641 appear. - # - # sgen fails on ppc, bug #359515 local myeconfargs=( - --enable-system-aot=yes - --enable-static - --disable-quiet-build - --without-moonlight - --with-libgdiplus=$(usex minimal no installed) + --disable-silent-rules $(use_with xen xen_opt) --without-ikvm-native - --with-jit --disable-dtrace - --with-profile4 - --with-sgen=$(usex ppc no yes) $(use_with doc mcs-docs) - $(use_enable debug) $(use_enable nls) ) @@ -101,23 +97,10 @@ src_configure() { } src_compile() { - nonfatal autotools-utils_src_compile || { - eqawarn "maintainer of this ebuild has no idea why it fails. If you happen to know how to fix it - please let me know" - autotools-utils_src_compile - } + autotools-utils_src_compile } src_test() { cd mcs/tests || die emake check } - -src_install() { - autotools-utils_src_install - - # Remove files not respecting LDFLAGS and that we are not supposed to provide, see Fedora - # mono.spec and http://www.mail-archive.com/mono-devel-list@lists.ximian.com/msg24870.html - # for reference. - rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mscorlib.dll.so || die - rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mcs.exe.so || die -} |