aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArsenShnurkov <Arsen.Shnurkov@gmail.com>2016-01-15 17:02:53 +0300
committerArsenShnurkov <Arsen.Shnurkov@gmail.com>2016-08-23 15:59:52 +0300
commit9278ba01842058a9f2d17b803c1abfe189c5755c (patch)
tree5b0193317107cc659b3ca8af7cf77aabfc82babd /dev-util/mono-packaging-tools
parentMerge pull request #223 from ArsenShnurkov/master (diff)
downloaddotnet-9278ba01842058a9f2d17b803c1abfe189c5755c.tar.gz
dotnet-9278ba01842058a9f2d17b803c1abfe189c5755c.tar.bz2
dotnet-9278ba01842058a9f2d17b803c1abfe189c5755c.zip
some draft (nonworking)
Diffstat (limited to 'dev-util/mono-packaging-tools')
-rw-r--r--dev-util/mono-packaging-tools/Manifest2
-rw-r--r--dev-util/mono-packaging-tools/metadata.xml14
-rw-r--r--dev-util/mono-packaging-tools/mono-packaging-tools-0.2.1_p20160115.ebuild95
3 files changed, 111 insertions, 0 deletions
diff --git a/dev-util/mono-packaging-tools/Manifest b/dev-util/mono-packaging-tools/Manifest
index 74caf03..f728fdd 100644
--- a/dev-util/mono-packaging-tools/Manifest
+++ b/dev-util/mono-packaging-tools/Manifest
@@ -1 +1,3 @@
DIST mono-packaging-tools-0.1.2_p201608183.tar.gz 28002 SHA256 ad2c66ee89d7697ab763d92b5739f5b579178756c724cf77ffe61f18bf6588a8 SHA512 c9a652ce9e55d7187c98801c68f003e6687ef98dc892c2b136c7c2b7aa50fbef901e41f925cdb7d74ff6fc7c29b02fd96e68b7a9f9e6b7782cc62aa1bbaed1b8 WHIRLPOOL b4bef4c9621b25b9ebd5e12b24006c49c9e8f4f244ebffde9bba70b628720f5542f81056cd1544856cb02ee0a35920b62311ac7f7df55f37b3f2eed4135b906e
+DIST mono-packaging-tools-0.2.1_p20160115.zip 31598 SHA256 2e9610c1b892d42a808837ea2b443dd3cf1c9c00dccd8710dfc2ff13faa1b395 SHA512 50026b82efe58671913d385e02ae317ce543c0ca514fe42d3290b44252c830d180b07cc47344fdf580144e3ce2425ecbd3cba02e9d3d6e0cb8160fe86cc90617 WHIRLPOOL 14a1f099b30b3794effe66a70a8e9c2eba036cf59a68cd3a102ed0cbc95d7f862b3d7c9b97952ae584282a09060822ba6f42865f504b039992a5cca5ab9bc8a6
+DIST mono.snk.bz2 785 SHA256 0cc2ca58f90773eafa8460dfb8ff4ac6238b68106eb1631348a800091a6ff3de SHA512 de64da7a9e4fa53e5a5abaee00aae05ce3560c72ad8251fd79e2ff9ffa7fb2d5e7c1a4bdb2dbc2eeeeac6450aaad8c40649ff4675ddf95365ef8604a93333224 WHIRLPOOL 05882dd5cc9e2b99b78dc882fed49547dc6b6c133616574987322623e3bd734dc74435b69a6c864f928eb087df7a1ab42910adc47a7d0e70d54178e6b319f628
diff --git a/dev-util/mono-packaging-tools/metadata.xml b/dev-util/mono-packaging-tools/metadata.xml
index b1262f1..1082890 100644
--- a/dev-util/mono-packaging-tools/metadata.xml
+++ b/dev-util/mono-packaging-tools/metadata.xml
@@ -5,4 +5,18 @@
<email>dotnet@gentoo.org</email>
<description>Gentoo Dotnet Project</description>
</maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ArsenShnurkov/mono-packaging-tools/issues</bugs-to>
+ <remote-id type="github">ArsenShnurkov/mono-packaging-tools</remote-id>
+ </upstream>
+ <use>
+ <flag name='aot'>compile to machine code and store to disk during install, to save time later during startups</flag>
+ <flag name='pkg-config'>create .pc file(s) for .dll(s) installed to gac</flag>
+ </use>
+ <longdescription lang="en">
+ Various utils for packaging mono projects
+ </longdescription>
+ <longdescription lang="ru">
+ Вспомогательные утилиты для использования в ebuild-ах для clr-приложений
+ </longdescription>
</pkgmetadata>
diff --git a/dev-util/mono-packaging-tools/mono-packaging-tools-0.2.1_p20160115.ebuild b/dev-util/mono-packaging-tools/mono-packaging-tools-0.2.1_p20160115.ebuild
new file mode 100644
index 0000000..e6ecf52
--- /dev/null
+++ b/dev-util/mono-packaging-tools/mono-packaging-tools-0.2.1_p20160115.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6 # >=portage-2.2.25
+KEYWORDS="~x86 ~amd64"
+
+USE_DOTNET="net45"
+# debug = debug configuration (symbols and defines for debugging)
+# test = allow NUnit tests to run
+# developer = generate symbols information (to view line numbers in stack traces, either in debug or release configuration)
+# aot = compile to machine code and store to disk during install, to save time later during startups
+# nupkg = create .nupkg file from .nuspec
+# gac = install into gac
+# pkg-config = register in pkg-config database
+IUSE="${USE_DOTNET} debug test +developer +aot +nupkg +gac +pkg-config"
+
+inherit nupkg
+
+HOMEPAGE="http://arsenshnurkov.github.io/mono-packaging-tools"
+DESCRIPTION="mono packaging helpers"
+LICENSE="GPL-3"
+LICENSE_URL="https://raw.githubusercontent.com/ArsenShnurkov/mono-packaging-tools/master/LICENSE"
+
+SLOT="0"
+
+REPOSITORY_NAME="mono-packaging-tools"
+REPOSITORY_URL="https://github.com/ArsenShnurkov/${REPOSITORY_NAME}"
+EGIT_COMMIT="17bfa8a2c3a7c3f6507e0226764066750ef91f03"
+SRC_URI="${REPOSITORY_URL}/archive/${EGIT_COMMIT}.zip -> ${P}.zip
+ mirror://gentoo/mono.snk.bz2"
+S="${WORKDIR}/${REPOSITORY_NAME}-${EGIT_COMMIT}"
+
+COMMON_DEPENDENCIES="|| ( >=dev-lang/mono-4.2 <dev-lang/mono-9999 )
+ >=dev-dotnet/eto-parse-1.4.0[nupkg]
+ "
+DEPEND="${COMMON_DEPENDENCIES}
+ "
+RDEPEND="${COMMON_DEPENDENCIES}
+ "
+
+METAFILETOBUILD="${S}/${SLN_FILE}"
+
+METAFILETOBUILD="mono-packaging-tools.sln"
+NUSPEC_FILENAME="${PN}.nuspec"
+NUSPEC_ID="${REPOSITORY_NAME}"
+COMMIT_DATE_INDEX="$(get_version_component_count ${PV} )"
+COMMIT_DATE="$(get_version_component_range $COMMIT_DATE_INDEX ${PV} )"
+NUSPEC_VERSION="$(get_version_component_range 1-3)${COMMIT_DATE//p/.}${PR//r/}"
+ICON_FILENAME="${PN}.png"
+ICON_FINALNAME="${NUSPEC_ID}.${NUSPEC_VERSION}.png"
+ICON_PATH="$(get_nuget_trusted_icons_location)/${ICON_FINALNAME}"
+
+src_prepare() {
+ #change version in .nuspec
+ # PV = Package version (excluding revision, if any), for example 6.3.
+ # It should reflect the upstream versioning scheme
+ sed "s/@VERSION@/${PV}/g" "${FILESDIR}/${NUGET_PACKAGE_ID}.nuspec" >"${S}/${NUGET_PACKAGE_ID}.nuspec" || die
+
+ enuget_restore "${METAFILETOBUILD}"
+}
+
+src_compile() {
+ exbuild "${METAFILETOBUILD}"
+ enuspec "${NUGET_PACKAGE_ID}.nuspec"
+}
+
+install_tool() {
+ MONO=/usr/bin/mono
+ doins $1/bin/${DIR}/*
+ if use developer; then
+ make_wrapper $1 "${MONO} --debug /usr/share/${PN}/$1.exe"
+ else
+ make_wrapper $1 "${MONO} /usr/share/${PN}/$1.exe"
+ fi;
+}
+
+src_install() {
+ if use debug; then
+ DIR="Debug"
+ else
+ DIR="Release"
+ fi
+
+ insinto "/usr/share/${PN}/"
+ install_tool mpt-gitmodules
+ install_tool mpt-sln
+ install_tool mpt-csproj
+ install_tool mpt-machine
+ install_tool mpt-nuget
+
+ enupkg "${WORKDIR}/${PN}.${PV}.nupkg"
+
+ dodoc README.md
+}