summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-office/ledger/ledger-3.1.2.ebuild')
-rw-r--r--app-office/ledger/ledger-3.1.2.ebuild127
1 files changed, 127 insertions, 0 deletions
diff --git a/app-office/ledger/ledger-3.1.2.ebuild b/app-office/ledger/ledger-3.1.2.ebuild
new file mode 100644
index 000000000000..1fe3082e204b
--- /dev/null
+++ b/app-office/ledger/ledger-3.1.2.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit check-reqs cmake-utils elisp-common python-single-r1
+
+DESCRIPTION="A double-entry accounting system with a command-line reporting interface"
+HOMEPAGE="https://www.ledger-cli.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="debug doc emacs python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="test"
+
+SITEFILE=50${PN}-gentoo-${PV}.el
+
+CHECKREQS_MEMORY=8G
+
+RDEPEND="
+ dev-libs/boost:=[python?]
+ dev-libs/gmp:0=
+ dev-libs/mpfr:0=
+ emacs? ( virtual/emacs )
+ python? (
+ dev-libs/boost:=[${PYTHON_USEDEP}]
+ dev-python/cheetah
+ ${PYTHON_DEPS}
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-libs/utfcpp
+ doc? (
+ sys-apps/texinfo
+ virtual/texi2dvi
+ dev-texlive/texlive-fontsrecommended
+ )
+"
+
+PATCHES=()
+
+# Building with python integration seems to fail without 8G available
+# RAM(!) Since the memory check in check-reqs doesn't count swap, it
+# may be unfair to fail the build entirely on the memory test alone.
+# Therefore check-reqs_pkg_pretend is deliberately omitted so that we
+# ewarn but not eerror.
+pkg_pretend() {
+ :
+}
+
+pkg_setup() {
+ if use python; then
+ check-reqs_pkg_setup
+ python-single-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+ sed -r -i \
+ -e '/set.BOOST_PYTHON/s/python27/python-2.7/g' \
+ "${S}/CMakeLists.txt" \
+ || die "Failed to update CMakeLists.txt for python2.7 boost"
+
+ # Want to type "info ledger" not "info ledger3"
+ sed -i -e 's/ledger3/ledger/g' \
+ doc/ledger3.texi \
+ doc/CMakeLists.txt \
+ test/CheckTexinfo.py \
+ tools/cleanup.sh \
+ tools/gendocs.sh \
+ tools/prepare-commit-msg \
+ tools/spellcheck.sh \
+ || die "Failed to update info file name in file contents"
+
+ mv doc/ledger{3,}.texi || die "Failed to rename info file name"
+
+ eapply_user
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_EMACSLISP="$(usex emacs)"
+ -DBUILD_DOCS="$(usex doc)"
+ -DBUILD_WEB_DOCS="$(usex doc)"
+ -DUSE_PYTHON="$(usex python)"
+ -DCMAKE_INSTALL_DOCDIR="/usr/share/doc/${PF}"
+ -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON
+ -DBUILD_DEBUG="$(usex debug)"
+ -DUSE_PYTHON27_COMPONENT=yes
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ use doc && cmake-utils_src_make doc
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ use emacs && elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ einfo
+ einfo "Since version 3, vim support is released separately."
+ einfo "See https://github.com/ledger/vim-ledger"
+ einfo
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
+
+# rainy day TODO:
+# - IUSE test