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"
}