svn commit: r379779 - in head: . net-p2p net-p2p/bitcoin net-p2p/bitcoin-daemon net-p2p/bitcoin-utils net-p2p/bitcoin/files
Kubilay Kocak
koobs at FreeBSD.org
Tue Feb 24 11:10:26 UTC 2015
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 at 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"
More information about the svn-ports-all
mailing list