# Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/net-p2p/bitcoind/bitcoind-0.5.6_rc2.ebuild,v 1.5 2013/01/13 22:34:40 blueness Exp $ EAPI="4" DB_VER="4.8" inherit db-use eutils versionator toolchain-funcs DESCRIPTION="Original Bitcoin crypto-currency wallet for automated services" HOMEPAGE="http://bitcoin.org/" SRC_URI="http://gitorious.org/bitcoin/bitcoind-stable/archive-tarball/v${PV/_/} -> bitcoin-v${PV}.tgz bip16? ( http://luke.dashjr.org/programs/bitcoin/files/bip16/0.5.6-Minimal-support-for-mining-BIP16-pay-to-script-hash-.patch.xz ) eligius? ( !bip16? ( http://luke.dashjr.org/programs/bitcoin/files/eligius_sendfee/0.5.0.6rc1-eligius_sendfee.patch.xz ) ) " LICENSE="MIT ISC GPL-2" SLOT="0" KEYWORDS="amd64 ~arm x86" IUSE="+bip16 +eligius examples logrotate ssl upnp" RDEPEND=" >=dev-libs/boost-1.41.0[threads(+)] dev-libs/openssl[-bindist] logrotate? ( app-admin/logrotate ) upnp? ( net-libs/miniupnpc ) sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx] " DEPEND="${RDEPEND} >=app-shells/bash-4.1 " S="${WORKDIR}/bitcoin-bitcoind-stable" pkg_setup() { local UG='bitcoin' enewgroup "${UG}" enewuser "${UG}" -1 -1 /var/lib/bitcoin "${UG}" } src_prepare() { cd src || die if use bip16; then epatch "${WORKDIR}/0.5.6-Minimal-support-for-mining-BIP16-pay-to-script-hash-.patch" use eligius && epatch "${FILESDIR}/0.5.0.5+bip16-eligius_sendfee.patch" else use eligius && epatch "${WORKDIR}/0.5.0.6rc1-eligius_sendfee.patch" fi use logrotate && epatch "${FILESDIR}/0.4.7-reopen_log_file.patch" } src_compile() { OPTS=() OPTS+=("DEBUGFLAGS=") OPTS+=("CXXFLAGS=${CXXFLAGS}") OPTS+=("LDFLAGS=${LDFLAGS}") OPTS+=("BDB_INCLUDE_PATH=$(db_includedir "${DB_VER}")") OPTS+=("BDB_LIB_SUFFIX=-${DB_VER}") use ssl && OPTS+=(USE_SSL=1) if use upnp; then OPTS+=(USE_UPNP=1) else OPTS+=(USE_UPNP=) fi cd src || die emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" ${PN} } src_test() { cd src || die emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" test_bitcoin ./test_bitcoin || die 'Tests failed' } src_install() { dobin src/${PN} insinto /etc/bitcoin newins "${FILESDIR}/bitcoin.conf" bitcoin.conf fowners bitcoin:bitcoin /etc/bitcoin/bitcoin.conf fperms 600 /etc/bitcoin/bitcoin.conf newconfd "${FILESDIR}/bitcoin.confd" ${PN} newinitd "${FILESDIR}/bitcoin.initd" ${PN} keepdir /var/lib/bitcoin/.bitcoin fperms 700 /var/lib/bitcoin fowners bitcoin:bitcoin /var/lib/bitcoin/ fowners bitcoin:bitcoin /var/lib/bitcoin/.bitcoin dosym /etc/bitcoin/bitcoin.conf /var/lib/bitcoin/.bitcoin/bitcoin.conf dodoc doc/README if use examples; then docinto examples dodoc -r contrib/{bitrpc,pyminer,wallettools} fi if use logrotate; then insinto /etc/logrotate.d newins "${FILESDIR}/bitcoind.logrotate" bitcoind fi }