* [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/autofac/, dev-dotnet/autofac-configuration/, eclass/, ...
@ 2018-01-23 6:42 Mikhail Pukhlikov
0 siblings, 0 replies; only message in thread
From: Mikhail Pukhlikov @ 2018-01-23 6:42 UTC (permalink / raw
To: gentoo-commits
commit: e3638e9a810dd2c86f07841c940efe7a95753ad3
Author: ArsenShnurkov <ArsenShnurkov <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Wed Jan 10 20:41:45 2018 +0000
Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Wed Jan 10 20:45:06 2018 +0000
URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=e3638e9a
autofac v2.3.5.862 packaged
.../autofac-configuration-2.5.3.862.ebuild | 66 +++++++++++++++
.../autofac-web/autofac-web-2.5.3.862.ebuild | 65 +++++++++++++++
dev-dotnet/autofac-web/metadata.xml | 8 ++
dev-dotnet/autofac/autofac-2.5.3.862.ebuild | 62 ++++++++++++++
dev-dotnet/autofac/autofac-3.5.2.ebuild | 31 ++++---
.../dotnetzip-semverd-1.9.3-r1.ebuild | 48 -----------
.../dotnetzip-semverd-1.9.3.ebuild | 47 -----------
.../msbuildtasks/msbuildtasks-1.5.0.260_pre.ebuild | 91 +++++++++++++++++++++
eclass/dotnet.eclass | 63 ++------------
eclass/mono-env.eclass | 2 +
eclass/mono.snk | Bin 596 -> 0 bytes
eclass/msbuild.eclass | 2 +
eclass/xbuild.eclass | 81 ++++++++++++++++++
13 files changed, 405 insertions(+), 161 deletions(-)
diff --git a/dev-dotnet/autofac-configuration/autofac-configuration-2.5.3.862.ebuild b/dev-dotnet/autofac-configuration/autofac-configuration-2.5.3.862.ebuild
new file mode 100644
index 0000000..1f8714b
--- /dev/null
+++ b/dev-dotnet/autofac-configuration/autofac-configuration-2.5.3.862.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+RESTRICT="mirror"
+
+SLOT="2"
+if [ "${SLOT}" != "0" ]; then
+ APPENDIX="-${SLOT}"
+fi
+
+USE_DOTNET="net45"
+IUSE="+${USE_DOTNET} +debug developer doc"
+
+inherit versionator msbuild gac mono-pkg-config
+
+GITHUB_REPONAME="Autofac"
+HOMEPAGE="https://github.com/autofac/Autofac.Configuration"
+DESCRIPTION="An addictive .NET IoC container"
+LICENSE="MIT" # https://github.com/autofac/Autofac/blob/develop/LICENSE
+
+EGIT_COMMIT="5ad2d85df4e99d3588589d89874672856ba7b60e"
+PV4="$(get_version_component_range 1-4)"
+TARBALL_EXT=".tar.gz"
+SRC_URI="https://github.com/autofac/${GITHUB_REPONAME}/archive/${EGIT_COMMIT}${TARBALL_EXT} -> ${GITHUB_REPONAME}-${PV4}${TARBALL_EXT}
+ https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
+S="${WORKDIR}/${GITHUB_REPONAME}-${EGIT_COMMIT}"
+
+COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+ dev-dotnet/autofac:2
+"
+
+KEY2="${DISTDIR}/mono.snk"
+
+function project_relpath() {
+ echo "Core/Source/Autofac.Configuration"
+}
+
+function output_filename() {
+ echo "$(project_relpath)/$(output_relpath)/Autofac.Configuration.dll"
+}
+
+src_prepare() {
+ dotnet_pkg_setup
+ sed -i '/MSBuildCommunityTasksPath/d' "${S}/default.proj" || die
+ emsbuild /p:AssemblyVersion=${PV} /t:UpdateVersion "${S}/default.proj"
+ sed -i "s?System.configuration?System.Configuration?g" "$(project_relpath)/Autofac.Configuration.csproj" || die
+ eapply_user
+}
+
+src_compile() {
+ emsbuild "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" /p:VersionNumber=${PV} "$(project_relpath)/Autofac.Configuration.csproj"
+ sn -R "$(output_filename)" "${KEY2}" || die
+}
+
+src_install() {
+ egacinstall "$(output_filename)"
+ einstall_pc_file "${PN}" "${PV}" "Autofac.Configuration"
+}
diff --git a/dev-dotnet/autofac-web/autofac-web-2.5.3.862.ebuild b/dev-dotnet/autofac-web/autofac-web-2.5.3.862.ebuild
new file mode 100644
index 0000000..f168467
--- /dev/null
+++ b/dev-dotnet/autofac-web/autofac-web-2.5.3.862.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+RESTRICT="mirror"
+
+SLOT="2"
+if [ "${SLOT}" != "0" ]; then
+ APPENDIX="-${SLOT}"
+fi
+
+USE_DOTNET="net45"
+IUSE="+${USE_DOTNET} +debug developer doc"
+
+inherit versionator msbuild gac mono-pkg-config
+
+GITHUB_REPONAME="Autofac"
+HOMEPAGE="https://github.com/autofac/Autofac.Web"
+DESCRIPTION="An addictive .NET IoC container"
+LICENSE="MIT" # https://github.com/autofac/Autofac/blob/develop/LICENSE
+
+EGIT_COMMIT="5ad2d85df4e99d3588589d89874672856ba7b60e"
+PV4="$(get_version_component_range 1-4)"
+TARBALL_EXT=".tar.gz"
+SRC_URI="https://github.com/autofac/${GITHUB_REPONAME}/archive/${EGIT_COMMIT}${TARBALL_EXT} -> ${GITHUB_REPONAME}-${PV4}${TARBALL_EXT}
+ https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
+S="${WORKDIR}/${GITHUB_REPONAME}-${EGIT_COMMIT}"
+
+COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+ dev-dotnet/autofac:2
+"
+
+KEY2="${DISTDIR}/mono.snk"
+
+function project_relpath() {
+ echo "Core/Source/Autofac.Integration.Web"
+}
+
+function output_filename() {
+ echo "$(project_relpath)/$(output_relpath)/Autofac.Integration.Web.dll"
+}
+
+src_prepare() {
+ dotnet_pkg_setup
+ sed -i '/MSBuildCommunityTasksPath/d' "${S}/default.proj" || die
+ emsbuild /p:AssemblyVersion=${PV} /t:UpdateVersion "${S}/default.proj"
+ eapply_user
+}
+
+src_compile() {
+ emsbuild "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" /p:VersionNumber=${PV} "$(project_relpath)/Autofac.Integration.Web.csproj"
+ sn -R "$(output_filename)" "${KEY2}" || die
+}
+
+src_install() {
+ egacinstall "$(output_filename)"
+ einstall_pc_file "${PN}" "${PV}" "Autofac.Integration.Web"
+}
diff --git a/dev-dotnet/autofac-web/metadata.xml b/dev-dotnet/autofac-web/metadata.xml
new file mode 100644
index 0000000..b1262f1
--- /dev/null
+++ b/dev-dotnet/autofac-web/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>dotnet@gentoo.org</email>
+ <description>Gentoo Dotnet Project</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-dotnet/autofac/autofac-2.5.3.862.ebuild b/dev-dotnet/autofac/autofac-2.5.3.862.ebuild
new file mode 100644
index 0000000..4bc68e5
--- /dev/null
+++ b/dev-dotnet/autofac/autofac-2.5.3.862.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+KEYWORDS="~amd64 ~ppc ~x86"
+RESTRICT="mirror"
+
+SLOT="2"
+if [ "${SLOT}" != "0" ]; then
+ APPENDIX="-${SLOT}"
+fi
+
+USE_DOTNET="net45"
+
+inherit msbuild gac mono-pkg-config
+
+GITHUB_REPONAME="Autofac"
+HOMEPAGE="https://github.com/autofac/Autofac"
+DESCRIPTION="An addictive .NET IoC container"
+LICENSE="MIT" # https://github.com/autofac/Autofac/blob/develop/LICENSE
+
+EGIT_COMMIT="5ad2d85df4e99d3588589d89874672856ba7b60e"
+PV4="$(get_version_component_range 1-4)"
+TARBALL_EXT=".tar.gz"
+SRC_URI="https://github.com/autofac/${GITHUB_REPONAME}/archive/${EGIT_COMMIT}${TARBALL_EXT} -> ${GITHUB_REPONAME}-${PV4}${TARBALL_EXT}
+ https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
+S="${WORKDIR}/${GITHUB_REPONAME}-${EGIT_COMMIT}"
+
+
+IUSE="+${USE_DOTNET} +debug developer doc"
+
+COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+KEY2="${DISTDIR}/mono.snk"
+
+function output_filename() {
+ echo "Core/Source/Autofac/$(output_relpath)/Autofac.dll"
+}
+
+src_prepare() {
+ dotnet_pkg_setup
+ sed -i '/MSBuildCommunityTasksPath/d' "${S}/default.proj" || die
+ emsbuild /p:AssemblyVersion=${PV} /t:UpdateVersion "${S}/default.proj"
+ eapply_user
+}
+
+src_compile() {
+ emsbuild "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" /p:VersionNumber=${PV} "Core/Source/Autofac/Autofac.csproj"
+ sn -R "$(output_filename)" "${KEY2}" || die
+}
+
+src_install() {
+ egacinstall "$(output_filename)"
+ einstall_pc_file "${PN}" "${PV}" "Autofac"
+}
diff --git a/dev-dotnet/autofac/autofac-3.5.2.ebuild b/dev-dotnet/autofac/autofac-3.5.2.ebuild
index f28ed99..13c847e 100644
--- a/dev-dotnet/autofac/autofac-3.5.2.ebuild
+++ b/dev-dotnet/autofac/autofac-3.5.2.ebuild
@@ -6,15 +6,18 @@ EAPI=6
SLOT="3"
KEYWORDS="~amd64 ~ppc ~x86"
+
+DOTNET_FRAMEWORK="net45"
USE_DOTNET="net45"
-inherit gac dotnet
+inherit msbuild gac mono-pkg-config
NAME="Autofac"
HOMEPAGE="https://github.com/Autofac/${NAME}"
EGIT_COMMIT="c985cda5483dcd4d2fbc395a4001be12cc07ee84"
-SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${PN}-${PV}.tar.gz"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${PN}-${PV}.tar.gz
+ https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
RESTRICT="mirror"
S="${WORKDIR}/${NAME}-${EGIT_COMMIT}"
@@ -31,22 +34,30 @@ RDEPEND="${COMMON_DEPEND}
DEPEND="${COMMON_DEPEND}
"
+KEY2="${DISTDIR}/mono.snk"
+
+function output_filename() {
+ local DIR=""
+ if use debug; then
+ DIR="Debug"
+ else
+ DIR="Release"
+ fi
+ echo "Core/Source/Autofac/bin/${DIR}/Autofac.dll"
+}
+
src_prepare() {
eapply "${FILESDIR}/Autofac.csproj-3.5.2.patch"
- eapply "${FILESDIR}/reflection-extension-3.5.2.patch"
+ #eapply "${FILESDIR}/reflection-extension-3.5.2.patch"
eapply_user
}
src_compile() {
- exbuild_strong /p:VersionNumber=${PV} "Core/Source/Autofac/Autofac.csproj"
+ emsbuild "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" /p:VersionNumber=${PV} "Core/Source/Autofac/Autofac.csproj"
+ sn -R "$(output_filename)" "${KEY2}" || die
}
src_install() {
- if use debug; then
- DIR="Debug"
- else
- DIR="Release"
- fi
- egacinstall "Core/Source/Autofac/bin/${DIR}/Autofac.dll"
+ egacinstall "$(output_filename)"
einstall_pc_file "${PN}" "${PV}" "Autofac"
}
diff --git a/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3-r1.ebuild b/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3-r1.ebuild
deleted file mode 100644
index bde73f2..0000000
--- a/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-SLOT="0"
-
-KEYWORDS="~amd64 ~ppc ~x86"
-USE_DOTNET="net45"
-
-inherit gac dotnet
-
-SRC_URI="https://github.com/haf/DotNetZip.Semverd/archive/v1.9.3.tar.gz -> ${PV}.tar.gz"
-RESTRICT="mirror"
-S="${WORKDIR}/DotNetZip.Semverd-${PV}"
-
-HOMEPAGE="https://github.com/haf/DotNetZip.Semverd"
-DESCRIPTION="create, extract, or update zip files with C# (=DotNetZip+SemVer)"
-LICENSE="MS-PL" # https://github.com/haf/DotNetZip.Semverd/blob/master/LICENSE
-
-IUSE="net45 +gac +nupkg developer debug doc"
-
-COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
-"
-RDEPEND="${COMMON_DEPEND}
-"
-DEPEND="${COMMON_DEPEND}
-"
-
-src_prepare() {
- eapply "${FILESDIR}/version-${PV}.patch"
- eapply_user
-}
-
-src_compile() {
- #exbuild "/p:SignAssembly=true" "/p:AssemblyOriginatorKeyFile=${S}/src/Ionic.snk" "src/Zip Reduced/Zip Reduced.csproj"
- exbuild_strong "src/Zip Reduced/Zip Reduced.csproj"
-}
-
-src_install() {
- if use debug; then
- DIR="Debug"
- else
- DIR="Release"
- fi
- egacinstall "src/Zip Reduced/bin/${DIR}/Ionic.Zip.Reduced.dll"
- einstall_pc_file "${PN}" "${PV}" "Ionic.Zip.Reduced"
-}
diff --git a/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3.ebuild b/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3.ebuild
deleted file mode 100644
index 83e23f6..0000000
--- a/dev-dotnet/dotnetzip-semverd/dotnetzip-semverd-1.9.3.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-SLOT="0"
-
-KEYWORDS="~amd64 ~ppc ~x86"
-USE_DOTNET="net45"
-
-inherit gac dotnet
-
-SRC_URI="https://github.com/haf/DotNetZip.Semverd/archive/v1.9.3.tar.gz -> ${PV}.tar.gz"
-RESTRICT="mirror"
-S="${WORKDIR}/DotNetZip.Semverd-${PV}"
-
-HOMEPAGE="https://github.com/haf/DotNetZip.Semverd"
-DESCRIPTION="create, extract, or update zip files with C# (=DotNetZip+SemVer)"
-LICENSE="MS-PL" # https://github.com/haf/DotNetZip.Semverd/blob/master/LICENSE
-
-IUSE="net45 +gac +nupkg developer debug doc"
-
-COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
-"
-RDEPEND="${COMMON_DEPEND}
-"
-DEPEND="${COMMON_DEPEND}
-"
-
-src_prepare() {
- eapply "${FILESDIR}/version-${PV}.patch"
- eapply_user
-}
-
-src_compile() {
- #exbuild "/p:SignAssembly=true" "/p:AssemblyOriginatorKeyFile=${S}/src/Ionic.snk" "src/Zip Reduced/Zip Reduced.csproj"
- exbuild_strong "src/Zip Reduced/Zip Reduced.csproj"
-}
-
-src_install() {
- if use debug; then
- DIR="Debug"
- else
- DIR="Release"
- fi
- egacinstall "src/Zip Reduced/bin/${DIR}/Ionic.Zip.Reduced.dll"
-}
diff --git a/dev-dotnet/msbuildtasks/msbuildtasks-1.5.0.260_pre.ebuild b/dev-dotnet/msbuildtasks/msbuildtasks-1.5.0.260_pre.ebuild
new file mode 100644
index 0000000..d541d23
--- /dev/null
+++ b/dev-dotnet/msbuildtasks/msbuildtasks-1.5.0.260_pre.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+KEYWORDS="~amd64 ~ppc ~x86"
+RESTRICT="mirror"
+
+SLOT="1"
+if [ "${SLOT}" != "0" ]; then
+ APPENDIX="-${SLOT}"
+fi
+
+USE_DOTNET="net45"
+
+inherit versionator dotnet msbuild
+
+IUSE="+${USE_DOTNET} +debug developer +msbuild +xbuild +symlink"
+
+HOMEPAGE="https://github.com/loresoft/msbuildtasks"
+EGIT_COMMIT="abaab03d71fc07b020a860f6d407f6814cb0f6d5"
+TARBALL_FILENAME="${PN}-$(get_version_component_range 1-4)"
+TARBALL_EXT=".tar.gz"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}${TARBALL_EXT} -> ${TARBALL_FILENAME}${TARBALL_EXT}
+ https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
+GITHUB_REPONAME="msbuildtasks"
+S="${WORKDIR}/${GITHUB_REPONAME}-${EGIT_COMMIT}"
+
+DESCRIPTION="The MSBuild Community Tasks Project is an open source project for MSBuild tasks."
+LICENSE="BSD" # https://github.com/loresoft/msbuildtasks/blob/master/LICENSE
+
+COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
+ >=dev-dotnet/dotnetzip-semverd-1.9.3-r2
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+KEY2="${DISTDIR}/mono.snk"
+
+function project_relpath ( ) {
+ echo "Source/MSBuild.Community.Tasks"
+}
+
+function metafile_to_build ( ) {
+ echo "$(project_relpath)/MSBuild.Community.Tasks.csproj"
+}
+
+function AssemblyName ( ) {
+ echo "MSBuild.Community.Tasks"
+}
+
+function targets_filename ( ) {
+ echo "MSBuild.Community.Tasks.Targets"
+}
+
+function deploy_dir ( ) {
+ echo "/usr/lib/mono/${EBUILD_FRAMEWORK}/MSBuild.Community.Tasks${APPENDIX}"
+}
+
+src_prepare() {
+ dotnet_pkg_setup # in particular it calculates value of EBUILD_FRAMEWORK variable, which is used in install phase
+ eapply "${FILESDIR}/remove-sandcastle-task.patch"
+ eapply "${FILESDIR}/csproj.patch"
+ eapply "${FILESDIR}/location.patch"
+ sed -i "s?/usr/lib/mono/4.5?/usr/lib/mono/4.5/MSBuild.Community.Tasks${APPENDIX}?g" "${S}/$(project_relpath)/$(targets_filename)" || die
+ sed -i 's/Microsoft.Build.Framework/Microsoft.Build.Framework, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756/g' "$(metafile_to_build)" || die
+ sed -i 's/Microsoft.Build.Utilities.v4.0/Microsoft.Build.Utilities.Core, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756/g' "$(metafile_to_build)" || die
+ eapply_user
+}
+
+src_compile() {
+ emsbuild "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" "$(metafile_to_build)"
+ sn -R "$(project_relpath)/$(output_relpath)/$(AssemblyName).dll" "${KEY2}" || die
+}
+
+src_install() {
+ insinto "$(deploy_dir)"
+ doins "$(project_relpath)/$(output_relpath)/$(AssemblyName).dll"
+ doins "$(project_relpath)/$(targets_filename)"
+
+ if use msbuild && use symlink; then
+ dosym "$(deploy_dir)" "${EPREFIX}/usr/share/msbuild/MSBuildCommunityTasks"
+ fi
+
+ if use xbuild && use symlink; then
+ dosym "$(deploy_dir)" "${EPREFIX}/usr/lib/mono/xbuild/MSBuildCommunityTasks"
+ fi
+}
diff --git a/eclass/dotnet.eclass b/eclass/dotnet.eclass
index f4f30df..dd0c485 100644
--- a/eclass/dotnet.eclass
+++ b/eclass/dotnet.eclass
@@ -96,65 +96,16 @@ export XDG_CONFIG_HOME="${T}"
unset MONO_AOT_CACHE
-# @FUNCTION: exbuild_raw
-# @DESCRIPTION: run xbuild with given parameters
-exbuild_raw() {
- elog """$@"""
- xbuild "$@" || die
-}
-
-# @FUNCTION: exbuild
-# @DESCRIPTION: run xbuild with Release configuration and configurated FRAMEWORK
-exbuild() {
+# @FUNCTION: output_relpath
+# @DESCRIPTION: returns default relative directory for Debug or Release configuration depending from USE="debug"
+function output_relpath ( ) {
+ local DIR=""
if use debug; then
- CARGS=/p:Configuration=Debug
- else
- CARGS=/p:Configuration=Release
- fi
-
- if use developer; then
- SARGS=/p:DebugSymbols=True
- else
- SARGS=/p:DebugSymbols=False
- fi
-
- if [[ -z ${TOOLS_VERSION} ]]; then
- TOOLS_VERSION=4.0
- fi
-
- exbuild_raw "/v:detailed" "/tv:${TOOLS_VERSION}" "/p:TargetFrameworkVersion=v${FRAMEWORK}" "${CARGS}" "${SARGS}" "$@"
-}
-
-# @FUNCTION: exbuild_strong
-# @DESCRIPTION: run xbuild with default key signing
-exbuild_strong() {
- # http://stackoverflow.com/questions/7903321/only-sign-assemblies-with-strong-name-during-release-build
- if use gac; then
- if [[ -z ${SNK_FILENAME} ]]; then
- # elog ${BASH_SOURCE}
- SNK_FILENAME=/var/lib/layman/dotnet/eclass/mono.snk
- # sn - Digitally sign/verify/compare strongnames on CLR assemblies.
- # man sn = http://linux.die.net/man/1/sn
- if [ -f ${SNK_FILENAME} ]; then
- einfo "build through snk = ${SNK_FILENAME}"
- KARGS1=/p:SignAssembly=true
- KARGS2=/p:AssemblyOriginatorKeyFile=${SNK_FILENAME}
- else
- einfo "build through container"
- KARGS1=/p:SignAssembly=true
- KARGS2=/p:AssemblyKeyContainerName=mono
- fi
- else
- einfo "build through given snk"
- KARGS1=/p:SignAssembly=true
- KARGS2=/p:AssemblyOriginatorKeyFile=${SNK_FILENAME}
- fi
+ DIR="Debug"
else
- einfo "no strong signing"
- KARGS1=
- KARGS2=
+ DIR="Release"
fi
- exbuild "${KARGS1}" "${KARGS2}" "$@"
+ echo "bin/${DIR}"
}
# @FUNCTION: dotnet_multilib_comply
diff --git a/eclass/mono-env.eclass b/eclass/mono-env.eclass
index 1877359..d28e4cb 100644
--- a/eclass/mono-env.eclass
+++ b/eclass/mono-env.eclass
@@ -41,3 +41,5 @@ mono-env_pkg_setup() {
_MONO_ENV=1
fi
+
+SANDBOX_WRITE="${SANDBOX_WRITE}:/etc/mono/registry/:/etc/mono/registry/last-btime"
diff --git a/eclass/mono.snk b/eclass/mono.snk
deleted file mode 100644
index 380116c..0000000
Binary files a/eclass/mono.snk and /dev/null differ
diff --git a/eclass/msbuild.eclass b/eclass/msbuild.eclass
index c935135..46da3fc 100644
--- a/eclass/msbuild.eclass
+++ b/eclass/msbuild.eclass
@@ -8,6 +8,8 @@
# @DESCRIPTION:
# This is the new replacement for dotnet eclass
+inherit dotnet
+
case ${EAPI:-0} in
0) die "this eclass doesn't support EAPI 0" ;;
1|2|3) ;;
diff --git a/eclass/xbuild.eclass b/eclass/xbuild.eclass
new file mode 100644
index 0000000..90a60c1
--- /dev/null
+++ b/eclass/xbuild.eclass
@@ -0,0 +1,81 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# @ECLASS: dotnet.eclass
+# @MAINTAINER: cynede@gentoo.org
+# @BLURB: common settings and functions for mono and dotnet related packages
+# @DESCRIPTION:
+# The dotnet eclass contains common environment settings that are useful for
+# dotnet packages. Currently, it provides no functions, just exports
+# MONO_SHARED_DIR and sets LC_ALL in order to prevent errors during compilation
+# of dotnet packages.
+
+case ${EAPI:-0} in
+ 0) die "this eclass doesn't support EAPI 0" ;;
+ 1|2|3) ;;
+ *) ;; #if [[ ${USE_DOTNET} ]]; then REQUIRED_USE="|| (${USE_DOTNET})"; fi;;
+esac
+
+inherit dotnet
+
+# @FUNCTION: exbuild_raw
+# @DESCRIPTION: run xbuild with given parameters
+exbuild_raw() {
+ elog """$@"""
+ xbuild "$@" || die
+}
+
+# @FUNCTION: exbuild
+# @DESCRIPTION: run xbuild with Release configuration and configurated FRAMEWORK
+exbuild() {
+ if use debug; then
+ CARGS=/p:Configuration=Debug
+ else
+ CARGS=/p:Configuration=Release
+ fi
+
+ if use developer; then
+ SARGS=/p:DebugSymbols=True
+ else
+ SARGS=/p:DebugSymbols=False
+ fi
+
+ if [[ -z ${TOOLS_VERSION} ]]; then
+ TOOLS_VERSION=4.0
+ fi
+
+ exbuild_raw "/v:detailed" "/tv:${TOOLS_VERSION}" "/p:TargetFrameworkVersion=v${FRAMEWORK}" "${CARGS}" "${SARGS}" "$@"
+}
+
+# @FUNCTION: exbuild_strong
+# @DESCRIPTION: run xbuild with default key signing
+exbuild_strong() {
+ # http://stackoverflow.com/questions/7903321/only-sign-assemblies-with-strong-name-during-release-build
+ if use gac; then
+ if [[ -z ${SNK_FILENAME} ]]; then
+ # elog ${BASH_SOURCE}
+ SNK_FILENAME=/var/lib/layman/dotnet/eclass/mono.snk
+ # sn - Digitally sign/verify/compare strongnames on CLR assemblies.
+ # man sn = http://linux.die.net/man/1/sn
+ if [ -f ${SNK_FILENAME} ]; then
+ einfo "build through snk = ${SNK_FILENAME}"
+ KARGS1=/p:SignAssembly=true
+ KARGS2=/p:AssemblyOriginatorKeyFile=${SNK_FILENAME}
+ else
+ einfo "build through container"
+ KARGS1=/p:SignAssembly=true
+ KARGS2=/p:AssemblyKeyContainerName=mono
+ fi
+ else
+ einfo "build through given snk"
+ KARGS1=/p:SignAssembly=true
+ KARGS2=/p:AssemblyOriginatorKeyFile=${SNK_FILENAME}
+ fi
+ else
+ einfo "no strong signing"
+ KARGS1=
+ KARGS2=
+ fi
+ exbuild "${KARGS1}" "${KARGS2}" "$@"
+}
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2018-01-23 6:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-23 6:42 [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/autofac/, dev-dotnet/autofac-configuration/, eclass/, Mikhail Pukhlikov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox