Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Aug 2015 13:21:54 +0000 (UTC)
From:      Steve Wills <swills@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r393586 - in head/net-p2p: . litecoin litecoin-daemon litecoin-utils litecoin/files
Message-ID:  <201508051321.t75DLsjo033962@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: swills
Date: Wed Aug  5 13:21:53 2015
New Revision: 393586
URL: https://svnweb.freebsd.org/changeset/ports/393586

Log:
  net-p2p/litecoin: Update to 0.10.2.2
  
  While here, clean up and add a litecoin-utils port
  
  PR:		201154
  Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>

Added:
  head/net-p2p/litecoin-utils/
  head/net-p2p/litecoin-utils/Makefile   (contents, props changed)
  head/net-p2p/litecoin/files/patch-src_crypto_scrypt.cpp   (contents, props changed)
  head/net-p2p/litecoin/files/patch-src_crypto_scrypt.h   (contents, props changed)
  head/net-p2p/litecoin/files/patch-src_leveldb_helpers_memenv_memenv.cc   (contents, props changed)
Deleted:
  head/net-p2p/litecoin/files/patch-bitcoin-qt.pro
  head/net-p2p/litecoin/files/patch-src__makefile.unix
  head/net-p2p/litecoin/files/patch-src__scrypt.cpp
  head/net-p2p/litecoin/files/patch-src__scrypt.h
Modified:
  head/net-p2p/Makefile
  head/net-p2p/litecoin-daemon/Makefile
  head/net-p2p/litecoin/Makefile
  head/net-p2p/litecoin/distinfo

Modified: head/net-p2p/Makefile
==============================================================================
--- head/net-p2p/Makefile	Wed Aug  5 13:18:22 2015	(r393585)
+++ head/net-p2p/Makefile	Wed Aug  5 13:21:53 2015	(r393586)
@@ -48,6 +48,7 @@
     SUBDIR += linuxdcpp
     SUBDIR += litecoin
     SUBDIR += litecoin-daemon
+    SUBDIR += litecoin-utils
     SUBDIR += lopster
     SUBDIR += microdc2
     SUBDIR += minder

Modified: head/net-p2p/litecoin-daemon/Makefile
==============================================================================
--- head/net-p2p/litecoin-daemon/Makefile	Wed Aug  5 13:18:22 2015	(r393585)
+++ head/net-p2p/litecoin-daemon/Makefile	Wed Aug  5 13:21:53 2015	(r393586)
@@ -1,9 +1,27 @@
 # $FreeBSD$
 
-PKGNAMESUFFIX=	-daemon
-COMMENT=	Virtual Peer-to-Peer Currency Software
 MASTERDIR=	${.CURDIR}/../litecoin
-DESCR=		${MASTERDIR}/pkg-descr
+PKGNAMESUFFIX=	-daemon
+
+COMMENT=	Virtual Peer-to-Peer Currency (Daemon)
+
 SLAVE_PORT=	yes
-OPTIONS_EXCLUDE=	X11 DBUS QRCODES
+
+USES+=		cpe
+CPE_VENDOR=	bitcoin
+CPE_PRODUCT=	bitcoind
+CPE_VERSION=	${PORTVERSION:R}
+
+OPTIONS_DEFINE=		DEBUG HARDENING TESTS UPNP WALLET
+OPTIONS_DEFAULT=	HARDENING WALLET
+
+CONFIGURE_ARGS=	--with-daemon \
+		--without-gui \
+		--without-libs \
+		--without-qrencode \
+		--without-utils \
+		--disable-reduce-exports
+
+PLIST_FILES=	bin/litecoind
+
 .include "${MASTERDIR}/Makefile"

Added: head/net-p2p/litecoin-utils/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/litecoin-utils/Makefile	Wed Aug  5 13:21:53 2015	(r393586)
@@ -0,0 +1,23 @@
+# $FreeBSD$
+
+MASTERDIR=	${.CURDIR}/../litecoin
+PKGNAMESUFFIX=	-utils
+
+COMMENT=	Virtual Peer-to-Peer Currency (CLI and Utilities)
+
+SLAVE_PORT=	yes
+
+OPTIONS_DEFINE=		DEBUG HARDENING TESTS
+OPTIONS_DEFAULT=	HARDENING TESTS
+
+CONFIGURE_ARGS=	--without-daemon \
+		--without-gui \
+		--without-libs \
+		--without-qrencode \
+		--with-utils \
+		--disable-wallet \
+		--disable-reduce-exports
+
+PLIST_FILES=	bin/litecoin-cli bin/litecoin-tx
+
+.include "${MASTERDIR}/Makefile"

