pygresql-5.2.5.ebuild

Download (1.2 KB)

# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYPI_NO_NORMALIZE=1
PYPI_PN="PyGreSQL"
POSTGRES_COMPAT=( 9.6 {10..14} )
PYTHON_COMPAT=( python3_{10..12} )

inherit distutils-r1 postgres pypi

DESCRIPTION="A Python interface for the PostgreSQL database"
HOMEPAGE="https://pygresql.org/"

LICENSE="POSTGRESQL"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~sparc ~x86"

DEPEND="${POSTGRES_DEP}"
RDEPEND="${DEPEND}"

PATCHES=(
	"${FILESDIR}"/${PN}-5.2-CFLAGS.patch
)

distutils_enable_tests unittest

pkg_setup() {
	if [[ ${MERGE_TYPE} != binary ]]; then
		postgres_pkg_setup
	fi
}

src_test() {
	local db="${T}/pgsql"
	initdb --username=portage -D "${db}" || die
	pg_ctl -w -D "${db}" start \
		-o "-h '127.0.0.1' -p 5432 -k '${T}'" || die
	psql -h "${T}" -U portage -d postgres \
		-c "ALTER ROLE portage WITH PASSWORD 'postgres';" || die
	createdb -h "${T}" -U portage unittest || die

	cat > tests/LOCAL_PyGreSQL.py <<-EOF || die
		dbhost = '${T}'
	EOF

	distutils-r1_src_test

	pg_ctl -w -D "${db}" stop || die
}

python_install_all() {
	local DOCS=( docs/*.rst docs/community/* docs/contents/tutorial.rst )

	distutils-r1_python_install_all
}

Thank you!