aboutsummaryrefslogtreecommitdiff
blob: fba15ad4ad813908da374924fd26a8b2e06b184d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=5

inherit mono-env dotnet multilib versionator

DESCRIPTION="Nini - A configuration library for .NET"
HOMEPAGE="http://nini.sourceforge.net"
SRC_URI="mirror://sourceforge/nini/Nini-${PV}.zip"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"

RDEPEND=">=dev-lang/mono-4.0.2.5"
DEPEND="${RDEPEND}
	app-arch/sharutils
	sys-apps/sed"

S=${WORKDIR}/Nini/Source

src_prepare() {
	uudecode -o Nini.snk "${FILESDIR}"/Nini.snk.uue
}

src_configure() {
	use debug&&DEBUG="-debug"
}

src_compile() {
	#See nini in Debian for info
	/usr/bin/mcs	${DEBUG} \
		-nowarn:1616 \
		-target:library \
		-out:Nini.dll \
		-define:STRONG \
		-r:System.dll \
		-r:System.Xml.dll \
		-keyfile:Nini.snk \
		AssemblyInfo.cs Config/*.cs Ini/*.cs Util/*.cs \
		|| die "Compilation failed"

	sed 	\
		-e 's|@prefix@|${pcfiledir}/../..|' \
		-e 's|@exec_prefix@|${prefix}|' \
		-e "s|@libdir@|\$\{exec_prefix\}/$(get_libdir)|" \
		-e "s|@libs@|-r:\$\{libdir\}/mono/Nini/Nini.dll|" \
		-e "s|@VERSION@|${PV}|" \
		"${FILESDIR}"/nini.pc.in > "${S}"/nini.pc
}

src_install() {
	egacinstall Nini.dll Nini
	pkgconfigdir=/usr/$(get_libdir)/pkgconfig
	insinto ${pkgconfigdir}
	newins "${S}"/nini.pc ${P}.pc
	dosym ${P}.pc ${pkgconfigdir}/${PN}-$(get_version_component_range 1-2).pc
	dosym ${P}.pc ${pkgconfigdir}/${PN}.pc

	dodoc "${S}"/../CHANGELOG.txt "${S}"/../README.txt
}