Gentoo Archives: gentoo-commits

From: Mikhail Pukhlikov <cynede@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/techtalk-specflow/
Date: Tue, 31 Oct 2017 08:03:01
Message-Id: 1509384645.484ae2616bc1e5deec02a5fb9e80c4ff76d3875d.cynede@gentoo
1 commit: 484ae2616bc1e5deec02a5fb9e80c4ff76d3875d
2 Author: ArsenShnurkov <ArsenShnurkov <AT> users <DOT> noreply <DOT> github <DOT> com>
3 AuthorDate: Mon Oct 30 17:30:45 2017 +0000
4 Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
5 CommitDate: Mon Oct 30 17:30:45 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=484ae261
7
8 digest created
9
10 dev-dotnet/techtalk-specflow/metadata.xml | 8 ++
11 .../techtalk-specflow-1.2.0.0.ebuild | 85 ++++++++++++++++++++++
12 2 files changed, 93 insertions(+)
13
14 diff --git a/dev-dotnet/techtalk-specflow/metadata.xml b/dev-dotnet/techtalk-specflow/metadata.xml
15 new file mode 100644
16 index 0000000..b1262f1
17 --- /dev/null
18 +++ b/dev-dotnet/techtalk-specflow/metadata.xml
19 @@ -0,0 +1,8 @@
20 +<?xml version="1.0" encoding="UTF-8"?>
21 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
22 +<pkgmetadata>
23 + <maintainer type="project">
24 + <email>dotnet@g.o</email>
25 + <description>Gentoo Dotnet Project</description>
26 + </maintainer>
27 +</pkgmetadata>
28
29 diff --git a/dev-dotnet/techtalk-specflow/techtalk-specflow-1.2.0.0.ebuild b/dev-dotnet/techtalk-specflow/techtalk-specflow-1.2.0.0.ebuild
30 new file mode 100644
31 index 0000000..0dbd17d
32 --- /dev/null
33 +++ b/dev-dotnet/techtalk-specflow/techtalk-specflow-1.2.0.0.ebuild
34 @@ -0,0 +1,85 @@
35 +# Copyright 1999-2017 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +# $Id$
38 +
39 +EAPI=6
40 +KEYWORDS="~amd64 ~ppc ~x86"
41 +RESTRICT="mirror"
42 +
43 +SLOT="0"
44 +
45 +USE_DOTNET="net45"
46 +inherit msbuild gac
47 +IUSE="+${USE_DOTNET}"
48 +
49 +NAME="SpecFlow"
50 +HOMEPAGE="http://www.specflow.org/"
51 +
52 +EGIT_COMMIT="d79e211e94860f0c98fb43264e4358714da1fd95"
53 +SRC_URI="https://github.com/techtalk/${NAME}/archive/${EGIT_COMMIT}.tar.gz -> ${PF}.tar.gz
54 + https://github.com/mono/mono/raw/master/mcs/class/mono.snk"
55 +S="${WORKDIR}/${NAME}-${EGIT_COMMIT}"
56 +
57 +DESCRIPTION="Binding business requirements to .Net code"
58 +LICENSE="BSD" # https://github.com/techtalk/SpecFlow/blob/master/LICENSE.txt
59 +
60 +CDEPEND="|| ( >=dev-lang/mono-5.4.0.167 <dev-lang/mono-9999 )
61 + "
62 +RDEPEND="${CDEPEND}
63 +"
64 +DEPEND="${CDEPEND}
65 +"
66 +
67 +PATH_TO_PROJ="TechTalk.SpecFlow"
68 +METAFILE_TO_BUILD="TechTalk.SpecFlow"
69 +ASSEMBLY_NAME="TechTalk.SpecFlow"
70 +
71 +KEY2="${DISTDIR}/mono.snk"
72 +ASSEMBLY_VERSION="${PV}"
73 +
74 +function output_filename ( ) {
75 + local DIR=""
76 + if use debug; then
77 + DIR="Debug"
78 + else
79 + DIR="Release"
80 + fi
81 + echo "${PATH_TO_PROJ}/bin/${DIR}/${ASSEMBLY_NAME}.dll"
82 +}
83 +
84 +src_prepare() {
85 + #cp "${FILESDIR}/${METAFILE_TO_BUILD}-${PV}.csproj" "${S}/${PATH_TO_PROJ}/${METAFILE_TO_BUILD}.csproj" || die
86 + #cp "${FILESDIR}/CommonAssemblyInfo-${PV}.cs" "${S}/${PATH_TO_PROJ}/../CommonAssemblyInfo.cs" || die
87 + eapply_user
88 +}
89 +
90 +TOOLS_VERSION=4.0
91 +
92 +src_compile() {
93 + emsbuild /p:TargetFrameworkVersion=v4.6 "/p:SignAssembly=true" "/p:PublicSign=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" /p:VersionNumber="${ASSEMBLY_VERSION}" "${S}/${PATH_TO_PROJ}/${METAFILE_TO_BUILD}.csproj"
94 + sn -R "$(output_filename)" "${KEY2}" || die
95 +}
96 +
97 +src_install() {
98 + insinto "/gac"
99 + doins "$(output_filename)"
100 +}
101 +
102 +pkg_preinst()
103 +{
104 + echo mv "${D}/gac/${ASSEMBLY_NAME}.dll" "${T}/${ASSEMBLY_NAME}.dll"
105 + mv "${D}/gac/${ASSEMBLY_NAME}.dll" "${T}/${ASSEMBLY_NAME}.dll" || die
106 + echo rm -rf "${D}/gac"
107 + rm -rf "${D}/gac" || die
108 +}
109 +
110 +pkg_postinst()
111 +{
112 + egacadd "${T}/${ASSEMBLY_NAME}.dll"
113 + rm "${T}/${ASSEMBLY_NAME}.dll" || die
114 +}
115 +
116 +pkg_prerm()
117 +{
118 + egacdel "${ASSEMBLY_NAME}, Version=${ASSEMBLY_VERSION}, Culture=neutral, PublicKeyToken=0738eb9f132ed756"
119 +}