Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Feb 2015 11:10:23 +0000 (UTC)
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r379779 - in head: . net-p2p net-p2p/bitcoin net-p2p/bitcoin-daemon net-p2p/bitcoin-utils net-p2p/bitcoin/files
Message-ID:  <201502241110.t1OBANgl047670@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: koobs
Date: Tue Feb 24 11:10:23 2015
New Revision: 379779
URL: https://svnweb.freebsd.org/changeset/ports/379779
QAT: https://qat.redports.org/buildarchive/r379779/

Log:
  net-p2p/bitcoin: Update to 0.10.0, split bitcoin-utils, LOTS MORE
  
  - Update to 0.10.0
  - Split out bitcoin-cli and bitcoin-tx into net-p2p/bitcoin-utils
  - Slave out bitcoin-utils and bitcoin-daemon properly
  - Canonicalize MASTER_SITES to what USE_GITHUB uses
  - Update COMMENT so each port is unique
  - protobuf/protoc is GUI-only dependency, remove it from unconditional
    {BUILD,LIB}_DEPENDS.
  - Group and sort USES/USE_*
  - Deprecate USE_AUTOTOOLS in favour of USES=autoreconf
  - Remove {AUTOMAKE,ACLOCAL}_ARGS accordingly
  - Remove unconditional *FLAGS and replace then with OPTIONS-conditional
    ones.
  - Remove unnecessary CXXFLAGS
  - Add HARDENING and TESTS options, add them to OPTIONS_DEFAULT
  - Add DBUS and DEBUG options
  - Define OPTIONS only where they're relevant for each port
  - Rejig OPTIONS descriptions for greater clarity
  - Replace hard-coded SSL inc/lib flags with USE_OPENSSL variables to
    allow for switching between Base and Ports OpenSSL's.
  - Use OPTIONS helpers
  - Remove post-patch target
  - Canonicalize CONFIGURE_ARGS, with slave port specific overrides.
  - Verbosify builds (V=1)
  - Remove upstreamed patches
  - Add regression-test targets (requires TESTS option)
  - Add --disable-reduce-exports to CONFIGURE_ARGS until upstream PR #5819
    lands, which caused sanity test failure at run-time [1]
  
    P.S We now pass the test suite (not including python test, which
        has an error)
  
  Based on patch Submitted by:
  
   - Andriy Voskoboinyk  <s3erios gmail.com>
   - Robert Backhaus <robbak gmail.com>
  
  [1] https://github.com/bitcoin/bitcoin/pull/5819
  
  PR:		193424
  Reviewed by:	maintainer
  Approved by:	maintainer

Added:
  head/net-p2p/bitcoin-utils/
  head/net-p2p/bitcoin-utils/Makefile   (contents, props changed)
  head/net-p2p/bitcoin/files/patch-memenv.cc_enable_limit_macros   (contents, props changed)
Deleted:
  head/net-p2p/bitcoin/files/patch-Makefile_include_editSedCommands.patch
  head/net-p2p/bitcoin/files/patch-qt_makefile_am_editSedCommands.patch
Modified:
  head/UPDATING
  head/net-p2p/Makefile
  head/net-p2p/bitcoin-daemon/Makefile
  head/net-p2p/bitcoin/Makefile
  head/net-p2p/bitcoin/distinfo

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Tue Feb 24 10:59:00 2015	(r379778)
+++ head/UPDATING	Tue Feb 24 11:10:23 2015	(r379779)
@@ -5,6 +5,14 @@ they are unavoidable.
 You should get into the habit of checking this file for changes each time
 you update your ports collection, before attempting any port upgrades.
 
+20150224:
+  AFFECTS: Users of net-p2p/bitcoin (cli utilities)
+
+  The bitcoin-cli and bitcoin-tx utilities have been re-packaged into
+  a seperate port. If you require these programs, or use the bitcoin-cli
+  program to access the daemon or the GUI, install net-p2p/bitcoin-utils
+  to reinstall them.
+
 20150220:
   AFFECTS: users of PHP
 

