* [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/system-web/files/, dev-dotnet/system-web/
@ 2016-09-30 8:45 Mikhail Pukhlikov
0 siblings, 0 replies; 2+ messages in thread
From: Mikhail Pukhlikov @ 2016-09-30 8:45 UTC (permalink / raw
To: gentoo-commits
commit: a5cc83c1a83841b8a54e9501a12df6a04f73252b
Author: ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
AuthorDate: Tue Sep 27 07:28:49 2016 +0000
Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Tue Sep 27 07:28:49 2016 +0000
URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=a5cc83c1
patch for AutoFac
dev-dotnet/system-web/files/autofac.patch | 24 +++++
.../system-web/system-web-4.6.0.182-r1.ebuild | 108 +++++++++++++++++++++
2 files changed, 132 insertions(+)
diff --git a/dev-dotnet/system-web/files/autofac.patch b/dev-dotnet/system-web/files/autofac.patch
new file mode 100644
index 0000000..1983c1d
--- /dev/null
+++ b/dev-dotnet/system-web/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-dotnet/system-web/system-web-4.6.0.182-r1.ebuild b/dev-dotnet/system-web/system-web-4.6.0.182-r1.ebuild
new file mode 100644
index 0000000..4bf29d9
--- /dev/null
+++ b/dev-dotnet/system-web/system-web-4.6.0.182-r1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+USE_DOTNET="net45"
+inherit gac dotnet
+IUSE+=" +net45 +pkg-config debug"
+
+DESCRIPTION="Framework for developing web-applications"
+HOMEPAGE="https://www.asp.net/"
+SRC_URI="https://github.com/ArsenShnurkov/shnurise-tarballs/archive/dev-dotnet/system-web/system-web-4.6.0.182.tar.gz"
+RESTRICT="mirror"
+S="${WORKDIR}/shnurise-tarballs-${CATEGORY}-${PN}-${PN}-${PV}"
+
+NAME=System.Web
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+KEYWORDS="~amd64 ~x86"
+
+# dependency on mono is included in dotnet.eclass which is inherited with nupkg.eclass (so no need to include >=dev-lang/mono-4.0.2.5 here)
+# dependency on nuget is included in nupkg.eclass when USE="nupkg" is set
+COMMONDEPEND="
+"
+RDEPEND="${COMMONDEPEND}
+"
+DEPEND="${COMMONDEPEND}
+"
+
+CSPROJ=${NAME}.csproj
+
+src_prepare()
+{
+ sed -i 's/public const string FxVersion = "4.0.0.0";/public const string FxVersion = "'${PV}'";/g' "${S}/mcs/build/common/Consts.cs" || die
+ sed "s/4.6.0.150/4.6.0.182/g" "${FILESDIR}/policy.4.0.System.Web.config" > "${S}/policy.4.0.System.Web.config" || die
+ eapply "${FILESDIR}/add-system-diagnostics-namespace.patch"
+ eapply "${FILESDIR}/autofac.patch"
+ eapply_user
+}
+
+src_configure()
+{
+ :;
+}
+
+KEYFILE1=${S}/mcs/class/msfinal.pub
+KEYFILE2=${S}/mcs/class/mono.snk
+
+src_compile()
+{
+ # System.Web.dll
+ exbuild /p:SignAssembly=true /p:AssemblyOriginatorKeyFile=${KEYFILE1} /p:DelaySign=true "${S}/mcs/class/${NAME}/${CSPROJ}"
+ if use debug; then
+ DIR="Debug"
+ else
+ DIR="Release"
+ fi
+ sn -R "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll" ${KEYFILE2} || die
+
+ # Policy file
+ al "/link:${S}/policy.4.0.System.Web.config" "/out:${S}/policy.4.0.System.Web.dll" "/keyfile:${KEYFILE1}" /delaysign+ || die
+ sn -R "${S}/policy.4.0.System.Web.dll" ${KEYFILE2} || die
+}
+
+src_install()
+{
+ if use debug; then
+ DIR="Debug"
+ else
+ DIR="Release"
+ fi
+ egacinstall "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll"
+ egacinstall "${S}/policy.4.0.System.Web.dll"
+ install_pc_file "${PN}" "${NAME}.dll"
+}
+
+# The file format contains predefined metadata keywords and freeform variables (like ${prefix} and ${exec_prefix})
+# $1 = ${PN}
+# $2 = myassembly.dll
+install_pc_file()
+{
+ if use pkg-config; then
+ dodir /usr/$(get_libdir)/pkgconfig
+ ebegin "Installing ${PC_FILE_NAME}.pc file"
+ sed \
+ -e "s:@LIBDIR@:$(get_libdir):" \
+ -e "s:@PACKAGENAME@:$1:" \
+ -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
+ -e "s:@VERSION@:${PV}:" \
+ -e 's*@LIBS@*-r:${libdir}'"/mono/$1/$2"'*' \
+ <<-EOF >"${D}/usr/$(get_libdir)/pkgconfig/$1.pc" || die
+ prefix=\${pcfiledir}/../..
+ exec_prefix=\${prefix}
+ libdir=\${exec_prefix}/@LIBDIR@
+ Name: @PACKAGENAME@
+ Description: @DESCRIPTION@
+ Version: @VERSION@
+ Libs: @LIBS@
+ EOF
+
+ einfo PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config --exists "$1"
+ PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config --exists "$1" || die ".pc file failed to validate."
+ eend $?
+ fi
+}
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/system-web/files/, dev-dotnet/system-web/
@ 2016-09-07 6:13 Mikhail Pukhlikov
0 siblings, 0 replies; 2+ messages in thread
From: Mikhail Pukhlikov @ 2016-09-07 6:13 UTC (permalink / raw
To: gentoo-commits
commit: 975824cde6ff903b49aafdd8a67ecfd1cded6a4e
Author: ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
AuthorDate: Tue Sep 6 15:10:31 2016 +0000
Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Tue Sep 6 15:10:31 2016 +0000
URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=975824cd
policy added
dev-dotnet/system-web/files/policy.4.0.System.Web.config | 10 ++++++++++
dev-dotnet/system-web/system-web-4.6.0.150.ebuild | 14 +++++++++++---
2 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/dev-dotnet/system-web/files/policy.4.0.System.Web.config b/dev-dotnet/system-web/files/policy.4.0.System.Web.config
new file mode 100644
index 0000000..8788fe9
--- /dev/null
+++ b/dev-dotnet/system-web/files/policy.4.0.System.Web.config
@@ -0,0 +1,10 @@
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Web" culture="neutral" publicKeyToken="b03f5f7f11d50a3a" />
+ <bindingRedirect oldVersion="4.0.0.0" newVersion="4.6.0.150" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration>
diff --git a/dev-dotnet/system-web/system-web-4.6.0.150.ebuild b/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
index c33e70f..c7bcc87 100644
--- a/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
+++ b/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
@@ -5,7 +5,7 @@
EAPI=6
USE_DOTNET="net45"
-inherit gac nupkg
+inherit gac dotnet
IUSE+=" +net45 debug"
DESCRIPTION="assembly that lets you dynamically register HTTP modules at run time"
@@ -36,6 +36,7 @@ src_prepare()
{
gunzip --decompress --stdout "${FILESDIR}/${CSPROJ}.gz" >"${S}/mcs/class/${NAME}/${CSPROJ}" || die
sed -i 's/public const string FxVersion = "4.0.0.0";/public const string FxVersion = "'${PV}'";/g' "${S}/mcs/build/common/Consts.cs" || die
+ cp "${FILESDIR}/policy.4.0.System.Web.config" "${S}/policy.4.0.System.Web.config" || die
eapply_user
}
@@ -44,14 +45,21 @@ src_configure()
:;
}
+KEYFILE1=${S}/mcs/class/msfinal.pub
+KEYFILE2=${S}/mcs/class/mono.snk
+
src_compile()
{
- exbuild "${S}/mcs/class/${NAME}/${CSPROJ}"
- sn -R "${S}/mcs/class/${NAME}/${NAME}.dll" "${S}/mcs/class/mono.snk" || die
+ #exbuild "${S}/mcs/class/${NAME}/${CSPROJ}"
+ exbuild /p:SignAssembly=true /p:AssemblyOriginatorKeyFile=${KEYFILE1} /p:DelaySign=true "${S}/mcs/class/${NAME}/${CSPROJ}"
+ sn -R "${S}/mcs/class/${NAME}/${NAME}.dll" ${KEYFILE2} || die
+ al "/link:${S}/policy.4.0.System.Web.config" "/out:${S}/policy.4.0.System.Web.dll" "/keyfile:${KEYFILE1}" /delaysign+ || die
+ sn -R "${S}/policy.4.0.System.Web.dll" ${KEYFILE2} || die
}
src_install()
{
# installation to GAC will cause file collision with mono package
egacinstall "${S}/mcs/class/${NAME}/${NAME}.dll"
+ egacinstall "${S}/policy.4.0.System.Web.dll"
}
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-09-30 8:45 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-30 8:45 [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/system-web/files/, dev-dotnet/system-web/ Mikhail Pukhlikov
-- strict thread matches above, loose matches on Subject: below --
2016-09-07 6:13 Mikhail Pukhlikov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox