diff options
author | 2018-01-10 23:41:45 +0300 | |
---|---|---|
committer | 2018-01-10 23:45:06 +0300 | |
commit | e3638e9a810dd2c86f07841c940efe7a95753ad3 (patch) | |
tree | d39835750446eb964e65d739aacc09e7717e8f72 /eclass | |
parent | Merge pull request #361 from grbd/master (diff) | |
download | dotnet-e3638e9a810dd2c86f07841c940efe7a95753ad3.tar.gz dotnet-e3638e9a810dd2c86f07841c940efe7a95753ad3.tar.bz2 dotnet-e3638e9a810dd2c86f07841c940efe7a95753ad3.zip |
autofac v2.3.5.862 packaged
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/dotnet.eclass | 63 | ||||
-rw-r--r-- | eclass/mono-env.eclass | 2 | ||||
-rw-r--r-- | eclass/mono.snk | bin | 596 -> 0 bytes | |||
-rw-r--r-- | eclass/msbuild.eclass | 2 | ||||
-rw-r--r-- | eclass/xbuild.eclass | 81 |
5 files changed, 92 insertions, 56 deletions
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 Binary files differdeleted file mode 100644 index 380116c..0000000 --- a/eclass/mono.snk +++ /dev/null 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}" "$@" +} |