aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorale <ale@FreeBSD.org>2018-01-23 21:58:22 +0800
committerKoop Mast <kwm@rainbow-runner.nl>2018-02-04 06:28:12 +0800
commitdef5f4b6eac34c886b296eb6fe7f0180beca8f2e (patch)
treebb21b17afc5cfaed1a3eba623557edbfb88aa92f /lang
parent22c379da616270892cce1f6c068cec91faf4507d (diff)
downloadfreebsd-ports-gnome-def5f4b6eac34c886b296eb6fe7f0180beca8f2e.tar.gz
freebsd-ports-gnome-def5f4b6eac34c886b296eb6fe7f0180beca8f2e.tar.zst
freebsd-ports-gnome-def5f4b6eac34c886b296eb6fe7f0180beca8f2e.zip
The Solidity Contract-Oriented Programming Language
WWW: https://github.com/ethereum/solidity
Diffstat (limited to 'lang')
-rw-r--r--lang/Makefile1
-rw-r--r--lang/solidity/Makefile34
-rw-r--r--lang/solidity/distinfo3
-rw-r--r--lang/solidity/files/jsoncpp.cmake2
-rw-r--r--lang/solidity/files/patch-libevmasm_Instruction.h11
-rw-r--r--lang/solidity/pkg-descr3
6 files changed, 54 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index f3ffffd37a01..382db42ec251 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -329,6 +329,7 @@
SUBDIR += smalltalk
SUBDIR += smlnj
SUBDIR += snobol4
+ SUBDIR += solidity
SUBDIR += spidermonkey17
SUBDIR += spidermonkey170
SUBDIR += spidermonkey185
diff --git a/lang/solidity/Makefile b/lang/solidity/Makefile
new file mode 100644
index 000000000000..51cfae667451
--- /dev/null
+++ b/lang/solidity/Makefile
@@ -0,0 +1,34 @@
+# Created by: Alex Dupre <ale@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= solidity
+PORTVERSION= 0.4.19
+CATEGORIES= lang
+MASTER_SITES= https://github.com/ethereum/solidity/releases/download/v${PORTVERSION}/
+DISTNAME= ${PORTNAME}_${PORTVERSION}
+
+MAINTAINER= ale@FreeBSD.org
+COMMENT= Solidity Contract-Oriented Programming Language
+
+LICENSE= GPLv3
+
+BUILD_DEPENDS= boost-libs>=0:devel/boost-libs
+LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp
+
+OPTIONS_DEFINE= SMT
+SMT_DESC= SMT Checker
+SMT_LIB_DEPENDS=libz3.so:math/z3
+
+USES= cmake
+
+CMAKE_ARGS+= -DUSE_LD_GOLD=OFF -DTESTS=OFF \
+ -DJSONCPP_INCLUDE_DIR:STRING="${LOCALBASE}/include/jsoncpp" \
+ -DJSONCPP_LIB_DIR:STRING="${LOCALBASE}/lib"
+
+PLIST_FILES= bin/solc
+
+pre-patch:
+ @${CP} ${FILESDIR}/jsoncpp.cmake ${WRKSRC}/cmake/
+ @${REINPLACE_CMD} '/EthCcache/d' ${WRKSRC}/CMakeLists.txt
+
+.include <bsd.port.mk>
diff --git a/lang/solidity/distinfo b/lang/solidity/distinfo
new file mode 100644
index 000000000000..cb9edbab4ba6
--- /dev/null
+++ b/lang/solidity/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1516355316
+SHA256 (solidity_0.4.19.tar.gz) = 6525f2cfe498785b3d752b616cb9b5e81222654ec594a27708f45e688bfa56e9
+SIZE (solidity_0.4.19.tar.gz) = 1027296
diff --git a/lang/solidity/files/jsoncpp.cmake b/lang/solidity/files/jsoncpp.cmake
new file mode 100644
index 000000000000..20695766aabd
--- /dev/null
+++ b/lang/solidity/files/jsoncpp.cmake
@@ -0,0 +1,2 @@
+include_directories(${JSONCPP_INCLUDE_DIR})
+link_directories(${JSONCPP_LIB_DIR})
diff --git a/lang/solidity/files/patch-libevmasm_Instruction.h b/lang/solidity/files/patch-libevmasm_Instruction.h
new file mode 100644
index 000000000000..da620229ab56
--- /dev/null
+++ b/lang/solidity/files/patch-libevmasm_Instruction.h
@@ -0,0 +1,11 @@
+--- libevmasm/Instruction.h.orig 2018-01-23 11:51:18 UTC
++++ libevmasm/Instruction.h
+@@ -26,6 +26,8 @@
+ #include <libdevcore/Assertions.h>
+ #include "Exceptions.h"
+
++#undef MSIZE // remove MSIZE definition from <sys/params.h>, included by boost 1.66.0
++
+ namespace dev
+ {
+ namespace solidity
diff --git a/lang/solidity/pkg-descr b/lang/solidity/pkg-descr
new file mode 100644
index 000000000000..7a0d19b41824
--- /dev/null
+++ b/lang/solidity/pkg-descr
@@ -0,0 +1,3 @@
+The Solidity Contract-Oriented Programming Language
+
+WWW: https://github.com/ethereum/solidity