commit: a4a5c7f6ab44426c4cd99c6cccd96e00690fe8c2
Author: ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
AuthorDate: Thu Dec 1 07:54:26 2016 +0000
Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Thu Dec 1 07:54:26 2016 +0000
URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=a4a5c7f6
where is ?
.../libgit2sharp/libgit2sharp-0.22.0.431.ebuild | 18 ++--
dev-lang/mono/files/autofac.patch | 24 +++++
dev-lang/mono/mono-4.9.0.729-r2.ebuild | 102 +++++++++++++++++++++
3 files changed, 135 insertions(+), 9 deletions(-)
diff --git a/dev-dotnet/libgit2sharp/libgit2sharp-0.22.0.431.ebuild
b/dev-dotnet/libgit2sharp/libgit2sharp-0.22.0.431.ebuild
index 95851c5..9f4b0df 100644
--- a/dev-dotnet/libgit2sharp/libgit2sharp-0.22.0.431.ebuild
+++ b/dev-dotnet/libgit2sharp/libgit2sharp-0.22.0.431.ebuild
@@ -5,27 +5,27 @@
EAPI=6
KEYWORDS="~x86 ~amd64"
+RESTRICT+=" mirror"
USE_DOTNET="net45"
+IUSE="+${USE_DOTNET}"
EBUILD_FRAMEWORK="4.5"
-IUSE="${USE_DOTNET} +gac +nupkg"
-inherit nupkg
+inherit gac nupkg
DESCRIPTION="A C# PInvoke wrapper library for LibGit2 C library"
-EGIT_COMMIT="8daef23223e1374141bf496e4b310ded9ae4639e"
-HOMEPAGE="https://github.com/libgit2/libgit2sharp"
-SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
- mirror://gentoo/mono.snk.bz2"
-#RESTRICT="mirror"
-
+REPO_OWNER=libgit2
+NAME=libgit2sharp
+EGIT_COMMIT="38f046d83da3fb98b2d57fca1d428363dc31a960"
+HOMEPAGE="https://github.com/${REPO_OWNER}/${NAME}"
+SRC_URI="https://api.github.com/repos/${REPO_OWNER}/${NAME}/tarball/${EGIT_COMMIT}
-> ${PN}-${PV}.tar.gz"
S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
LICENSE="MIT"
SLOT="0"
-CDEPEND="
+CDEPEND=">=dev-lang/mono-mono-4.9.0.729-r2
dev-libs/libgit2
"
diff --git a/dev-lang/mono/files/autofac.patch
b/dev-lang/mono/files/autofac.patch
new file mode 100644
index 0000000..1983c1d
--- /dev/null
+++ b/dev-lang/mono/files/autofac.patch
@@ -0,0 +1,24 @@
+--- a/mcs/class/System.Web/System.Web.Hosting/HostingEnvironment.cs
++++ b/mcs/class/System.Web/System.Web.Hosting/HostingEnvironment.cs
+@@ -156,9 +156,18 @@
+
+ HttpContext context = HttpContext.Current;
+ HttpRequest req = context == null ? null :
context.Request;
+- if (req == null)
+- return null;
+-
++ if (req == null) // ADDED for Orchard
++ {
++ var pp =
HostingEnvironment.ApplicationPhysicalPath;
++ String vp=virtualPath;
++ if (vp.IndexOf("~/") == 0)
++ {
++ vp = pp + virtualPath.Substring(2);
++ }
++ // TODO: if not "~/" ???? then what?
++ return vp;
++ } // END added for Orchard
++ else
+ return req.MapPath (virtualPath);
+ }
+
diff --git a/dev-lang/mono/mono-4.9.0.729-r2.ebuild
b/dev-lang/mono/mono-4.9.0.729-r2.ebuild
new file mode 100644
index 0000000..5875ed3
--- /dev/null
+++ b/dev-lang/mono/mono-4.9.0.729-r2.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit eutils linux-info mono-env flag-o-matic pax-utils versionator
multilib-minimal
+
+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}/nightly/${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="nls minimal pax_kernel xen doc"
+
+COMMONDEPEND="
+ !minimal? ( >=dev-dotnet/libgdiplus-2.10 )
+ ia64? ( sys-libs/libunwind )
+ nls? ( sys-devel/gettext )
+"
+RDEPEND="${COMMONDEPEND}
+ || ( www-client/links www-client/lynx )
+"
+DEPEND="${COMMONDEPEND}
+ sys-devel/bc
+ virtual/yacc
+ pax_kernel? ( sys-apps/elfix )
+ !dev-lang/mono-basic
+"
+
+S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)"
+
+pkg_pretend() {
+ #
https://github.com/gentoo/gentoo/blob/f200e625bda8de696a28338318c9005b69e34710/eclass/linux-info.eclass#L686
+ # 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_preinst() {
+ "${WORKDIR}/mono-4.9.0-abi_x86_32.x86/mono/mini/mono-sgen"
"${WORKDIR}/mono-4.9.0-abi_x86_32.x86/mcs/tools/security/sn.exe" -i
"${S}/mcs/class/mono.snk" "mono" || die
+}
+
+pkg_setup() {
+ linux-info_pkg_setup
+ mono-env_pkg_setup
+}
+
+src_prepare() {
+ # we need to sed in the paxctl-ng -mr in the runtime/mono-wrapper.in so
it don't
+ # get killed in the build proces when MPROTECT is enable. #286280
+ # RANDMMAP kill the build proces to #347365
+ # use paxmark.sh to get PT/XT logic #532244
+ if use pax_kernel ; then
+ ewarn "We are disabling MPROTECT on the mono binary."
+
+ # issue 9 : https://github.com/Heather/gentoo-dotnet/issues/9
+ sed '/exec "/ i\paxmark.sh -mr "$r/@mono_runtime@"' -i
"${S}"/runtime/mono-wrapper.in || die "Failed to sed mono-wrapper.in"
+ fi
+
+ # mono build system can fail otherwise
+ strip-flags
+
+ eapply "${FILESDIR}/autofac.patch"
+
+ default
+ #eapply_user
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --disable-silent-rules
+ $(use_with xen xen_opt)
+ --without-ikvm-native
+ --disable-dtrace
+ $(use_with doc mcs-docs)
+ $(use_enable nls)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+multilib_src_test() {
+ cd mcs/tests || die
+ emake check
+}
+
+multilib_src_install() {
+ default_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/[email protected]/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
+}