Modified: head/net-p2p/Makefile
==============================================================================
--- head/net-p2p/Makefile	Tue Feb 24 10:59:00 2015	(r379778)
+++ head/net-p2p/Makefile	Tue Feb 24 11:10:23 2015	(r379779)
@@ -7,6 +7,7 @@
     SUBDIR += amule-devel
     SUBDIR += bitcoin
     SUBDIR += bitcoin-daemon
+    SUBDIR += bitcoin-utils
     SUBDIR += bitflu
     SUBDIR += bitmessage
     SUBDIR += bnbt

Modified: head/net-p2p/bitcoin-daemon/Makefile
==============================================================================
--- head/net-p2p/bitcoin-daemon/Makefile	Tue Feb 24 10:59:00 2015	(r379778)
+++ head/net-p2p/bitcoin-daemon/Makefile	Tue Feb 24 11:10:23 2015	(r379779)
@@ -1,9 +1,25 @@
 # $FreeBSD$
 
-PKGNAMESUFFIX=	-daemon
-COMMENT=	Virtual Peer-to-Peer Currency Client
 MASTERDIR=	${.CURDIR}/../bitcoin
-DESCR=		${MASTERDIR}/pkg-descr
+PKGNAMESUFFIX=	-daemon
+
+COMMENT=	Virtual Peer-to-Peer Currency (Daemon)
+
 SLAVE_PORT=	yes
-OPTIONS_EXCLUDE=	GUI QRCODES
+
+OPTIONS_DEFINE=		DEBUG HARDENING TESTS UPNP WALLET
+OPTIONS_DEFAULT=	HARDENING TESTS WALLET
+
+CONFIGURE_ARGS=	--with-daemon \
+		--without-gui \
+		--without-libs \
+		--without-qrencode \
+		--without-utils \
+		--disable-reduce-exports
+
+PLIST_FILES=	bin/bitcoind
+
+regression-test: build
+	@cd ${WRKSRC} && ${GMAKE} check
+
 .include "${MASTERDIR}/Makefile"

Added: head/net-p2p/bitcoin-utils/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/bitcoin-utils/Makefile	Tue Feb 24 11:10:23 2015	(r379779)
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+MASTERDIR=	${.CURDIR}/../bitcoin
+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/bitcoin-cli bin/bitcoin-tx
+
+.include "${MASTERDIR}/Makefile"

Modified: head/net-p2p/bitcoin/Makefile
==============================================================================
--- head/net-p2p/bitcoin/Makefile	Tue Feb 24 10:59:00 2015	(r379778)
+++ head/net-p2p/bitcoin/Makefile	Tue Feb 24 11:10:23 2015	(r379779)
@@ -2,96 +2,96 @@
 # $FreeBSD$
 
 PORTNAME=	bitcoin
-PORTVERSION=	0.9.2
-PORTREVISION=	3
+PORTVERSION=	0.10.0
 CATEGORIES=	net-p2p finance
-MASTER_SITES=	http://vps.robbak.com/distfiles/ \
-		${MASTER_SITE_LOCAL} \
-		http://people.freebsd.org/~swills/ \
-		GH
 
 MAINTAINER=	robbak@robbak.com
-COMMENT=	Virtual Peer-to-Peer Currency Client
+COMMENT?=	Virtual Peer-to-Peer Currency Client (QT)
 
 LICENSE=	MIT
 
-BUILD_DEPENDS=	protoc:${PORTSDIR}/devel/protobuf \
-				pkg-config:${PORTSDIR}/devel/pkgconf
 LIB_DEPENDS=	libboost_date_time.so:${PORTSDIR}/devel/boost-libs
 
-OPTIONS_DEFINE=	GUI WALLET UPNP QRCODES
-OPTIONS_DEFAULT=	GUI WALLET QRCODES
-
-GUI_DESC=	Build and install the QT4 binary
-WALLET_DESC=	Build with support to create and manage a wallet
-UPNP_DESC=	Build with UPNP support
-QRCODES_DESC=	Build with QR code display
-
-AUTOMAKE_ARGS+=	--add-missing
-USE_AUTOTOOLS=	aclocal autoheader automake autoconf
-#ACLOCAL_ARGS=	-I ${LOCALBASE}/share/aclocal
-CONFIGURE_ENV=	SSL_LIBS="-lssl" CRYPTO_LIBS="-lcrypto" SSL_CFLAGS="-I/usr/include" CRYPTO_CFLAGS="-I/usr/include"
-
+USES=		autoreconf gmake libtool pkgconfig
 USE_GITHUB=	yes
-GH_ACCOUNT=	bitcoin
-GH_PROJECT=	bitcoin
-GH_COMMIT=		30a7357
-GH_TAGNAME=	v${PORTVERSION}
-
-USES=			gmake
 USE_OPENSSL=	yes
-USE_BDB=		yes
-WANT_BDB_VER=	48
+GNU_CONFIGURE=	yes
 
-CXXFLAGS+=	-I${LOCALBASE}/include -I${BDB_INCLUDE_DIR}
-CXXFLAGS+=	-L${LOCALBASE}/lib -L${BDB_LIB_DIR}
-CXXFLAGS+=	-Wno-invalid-offsetof
+SLAVE_PORT?=	no
 
-.include <bsd.port.options.mk>
+.if defined(SLAVE_PORT) && ${SLAVE_PORT} == "no"
+USES+=		desktop-file-utils
+USE_QT4=	corelib gui moc_build linguist_build network qmake_build \
+		rcc_build uic_build
 
-CONFIGURE_ARGS+=--disable-tests
+BUILD_DEPENDS+=	protoc:${PORTSDIR}/devel/protobuf
+LIB_DEPENDS+=	libprotobuf.so:${PORTSDIR}/devel/protobuf
 
-.if ${PORT_OPTIONS:MGUI} && !defined(WITHOUT_X11)
-USE_QT4=	corelib gui qmake_build linguist uic moc rcc qtestlib_build
-USES+=		desktop-file-utils
-PLIST_FILES=	%%QT_BINDIR%%/bitcoin-qt %%QT_BINDIR%%/bitcoind %%QT_BINDIR%%/bitcoin-cli
-PLIST_FILES+=	share/applications/bitcoin-qt.desktop share/pixmaps/bitcoin128.png
-CONFIGURE_ARGS+=--with-gui
-.else
-PLIST_FILES=		bin/bitcoind bin/bitcoin-cli
-CONFIGURE_ARGS+=--without-gui
+TESTS_USE=		QT4=testlib
+TESTS_PLIST_FILES=	%%QT_BINDIR%%/test_bitcoin-qt \
+			bin/test_bitcoin
 .endif
 
-.if ${PORT_OPTIONS:MQRCODES}
-LIB_DEPENDS+=	libqrencode.so:${PORTSDIR}/graphics/libqrencode
-CONFIGURE_ARGS+=--with-qrencode
-.else
-CONFIGURE_ARGS+=--without-qrencode
+OPTIONS_DEFINE?=	DBUS DEBUG HARDENING QRCODES TESTS UPNP WALLET
+OPTIONS_DEFAULT?=	HARDENING QRCODES TESTS WALLET
+OPTIONS_SUB=		yes
+
+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
+
+DBUS_CONFIGURE_WITH=	qtdbus
+DBUS_USE=		QT4=dbus
+
+DEBUG_CONFIGURE_ENABLE=		debug
+DEBUG_INSTALL_TARGET_OFF=	install-strip
+
+HARDENING_CONFIGURE_ENABLE=	hardening
+
+TESTS_CONFIGURE_ENABLE=	tests
+.if defined(SLAVE_PORT) && ${SLAVE_PORT} == "yes"
+TESTS_PLIST_FILES=	bin/test_bitcoin
 .endif
 
-.if ${PORT_OPTIONS:MUPNP}
-LIB_DEPENDS+=	libminiupnpc.so:${PORTSDIR}/net/miniupnpc
-CONFIGURE_ARGS+=--with-miniupnpc
-.else
-CONFIGURE_ARGS+=--without-miniupnpc
-.endif
+UPNP_CONFIGURE_WITH=	miniupnpc
+UPNP_LIB_DEPENDS=	libminiupnpc.so:${PORTSDIR}/net/miniupnpc
+UPNP_CPPFLAGS=		-I${LOCALBASE}/include
+UPNP_LIBS=		-L${LOCALBASE}/lib
 