Modified: head/net-p2p/litecoin/Makefile
==============================================================================
--- head/net-p2p/litecoin/Makefile	Wed Aug  5 13:18:22 2015	(r393585)
+++ head/net-p2p/litecoin/Makefile	Wed Aug  5 13:21:53 2015	(r393586)
@@ -2,110 +2,110 @@
 # $FreeBSD$
 
 PORTNAME=	litecoin
-PORTVERSION=	0.8.6.2
+PORTVERSION=	0.10.2.2
 DISTVERSIONPREFIX=	v
-PORTREVISION=	1
 CATEGORIES=	net-p2p finance
 MASTER_SITES=	LOCAL/swills
 
 MAINTAINER=	swills@FreeBSD.org
-COMMENT=	Virtual Peer-to-Peer Currency Software
+COMMENT?=	Virtual Peer-to-Peer Currency Client (QT)
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/COPYING
 
 LIB_DEPENDS=	libboost_date_time.so:${PORTSDIR}/devel/boost-libs
 
+USES+=		autoreconf gmake libtool pkgconfig shebangfix
+SHEBANG_FILES=	src/test/*.py
 USE_GITHUB=	yes
-GH_ACCOUNT=	litecoin-project
-
 USE_OPENSSL=	yes
-USE_BDB=	yes
-WANT_BDB_VER=	48
+GNU_CONFIGURE=	yes
 
-USES=		gmake
+SLAVE_PORT?=	no
 
-OPTIONS_DEFINE=	X11 UPNP QRCODES DBUS
-OPTIONS_DEFAULT=	X11 QRCODES
+.if defined(SLAVE_PORT) && ${SLAVE_PORT} == "no"
+USES+=		cpe desktop-file-utils
+USE_QT4=	corelib gui moc_build linguisttools_build network qmake_build \
+		rcc_build uic_build
+CPE_VENDOR=	bitcoin
+CPE_PRODUCT=	bitcoin-qt
+CPE_VERSION=	${PORTVERSION:R}
 
-UPNP_DESC=	Build with UPNP support
-QRCODES_DESC=	Build with QR code display
-DBUS_DESC=	Build with DBUS support
+BUILD_DEPENDS+=	protoc:${PORTSDIR}/devel/protobuf
+LIB_DEPENDS+=	libprotobuf.so:${PORTSDIR}/devel/protobuf
 
-CXXFLAGS+=	-I${LOCALBASE}/include -I${BDB_INCLUDE_DIR}
-CXXFLAGS+=	-L${LOCALBASE}/lib -L${BDB_LIB_DIR}
+DBUS_USE=		QT4=dbus
 
-.include <bsd.port.options.mk>
-
-.if ${PORT_OPTIONS:MUPNP}
-LIB_DEPENDS+=	libminiupnpc.so:${PORTSDIR}/net/miniupnpc
-QMAKE_USE_UPNP=	1
-.else
-QMAKE_USE_UPNP=	-
+TESTS_USE=		QT4=testlib
+TESTS_PLIST_FILES=	%%QT_BINDIR%%/test_litecoin-qt
 .endif
 
-.if ${PORT_OPTIONS:MX11}
-USE_QT4=	network gui qmake_build linguist_build uic_build moc_build rcc_build
+OPTIONS_DEFINE?=	DBUS DEBUG HARDENING QRCODES TESTS UPNP WALLET
+OPTIONS_DEFAULT?=	HARDENING QRCODES WALLET
+OPTIONS_SUB=		yes
 
-BINARY=		litecoin-qt
-.else
-BINARY=		litecoind
-MAKEFILE=	makefile.unix
-ALL_TARGET=	${BINARY}
-MAKE_ARGS+=	-C ${WRKSRC}/src USE_UPNP=${QMAKE_USE_UPNP}
-.endif
+HARDENING_DESC=	Attempt to harden binaries (PIE for ASLR, NX Stack)
+QRCODES_DESC=	Display QR Codes
+TESTS_DESC=	Build test binary and unit tests
+WALLET_DESC=	Wallet Management Support
 
-PLIST_FILES=	bin/${BINARY}
+DBUS_CONFIGURE_WITH=	qtdbus
 
-.if ${PORT_OPTIONS:MX11} && ${PORT_OPTIONS:MQRCODES}
-LIB_DEPENDS+=	libqrencode.so:${PORTSDIR}/graphics/libqrencode
-QMAKE_USE_QRCODE=1
-.else
-QMAKE_USE_QRCODE=0
-.endif
+DEBUG_CONFIGURE_ENABLE=		debug
+DEBUG_INSTALL_TARGET_OFF=	install-strip
 
-.if ${PORT_OPTIONS:MDBUS}
-USE_QT4+=	dbus
-QMAKE_USE_DBUS=	1
-.else
-QMAKE_USE_DBUS=	0
-.endif
+HARDENING_CONFIGURE_ENABLE=	hardening
 
-.include <bsd.port.pre.mk>
+TESTS_CONFIGURE_ENABLE=	tests
+TESTS_PLIST_FILES+=	bin/test_litecoin
 
-.if ${PORT_OPTIONS:MX11}
-PLIST_FILES+=	share/applications/litecoin-qt.desktop share/pixmaps/litecoin64.png
-.endif
+UPNP_CONFIGURE_WITH=	miniupnpc
+UPNP_LIB_DEPENDS=	libminiupnpc.so:${PORTSDIR}/net/miniupnpc
+UPNP_CPPFLAGS=		-I${LOCALBASE}/include
+UPNP_LIBS=		-L${LOCALBASE}/lib
 
-do-configure:
-.if ${PORT_OPTIONS:MX11}
-	cd ${BUILD_WRKSRC} && \
-		${QMAKE} ${QMAKE_ARGS} \
-		QMAKE_LIBDIR+=${BDB_LIB_DIR} \
-		QMAKE_LRELEASE=${LRELEASE} \
-		USE_UPNP=${QMAKE_USE_UPNP} \
-		USE_QRCODE=${QMAKE_USE_QRCODE} \
-		USE_DBUS=${QMAKE_USE_DBUS} \
-		bitcoin-qt.pro
-.endif
+QRCODES_CONFIGURE_WITH=	qrencode
+QRCODES_LIB_DEPENDS=	libqrencode.so:${PORTSDIR}/graphics/libqrencode
 
-do-install:
-.if ${PORT_OPTIONS:MX11}
-	${INSTALL_PROGRAM} ${WRKSRC}/${BINARY} ${STAGEDIR}${PREFIX}/bin/
-	${REINPLACE_CMD} -e 's,=/usr,=${PREFIX},' \
-		-e 's,bitcoin,litecoin,g' \
-		-e 's,Bitcoin,Litecoin,g' \
-		-e 's,128,64,g' ${WRKSRC}/contrib/debian/bitcoin-qt.desktop
-	${INSTALL} ${WRKSRC}/contrib/debian/bitcoin-qt.desktop ${STAGEDIR}${PREFIX}/share/applications/litecoin-qt.desktop
-	${INSTALL} ${WRKSRC}/share/pixmaps/bitcoin64.png ${STAGEDIR}${PREFIX}/share/pixmaps/litecoin64.png
-.else
-	${INSTALL_PROGRAM} ${WRKSRC}/src/${BINARY} ${STAGEDIR}${PREFIX}/bin/
-.endif
+WALLET_CONFIGURE_ENABLE=	wallet
+WALLET_CXXFLAGS=		-I${BDB_INCLUDE_DIR}
+WALLET_LIBS=			-L${BDB_LIB_DIR}
+WALLET_USE=			BDB=48
+
+GH_ACCOUNT=	litecoin-project
+
+CONFIGURE_ARGS?=	--without-libs \
+			--disable-reduce-exports \
+			--with-gui \
+			--without-daemon \
+			--without-utils
+
+CONFIGURE_ENV=	CRYPTO_CFLAGS="-I${OPENSSLINC}" CRYPTO_LIBS="-L${OPENSSLLIB} -lcrypto" \
+		SSL_CFLAGS="-I${OPENSSLINC}" SSL_LIBS="-L${OPENSSLLIB} -lssl"
+
+PLIST_FILES?=	bin/litecoin-qt share/applications/litecoin-qt.desktop \
+		share/pixmaps/litecoin128.png
+
+.if defined(SLAVE_PORT) && ${SLAVE_PORT} == "no"
 
 post-patch:
-	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/src/makefile.unix
+	@${REINPLACE_CMD} -e 's|bitcoin128|litecoin128|' \
+		${WRKSRC}/contrib/debian/bitcoin-qt.desktop
+
+post-install:
+	@${REINPLACE_CMD} -e 's,=/usr,=${PREFIX},' \
+		${WRKSRC}/contrib/debian/bitcoin-qt.desktop
+	${INSTALL} ${WRKSRC}/contrib/debian/bitcoin-qt.desktop \
+		${STAGEDIR}${PREFIX}/share/applications/litecoin-qt.desktop
+	${INSTALL} ${WRKSRC}/share/pixmaps/bitcoin128.png \
+		${STAGEDIR}${PREFIX}/share/pixmaps/litecoin128.png
 
-regression-test:
-.if !${PORT_OPTIONS:MX11}
-	@${MAKE_CMD} -C ${WRKSRC}/src -f makefile.unix USE_UPNP=${QMAKE_USE_UPNP} test_litecoin
-	(cd ${WRKSRC}/src ; ./test_litecoin)
 .endif
 
-.include <bsd.port.post.mk>
+regression-test: build
+	# To use this sucessfully, remove --without-daemon and --without-utils
+	# from CONFIGURE_ARGS above.
+
+	@cd ${WRKSRC} && ${GMAKE} check
+
+.include <bsd.port.mk>

Modified: head/net-p2p/litecoin/distinfo
==============================================================================
--- head/net-p2p/litecoin/distinfo	Wed Aug  5 13:18:22 2015	(r393585)
+++ head/net-p2p/litecoin/distinfo	Wed Aug  5 13:21:53 2015	(r393586)
@@ -1,2 +1,2 @@
-SHA256 (litecoin-project-litecoin-v0.8.6.2_GH0.tar.gz) = 724d4729f869337a334a95f72acceca815531dcce906c92a76e7686a75235c97
-SIZE (litecoin-project-litecoin-v0.8.6.2_GH0.tar.gz) = 4806593
+SHA256 (litecoin-project-litecoin-v0.10.2.2_GH0.tar.gz) = 952c84b181323db17a8fa23217f59b576ad3ebad92c158b3a7c29d458a1130dc
+SIZE (litecoin-project-litecoin-v0.10.2.2_GH0.tar.gz) = 4700783

Added: head/net-p2p/litecoin/files/patch-src_crypto_scrypt.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/litecoin/files/patch-src_crypto_scrypt.cpp	Wed Aug  5 13:21:53 2015	(r393586)
@@ -0,0 +1,33 @@
+--- src/crypto/scrypt.cpp.orig	2015-08-04 13:27:49 UTC
++++ src/crypto/scrypt.cpp
+@@ -32,6 +32,7 @@
+ #include <stdlib.h>
+ #include <stdint.h>
+ #include <string.h>
++#include <sys/endian.h>
+ #include <openssl/sha.h>
+ 
+ #if defined(USE_SSE2) && !defined(USE_SSE2_ALWAYS)
+@@ -44,22 +45,6 @@
+ #endif
+ #endif
+ 
+-static inline uint32_t be32dec(const void *pp)
+-{
+-	const uint8_t *p = (uint8_t const *)pp;
+-	return ((uint32_t)(p[3]) + ((uint32_t)(p[2]) << 8) +
+-	    ((uint32_t)(p[1]) << 16) + ((uint32_t)(p[0]) << 24));
+-}
+-
+-static inline void be32enc(void *pp, uint32_t x)
+-{
+-	uint8_t *p = (uint8_t *)pp;
+-	p[3] = x & 0xff;
+-	p[2] = (x >> 8) & 0xff;
+-	p[1] = (x >> 16) & 0xff;
+-	p[0] = (x >> 24) & 0xff;
+-}
+-
+ typedef struct HMAC_SHA256Context {
+ 	SHA256_CTX ictx;
+ 	SHA256_CTX octx;

Added: head/net-p2p/litecoin/files/patch-src_crypto_scrypt.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/litecoin/files/patch-src_crypto_scrypt.h	Wed Aug  5 13:21:53 2015	(r393586)
@@ -0,0 +1,22 @@
+--- src/crypto/scrypt.h.orig	2015-06-15 08:51:30 UTC
++++ src/crypto/scrypt.h
+@@ -27,19 +27,4 @@ void
+ PBKDF2_SHA256(const uint8_t *passwd, size_t passwdlen, const uint8_t *salt,
+     size_t saltlen, uint64_t c, uint8_t *buf, size_t dkLen);
+ 
+-static inline uint32_t le32dec(const void *pp)
+-{
+-        const uint8_t *p = (uint8_t const *)pp;
+-        return ((uint32_t)(p[0]) + ((uint32_t)(p[1]) << 8) +
+-            ((uint32_t)(p[2]) << 16) + ((uint32_t)(p[3]) << 24));
+-}
+-
+-static inline void le32enc(void *pp, uint32_t x)
+-{
+-        uint8_t *p = (uint8_t *)pp;
+-        p[0] = x & 0xff;
+-        p[1] = (x >> 8) & 0xff;
+-        p[2] = (x >> 16) & 0xff;
+-        p[3] = (x >> 24) & 0xff;
+-}
+ #endif

Added: head/net-p2p/litecoin/files/patch-src_leveldb_helpers_memenv_memenv.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/litecoin/files/patch-src_leveldb_helpers_memenv_memenv.cc	Wed Aug  5 13:21:53 2015	(r393586)
@@ -0,0 +1,11 @@
+--- src/leveldb/helpers/memenv/memenv.cc.orig	2015-07-10 17:23:55 UTC
++++ src/leveldb/helpers/memenv/memenv.cc
+@@ -2,6 +2,8 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file. See the AUTHORS file for names of contributors.
+ 
++#define __STDC_LIMIT_MACROS
++
+ #include "helpers/memenv/memenv.h"
+ 
+ #include "leveldb/env.h"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201508051321.t75DLsjo033962>