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/x-pagedlist/
Date: Wed, 08 Feb 2017 11:42:00
Message-Id: 1485292284.715c8f076aa96348326eefd3c3b667802f34363c.cynede@gentoo
1 commit: 715c8f076aa96348326eefd3c3b667802f34363c
2 Author: ArsenShnurkov <ArsenShnurkov <AT> users <DOT> noreply <DOT> github <DOT> com>
3 AuthorDate: Tue Jan 24 21:11:24 2017 +0000
4 Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 24 21:11:24 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=715c8f07
7
8 copy of previous version as baseline
9
10 dev-dotnet/x-pagedlist/x-pagedlist-5.3.0.8.ebuild | 128 ++++++++++++++++++++++
11 1 file changed, 128 insertions(+)
12
13 diff --git a/dev-dotnet/x-pagedlist/x-pagedlist-5.3.0.8.ebuild b/dev-dotnet/x-pagedlist/x-pagedlist-5.3.0.8.ebuild
14 new file mode 100644
15 index 0000000..67968e6
16 --- /dev/null
17 +++ b/dev-dotnet/x-pagedlist/x-pagedlist-5.3.0.8.ebuild
18 @@ -0,0 +1,128 @@
19 +# Copyright 1999-2017 Gentoo Foundation
20 +# Distributed under the terms of the GNU General Public License v2
21 +# $Id$
22 +
23 +EAPI=6
24 +
25 +inherit versionator gac nupkg
26 +
27 +HOMEPAGE="https://github.com/kpi-ua/X.PagedList/"
28 +DESCRIPTION="Nugget for easily paging through any IEnumerable/IQueryable in Asp.Net MVC"
29 +LICENSE="MIT"
30 +SLOT="0"
31 +KEYWORDS="~amd64 ~x86"
32 +IUSE="net45 +gac +nupkg +pkg-config debug developer"
33 +USE_DOTNET="net45"
34 +
35 +COMMON_DEPEND=">=dev-lang/mono-4.0.2.5
36 +"
37 +
38 +RDEPEND="${COMMON_DEPEND}
39 +"
40 +
41 +DEPEND="${COMMON_DEPEND}
42 + virtual/pkgconfig
43 +"
44 +
45 +NAME="X.PagedList"
46 +REPOSITORY="https://github.com/ArsenShnurkov/${NAME}"
47 +EGIT_BRANCH="master"
48 +LICENSE_URL="${REPOSITORY}/blob/${EGIT_BRANCH}/LICENSE"
49 +ICONMETA="http://uxrepo.com/static/icon-sets/iconic/svg/list.svg"
50 +ICON_URL="https://github.com/ArsenShnurkov/X.PagedList/blob/switching-from-pcl/misc/list.svg"
51 +
52 +EGIT_COMMIT="48bc7da1bc3b6b294c69796bd9573e670edd3c64"
53 +SRC_URI="${REPOSITORY}/archive/${EGIT_BRANCH}/${EGIT_COMMIT}.zip -> ${PF}.zip
54 + mirror://gentoo/mono.snk.bz2"
55 +#S="${WORKDIR}/${NAME}-${EGIT_COMMIT}"
56 +S="${WORKDIR}/${NAME}-${EGIT_BRANCH}"
57 +
58 +METAFILETOBUILD=./src/X.PagedList.sln
59 +#OUTPUT_DIR=
60 +
61 +# there is an original file exists: ./src/X.PagedList.Mvc/PagedList.Mvc.nuspec
62 +NUSPEC_FILE_NAME=X.PagedList.nuspec
63 +#NUSPEC_VERSION="${PVR//-r/.}"
64 +NUSPEC_VERSION=$(get_version_component_range 1-3)"${PR//r/.}"
65 +
66 +# rm -rf /var/tmp/portage/dev-dotnet/X-PagedList-1.24.0.23549-r201512120
67 +# emerge =X-PagedList-1.24.0.23549-r201512120
68 +# leafpad /var/tmp/portage/dev-dotnet/X-PagedList-1.24.0.23549-r201512120/temp/build.log &
69 +
70 +src_unpack()
71 +{
72 + default
73 + enuget_download_rogue_binary "Microsoft.Web.Infrastructure" "1.0.0.0"
74 + enuget_download_rogue_binary "Microsoft.AspNet.WebPages" "3.2.3"
75 + enuget_download_rogue_binary "Microsoft.AspNet.Razor" "3.2.3"
76 + enuget_download_rogue_binary "Microsoft.AspNet.Mvc" "5.2.3"
77 +}
78 +
79 +src_prepare() {
80 + einfo "patching project files"
81 + epatch "${FILESDIR}/X.PagedList.csproj.patch"
82 + epatch "${FILESDIR}/X.PagedList.Mvc.csproj.patch"
83 +
84 + # no restoring for this particular project for now, see src_unpack() above instead
85 + # einfo "restoring packages"
86 + # enuget_restore -Verbosity detailed -SolutionDirectory "${S}" "./src/X.PagedList/packages.config"
87 + # enuget_restore "./src/X.PagedList.Mvc/X.PagedList.Mvc.csproj"
88 + # enuget_restore -Verbosity detailed -SolutionDirectory "${S}" "./src/X.PagedList.Mvc/packages.config"
89 +
90 + einfo "preparing nuspec"
91 + cp "${FILESDIR}/${NUSPEC_FILE_NAME}" "${S}/${NUSPEC_FILE_NAME}" || die
92 + patch_nuspec_file "${S}/${NUSPEC_FILE_NAME}"
93 +
94 + eapply_user
95 +}
96 +
97 +src_configure() {
98 + :;
99 +}
100 +
101 +src_compile() {
102 + exbuild /p:SignAssembly=true "/p:AssemblyOriginatorKeyFile=${WORKDIR}/mono.snk" "./src/X.PagedList/X.PagedList.csproj"
103 + exbuild /p:SignAssembly=true "/p:AssemblyOriginatorKeyFile=${WORKDIR}/mono.snk" "./src/X.PagedList.Mvc/X.PagedList.Mvc.csproj"
104 +
105 + # run nuget_pack
106 + einfo "setting .nupkg version to ${NUSPEC_VERSION}"
107 + enuspec -Prop "version=${NUSPEC_VERSION}" "${S}/${NUSPEC_FILE_NAME}"
108 +}
109 +
110 +src_install() {
111 + enupkg "${WORKDIR}/${NAME}.${NUSPEC_VERSION}.nupkg"
112 +
113 + egacinstall "src/X.PagedList/bin/${DIR}/X.PagedList.dll"
114 + egacinstall "src/X.PagedList.Mvc/bin/${DIR}/X.PagedList.Mvc.dll"
115 +
116 + einstall_pc_file "${PN}" "${PV}" "X.PagedList.Mvc"
117 +}
118 +
119 +patch_nuspec_file()
120 +{
121 + if use nupkg; then
122 + if use debug; then
123 + DIR="Debug"
124 + FILES_STRING=`sed 's/[\/&]/\\\\&/g' <<-EOF || die "escaping replacement string characters"
125 + <files> <!-- https://docs.nuget.org/create/nuspec-reference -->
126 + <file src="src/X.PagedList/bin/${DIR}/X.PagedList.dll" target="lib\net45\" />
127 + <file src="src/X.PagedList.Mvc/bin/${DIR}/X.PagedList.Mvc.dll" target="lib\net45\" />
128 + <file src="src/X.PagedList/bin/${DIR}/X.PagedList.dll.mdb" target="lib\net45\" />
129 + <file src="src/X.PagedList.Mvc/bin/${DIR}/X.PagedList.Mvc.dll.mdb" target="lib\net45\" />
130 + </files>
131 + EOF
132 + `
133 + else
134 + DIR="Release"
135 + FILES_STRING=`sed 's/[\/&]/\\\\&/g' <<-EOF || die "escaping replacement string characters"
136 + <files> <!-- https://docs.nuget.org/create/nuspec-reference -->
137 + <file src="src/X.PagedList/bin/${DIR}/X.PagedList.dll" target="lib\net45\" />
138 + <file src="src/X.PagedList.Mvc/bin/${DIR}/X.PagedList.Mvc.dll" target="lib\net45\" />
139 + </files>
140 + EOF
141 + `
142 + fi
143 +
144 + sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' $1 || die "escaping line endings"
145 + fi
146 +}