-.if ${PORT_OPTIONS:MWALLET}
-CONFIGURE_ARGS+=--enable-wallet
-.else
-CONFIGURE_ARGS+=--disable-wallet
-.endif
+QRCODES_CONFIGURE_WITH=	qrencode
+QRCODES_LIB_DEPENDS=	libqrencode.so:${PORTSDIR}/graphics/libqrencode
+
+WALLET_CONFIGURE_ENABLE=	wallet
+WALLET_USE=			BDB=48
 
-.include <bsd.port.pre.mk>
+GH_ACCOUNT=	bitcoin
+GH_COMMIT=	58810d2
+GH_TAGNAME=	v${PORTVERSION}
 
-post-patch:
-	${MKDIR} ${WRKSRC}/src/build-aux
+CONFIGURE_ARGS?=	--without-daemon \
+			--with-gui \
+			--without-libs \
+			--without-utils \
+			--disable-reduce-exports
+
+CONFIGURE_ENV=	CRYPTO_CFLAGS="-I${OPENSSLINC}" CRYPTO_LIBS="-L${OPENSSLLIB} -lcrypto" \
+		SSL_CFLAGS="-I${OPENSSLINC}" SSL_LIBS="-L${OPENSSLLIB} -lssl"
+MAKE_ENV+=	V=1
+
+PLIST_FILES?=	bin/bitcoin-qt share/applications/bitcoin-qt.desktop \
+		share/pixmaps/bitcoin128.png
+
+.if defined(SLAVE_PORT) && ${SLAVE_PORT} == "no"
 
 post-install:
-.if ${PORT_OPTIONS:MGUI} && !defined(WITHOUT_X11)
-	${REINPLACE_CMD} -e 's,=/usr,=${PREFIX},' ${WRKSRC}/contrib/debian/bitcoin-qt.desktop
-	${INSTALL} ${WRKSRC}/contrib/debian/bitcoin-qt.desktop ${STAGEDIR}${PREFIX}/share/applications
-	${INSTALL} ${WRKSRC}/share/pixmaps/bitcoin128.png ${STAGEDIR}${PREFIX}/share/pixmaps/
+	${REINPLACE_CMD} -e 's,=/usr,=${PREFIX},' \
+		${WRKSRC}/contrib/debian/bitcoin-qt.desktop
+	${INSTALL} ${WRKSRC}/contrib/debian/bitcoin-qt.desktop \
+		${STAGEDIR}${PREFIX}/share/applications
+	${INSTALL} ${WRKSRC}/share/pixmaps/bitcoin128.png \
+		${STAGEDIR}${PREFIX}/share/pixmaps/
+
 .endif
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>

Modified: head/net-p2p/bitcoin/distinfo
==============================================================================
--- head/net-p2p/bitcoin/distinfo	Tue Feb 24 10:59:00 2015	(r379778)
+++ head/net-p2p/bitcoin/distinfo	Tue Feb 24 11:10:23 2015	(r379779)
@@ -1,2 +1,2 @@
-SHA256 (bitcoin-0.9.2.tar.gz) = bb54f72f53498883ea9c8bdb9ae340c45fea8d4530f12fbaf34225839c439915
-SIZE (bitcoin-0.9.2.tar.gz) = 5242752
+SHA256 (bitcoin-0.10.0.tar.gz) = 8723a955fa0f86dc35d5e8bd37484b37fdb3a3977dad50947fa334ac80ee7df7
+SIZE (bitcoin-0.10.0.tar.gz) = 5018463

Added: head/net-p2p/bitcoin/files/patch-memenv.cc_enable_limit_macros
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/bitcoin/files/patch-memenv.cc_enable_limit_macros	Tue Feb 24 11:10:23 2015	(r379779)
@@ -0,0 +1,11 @@
+--- src/leveldb/helpers/memenv/memenv.cc.orig	2014-12-28 23:05:26.000000000 +1000
++++ src/leveldb/helpers/memenv/memenv.cc	2014-12-29 17:12:58.000000000 +1000
+@@ -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?201502241110.t1OBANgl047670>