You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
3.3 KiB
111 lines
3.3 KiB
# Copyright 1999-2021 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=7
|
|
PYTHON_COMPAT=( python3_{7..9} )
|
|
PYTHON_REQ_USE="sqlite"
|
|
|
|
DISTUTILS_SINGLE_IMPL=1
|
|
DISTUTILS_USE_SETUPTOOLS=no
|
|
inherit distutils-r1 xdg-utils
|
|
|
|
DESCRIPTION="Genealogical Research and Analysis Management Programming System"
|
|
HOMEPAGE="https://gramps-project.org/"
|
|
SRC_URI="https://github.com/gramps-project/${PN}/archive/v${PV}.tar.gz
|
|
-> ${P}.tar.gz"
|
|
|
|
LICENSE="GPL-2+"
|
|
SLOT="0"
|
|
KEYWORDS="amd64 x86"
|
|
IUSE="berkdb exif geo postscript +rcs +reports spell test"
|
|
RESTRICT="!test? ( test )"
|
|
|
|
RDEPEND="
|
|
$(python_gen_cond_dep '
|
|
dev-python/pycairo[${PYTHON_USEDEP}]
|
|
>=dev-python/pygobject-3.12:3[cairo,${PYTHON_USEDEP}]
|
|
dev-python/pyicu[${PYTHON_USEDEP}]
|
|
berkdb? ( dev-python/bsddb3[${PYTHON_USEDEP}] )
|
|
exif? ( >=media-libs/gexiv2-0.5[${PYTHON_USEDEP},introspection] )
|
|
')
|
|
gnome-base/librsvg:2
|
|
>x11-libs/gtk+-3.14.8:3[introspection]
|
|
x11-libs/pango[introspection]
|
|
x11-misc/xdg-utils
|
|
reports? ( media-gfx/graphviz[postscript?] )
|
|
geo? ( >=sci-geosciences/osm-gps-map-1.1.0 )
|
|
spell? ( app-text/gtkspell:3[introspection] )
|
|
rcs? ( dev-vcs/rcs )
|
|
"
|
|
BDEPEND="test? ( ${RDEPEND}
|
|
$(python_gen_cond_dep '
|
|
dev-python/jsonschema[${PYTHON_USEDEP}]
|
|
dev-python/lxml[${PYTHON_USEDEP}]
|
|
')
|
|
)"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}"/${PN}-5.1.3-test_locale.patch
|
|
)
|
|
|
|
python_prepare_all() {
|
|
# Install documentation to the proper location. This can't be done
|
|
# easily with a patch because we substitute in the ${PF} variable,
|
|
# and that changes with every revision.
|
|
sed -i "s:share/doc/gramps:share/doc/${PF}:g" setup.py || die
|
|
distutils-r1_python_prepare_all
|
|
}
|
|
|
|
python_configure_all() {
|
|
mydistutilsargs=(
|
|
--resourcepath=/usr/share
|
|
--no-compress-manpages
|
|
)
|
|
}
|
|
|
|
python_test_all() {
|
|
# Gramps builds just fine out of tree but it confuses its test suite.
|
|
# The following might be an ugly hack but at least it lets the tests
|
|
# run properly until either I or upstream have come up with something
|
|
# better. FIXME: test this when a new release comes out.
|
|
rm -rf "${S}/build" && ln -s "${BUILD_DIR}" "${S}"/build || \
|
|
die "Failed to symlink build directory to source directory"
|
|
|
|
# Set a sane default locale for the tests which do not explicitly set one.
|
|
local -x LC_ALL=C.UTF-8
|
|
|
|
# Note that as of 5.1.3, test failures do not actually propagate back
|
|
# to this function. For now this is fortunate because the test suite
|
|
# does not handle the absence of bsddb3 well, in the long run however
|
|
# this should be fixed.
|
|
esetup.py test || die
|
|
}
|
|
|
|
# Ugly hack to work around Bug #717922
|
|
python_install() {
|
|
local mydistutilsargs=(
|
|
--resourcepath=/usr/share
|
|
--no-compress-manpages
|
|
build
|
|
)
|
|
distutils-r1_python_install
|
|
echo -n "/usr/share" > "${D}$(python_get_sitedir)/gramps/gen/utils/resource-path" || die
|
|
}
|
|
|
|
pkg_postinst() {
|
|
xdg_desktop_database_update
|
|
xdg_mimeinfo_database_update
|
|
|
|
if use berkdb; then
|
|
ewarn "The BSDDB back-end in ${PN} has got known stability and data-corruption issues. It has been deprecated since version 5.1.0 and might be removed in 5.2.0."
|
|
ewarn "If you have any family trees in this format you are highly advised to convert them to SQLite, as described here:"
|
|
ewarn
|
|
ewarn "https://gramps-project.org/wiki/index.php/Gramps_5.1_Wiki_Manual_-_Manage_Family_Trees#Converting_a_BSDDB_Family_Tree_to_SQLite"
|
|
fi
|
|
}
|
|
|
|
pkg_postrm() {
|
|
xdg_desktop_database_update
|
|
xdg_mimeinfo_database_update
|
|
}
|