# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI = 5
DB_VER = "4.8"
LANGS = "af_ZA ar bg bs ca_ES ca cs cy da de el_GR en eo es_CL es et eu_ES fa_IR fa fi fr_CA fr gu_IN he hi_IN hr hu it ja la lt lv_LV nb nl pl pt_BR pt_PT ro_RO ru sk sr sv th_TH tr uk zh_CN zh_TW"
inherit db-use eutils fdo-mime gnome2-utils kde4-functions qt4-r2
MyPV = " ${ PV /_/- } "
MyPN = "primecoin"
MyP = " ${ MyPN } - ${ MyPV } "
DESCRIPTION = "Cryptocurrency forked from Bitcoin which aims to be energy efficiency"
HOMEPAGE = "http://primecoin.org/"
SRC_URI = " mirror://sourceforge/ ${ MyPN } / ${ MyP } -linux.tar.gz -> ${ MyP } .tar.gz "
LICENSE = "MIT ISC GPL-3 LGPL-2.1 public-domain || ( CC-BY-SA-3.0 LGPL-2.1 )"
SLOT = "0"
KEYWORDS = "~amd64 ~x86"
IUSE = "dbus ipv6 kde +qrcode upnp"
RDEPEND = "
dev-libs/boost[ threads( +) ]
dev-libs/openssl:0[ -bindist]
qrcode? (
media-gfx/qrencode
)
upnp? (
net-libs/miniupnpc
)
sys-libs/db:$( db_ver_to_slot " ${ DB_VER } " ) [ cxx]
<= dev-libs/leveldb-1.12.0[ -snappy]
dev-qt/qtgui:4
dbus? (
dev-qt/qtdbus:4
)
"
DEPEND = " ${ RDEPEND }
>= app-shells/bash-4.1
"
DOCS = "doc/README.md doc/release-notes.md"
S = " ${ WORKDIR } / ${ MyP } -linux/src "
src_prepare( ) {
epatch " ${ FILESDIR } " /${ MyPN } -sys_leveldb.patch
rm -r src/leveldb
cd src || die
local filt = yeslang = nolang =
for lan in $LANGS ; do
if [ ! -e qt/locale/bitcoin_$lan .ts ] ; then
ewarn " Language ' $lan ' no longer supported. Ebuild needs update. "
fi
done
for ts in $( ls qt/locale/*.ts)
do
x = " ${ ts /*bitcoin_/ } "
x = " ${ x /.ts/ } "
if ! use " linguas_ $x " ; then
nolang = " $nolang $x "
rm " $ts "
filt = " $filt \\| $x "
else
yeslang = " $yeslang $x "
fi
done
filt = " bitcoin_\\( ${ filt : 2 } \\)\\.\(qm\|ts\) "
sed " / ${ filt } /d " -i 'qt/bitcoin.qrc'
einfo " Languages -- Enabled: $yeslang -- Disabled: $nolang "
}
src_configure( ) {
OPTS = ( )
use dbus && OPTS += ( "USE_DBUS=1" )
if use upnp; then
OPTS += ( "USE_UPNP=1" )
else
OPTS += ( "USE_UPNP=-" )
fi
use qrcode && OPTS += ( "USE_QRCODE=1" )
use ipv6 || OPTS += ( "USE_IPV6=-" )
OPTS += ( "USE_SYSTEM_LEVELDB=1" )
OPTS += ( " BDB_INCLUDE_PATH= $( db_includedir " ${ DB_VER } " ) " )
OPTS += ( " BDB_LIB_SUFFIX=- ${ DB_VER } " )
if has_version '>=dev-libs/boost-1.52' ; then
OPTS += ( "LIBS+=-lboost_chrono\$\$BOOST_LIB_SUFFIX" )
fi
#The primecoin codebase is mostly taken from bitcoin-qt
eqmake4 bitcoin-qt.pro " ${ OPTS [@] } "
}
#Tests are broken
#src_test() {
# cd src || die
# emake -f makefile.unix "${OPTS[@]}" test_primecoin
# ./test_primecoin || die 'Tests failed'
#}
src_install( ) {
qt4-r2_src_install
dobin ${ PN }
insinto /usr/share/pixmaps
newins "share/pixmaps/primecoin.ico" " ${ PN } .ico "
make_desktop_entry " ${ PN } %u " "Primecoin-Qt" " /usr/share/pixmaps/ ${ PN } .ico " "Qt;Network;P2P;Office;Finance;" "MimeType=x-scheme-handler/primecoin;\nTerminal=false"
newman contrib/debian/manpages/bitcoin-qt.1 ${ PN } .1
if use kde; then
insinto /usr/share/kde4/services
newins contrib/debian/bitcoin-qt.protocol ${ PN } .protocol
fi
}
update_caches( ) {
gnome2_icon_cache_update
fdo-mime_desktop_database_update
buildsycoca
}
pkg_postinst( ) {
update_caches
}
pkg_postrm( ) {
update_caches
}