dev-lang/solidity: New package
authorMathy Vanvoorden <mathy@vanvoorden.be>
Sat, 8 Oct 2016 21:04:39 +0000 (23:04 +0200)
committerDavid Seifert <soap@gentoo.org>
Wed, 12 Oct 2016 07:36:41 +0000 (09:36 +0200)
Solidity is a high-level language whose syntax is similar
to that of JavaScript and it is designed to compile
to code for the Ethereum Virtual Machine.

Package-Manager: portage-2.3.0
Closes: https://github.com/gentoo/gentoo/pull/2514

Signed-off-by: David Seifert <soap@gentoo.org>
dev-lang/solidity/Manifest [new file with mode: 0644]
dev-lang/solidity/files/solidity-0.4.2-commit_hash.txt [new file with mode: 0644]
dev-lang/solidity/metadata.xml [new file with mode: 0644]
dev-lang/solidity/solidity-0.4.2.ebuild [new file with mode: 0644]

diff --git a/dev-lang/solidity/Manifest b/dev-lang/solidity/Manifest
new file mode 100644 (file)
index 0000000..9e7a8e6
--- /dev/null
@@ -0,0 +1 @@
+DIST solidity-0.4.2.tar.gz 495039 SHA256 0dd176919cab5492aecb27d1d8de39182b5e880979d5082fca6d7a01ebce28f1 SHA512 2ef2e58775e22eefce867ee73dbab61f54def1edd95e089ec3a388b5aaba316c44fe18b92d45e070014b9df6e450b2b27fe78434f5db40f0476c505b2541572c WHIRLPOOL 541c2bd8d729bd9d1ef15739b539ca877b7c1f4e1ed9e9eda8ad7d3fd4c306001799727de14dae8fbf0092c31c9b0448c9ea7af92ca069ac24cf010f0a6c8ef6
diff --git a/dev-lang/solidity/files/solidity-0.4.2-commit_hash.txt b/dev-lang/solidity/files/solidity-0.4.2-commit_hash.txt
new file mode 100644 (file)
index 0000000..fd2779b
--- /dev/null
@@ -0,0 +1 @@
+af6afb04
diff --git a/dev-lang/solidity/metadata.xml b/dev-lang/solidity/metadata.xml
new file mode 100644 (file)
index 0000000..72530b2
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+       <maintainer type="person">
+               <email>mathy@vanvoorden.be</email>
+               <name>Mathy Vanvoorden</name>
+       </maintainer>
+       <maintainer type="project">
+               <email>proxy-maint@gentoo.org</email>
+               <name>Proxy Maintainers</name>
+       </maintainer>
+</pkgmetadata>
diff --git a/dev-lang/solidity/solidity-0.4.2.ebuild b/dev-lang/solidity/solidity-0.4.2.ebuild
new file mode 100644 (file)
index 0000000..0fa788e
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+CMAKE_MIN_VERSION="3.0.0"
+
+inherit cmake-utils
+
+DESCRIPTION="The Solidity Contract-Oriented Programming Language"
+HOMEPAGE="https://github.com/ethereum/solidity"
+SRC_URI="https://github.com/ethereum/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-libs/jsoncpp:=
+       dev-libs/boost:=
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       default
+
+       # The build won't work without this file but it is missing from
+       # the release tarball.
+       #
+       # Reported upstream: https://github.com/ethereum/solidity/issues/1183
+
+       cp "${FILESDIR}"/${P}-commit_hash.txt "${S}"/commit_hash.txt || die "Could not copy commit hash"
+
+       # Without this file the build is marked as a developer version
+       # but it is missing from the release tarball.
+       #
+       # Reported upstream: https://github.com/ethereum/solidity/issues/1183
+
+       touch "${S}"/prerelease.txt || die "Could not mark as release version"
+}