# Copyright 2005 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit autotools db-use

DESCRIPTION="Reference implementation of the Litecoin cryptocurrency"
HOMEPAGE="https://litecoin.org/"
SRC_URI="https://github.com/litecoin-project/litecoin/releases/download/v${PV}/litecoin-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/litecoin-${PV}"

LICENSE="MIT"
SLOT="0"
KEYWORDS=""
IUSE="+berkdb +cli +daemon dbus gui +qrcode +sqlite test upnp zeromq"

REQUIRED_USE="
	dbus? ( gui )
	qrcode? ( gui )
"

RDEPEND="
	berkdb? ( >=sys-libs/db-4.8.30:$(db_ver_to_slot 4.8)=[cxx] )
	dev-libs/boost
	dev-libs/libevent
	gui? (
		>=dev-qt/qtcore-5.15.14:5
		>=dev-qt/qtgui-5.15.14:5
		>=dev-qt/qtnetwork-5.15.14:5
		>=dev-qt/qtwidgets-5.15.14:5
		dbus? ( >=dev-qt/qtdbus-5.15.14:5 )
	 )
	qrcode? ( >=media-gfx/qrencode-4.1.1:= )
	sqlite? ( >=dev-db/sqlite-3.38.5:= )
	upnp? ( >=net-libs/miniupnpc-2.2.7:= )
	zeromq? ( >=net-libs/zeromq-4.3.4:= )
"
DEPEND="${RDEPEND}"

src_prepare() {
	default
	eautoreconf
}

src_configure() {
	local wallet ; if use berkdb || use sqlite ; then wallet=enable ; else wallet=disable ; fi

	local myeconfargs=(
		--disable-static
		--${wallet}-wallet
		$(use_with sqlite)
		$(use_with berkdb bdb)
		$(use_with upnp miniupnpc)
		$(use_enable test tests)
		--disable-bench
		--disable-fuzz{,-binary}
		$(use_with qrcode qrencode)
		--disable-ccache
		$(use_enable zeromq zmq)
		#$(use_enable man)
		--with-utils
		$(use_enable {,util-}cli)
		--enable-util-tx
		--${wallet}-util-wallet
		--disable-util-util
		$(use_with daemon)
		$(use_with gui gui qt5)
		$(use_with dbus qtdbus)
	)
	econf "${myeconfargs[@]}"
}