public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Pacho Ramos <pacho@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: dotnet@gentoo.org
Subject: Re: [gentoo-dev] mono-env.eclass: new eclass to be used by most of dotnet packages
Date: Sun, 19 May 2013 12:31:45 +0200	[thread overview]
Message-ID: <1368959505.15714.0.camel@localhost> (raw)
In-Reply-To: <1365932403.6940.8.camel@localhost>

[-- Attachment #1: Type: text/plain, Size: 651 bytes --]

El dom, 14-04-2013 a las 11:40 +0200, Pacho Ramos escribió:
> Due reasons explained here:
> https://bugs.gentoo.org/show_bug.cgi?id=462052#c1
> 
> We would like to start a process of simplifying dotnet maintained
> eclasses a lot because they are currently really hard to maintain. As a
> start point, we will need a simple eclass simply to export some
> variables needed to build most of dotnet packages. That variables are
> currently being exported by mono.eclass, the idea would be to split the
> "environment exporting" part out of it (and deprecate current
> mono.eclass in the future)
> 
> 

Updated eclass taking care of previous suggestions

[-- Attachment #2: mono-env.eclass --]
[-- Type: text/plain, Size: 1386 bytes --]

# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# @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.

inherit multilib

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

  parent reply	other threads:[~2013-05-19 10:31 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-14  9:40 [gentoo-dev] mono-env.eclass: new eclass to be used by most of dotnet packages Pacho Ramos
2013-04-14  9:45 ` Michał Górny
2013-04-14  9:59   ` Pacho Ramos
2013-04-14 10:08     ` Michał Górny
2013-04-14 10:25       ` Pacho Ramos
2013-04-14 10:40         ` Michał Górny
2013-04-14 21:02     ` Zac Medico
2013-04-14 10:00   ` Pacho Ramos
2013-05-19 10:31 ` Pacho Ramos [this message]
2013-05-24 19:18   ` Pacho Ramos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1368959505.15714.0.camel@localhost \
    --to=pacho@gentoo.org \
    --cc=dotnet@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox