diff options
author | Pacho Ramos <pacho@gentoo.org> | 2013-05-24 18:08:10 +0000 |
---|---|---|
committer | Pacho Ramos <pacho@gentoo.org> | 2013-05-24 18:08:10 +0000 |
commit | c9c11b1b6410b7fec6d421b46716e940cb2427df (patch) | |
tree | 013db6541dc2ad11b0d3ce3979d53768e3e7c4a2 /eclass/mono-env.eclass | |
parent | Reword sentences a bit (diff) | |
download | gentoo-2-c9c11b1b6410b7fec6d421b46716e940cb2427df.tar.gz gentoo-2-c9c11b1b6410b7fec6d421b46716e940cb2427df.tar.bz2 gentoo-2-c9c11b1b6410b7fec6d421b46716e940cb2427df.zip |
Add mono-env.eclass to start a migration to simpler dotnet related eclasses, http://www.gossamer-threads.com/lists/gentoo/dev/270881
Diffstat (limited to 'eclass/mono-env.eclass')
-rw-r--r-- | eclass/mono-env.eclass | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/eclass/mono-env.eclass b/eclass/mono-env.eclass new file mode 100644 index 000000000000..7bf53588c853 --- /dev/null +++ b/eclass/mono-env.eclass @@ -0,0 +1,43 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/eclass/mono-env.eclass,v 1.1 2013/05/24 18:08:10 pacho Exp $ + +# @ECLASS: mono-env.eclass +# @MAINTAINER: +# dotnet@gentoo.org +# @BLURB: Set environment variables commonly used by dotnet packages. +# @DESCRIPTION: +# Set environment variables commonly used by dotnet packages. + +EXPORT_FUNCTIONS pkg_setup + +if [[ ! ${_MONO_ENV} ]]; then + +mono-env_pkg_setup() { + # >=mono-0.92 versions using mcs -pkg:foo-sharp require shared memory, so we set the + # shared dir to ${T} so that ${T}/.wapi can be used during the install process. + export MONO_SHARED_DIR="${T}" + + # export more variables as needed by other dotnet packages + export MONO_REGISTRY_PATH="${T}/registry" + export XDG_DATA_HOME="${T}/data" + + # Building mono, nant and many other dotnet packages is known to fail if LC_ALL + # variable is not set to C. To prevent this all mono related packages will be + # build with LC_ALL=C (see bugs #146424, #149817) + export LC_ALL=C + + # Monodevelop-using applications need this to be set or they will try to create config + # files in the user's ~ dir. + export XDG_CONFIG_HOME="${T}" + + # Fix bug 83020: + # "Access Violations Arise When Emerging Mono-Related Packages with MONO_AOT_CACHE" + unset MONO_AOT_CACHE + + # mono libs can live on /usr/lib as they are not arch specific + QA_MULTILIB_PATHS="usr/lib/" +} + +_MONO_ENV=1 +fi |