From d27c6cbeee1abb654b6304c8c4c5e253fd45166e Mon Sep 17 00:00:00 2001 From: Ian Stakenvicius Date: Thu, 14 Dec 2017 14:28:52 -0500 Subject: [PATCH] dev-db/plr: new package Finally decided to add this to the gentoo repo. PL/R is a postgresql server extension that allows R scripts (dev-lang/R) to be used directly in postgresql queries and functions. Bug: http://bugs.gentoo.org/272610 Package-Manager: Portage-2.3.13, Repoman-2.3.3 --- dev-db/plr/Manifest | 1 + dev-db/plr/metadata.xml | 24 ++++++++++++ dev-db/plr/plr-8.3.0.17.ebuild | 69 ++++++++++++++++++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 dev-db/plr/Manifest create mode 100644 dev-db/plr/metadata.xml create mode 100644 dev-db/plr/plr-8.3.0.17.ebuild diff --git a/dev-db/plr/Manifest b/dev-db/plr/Manifest new file mode 100644 index 000000000000..afd497d93f19 --- /dev/null +++ b/dev-db/plr/Manifest @@ -0,0 +1 @@ +DIST plr-8.3.0.17.tar.gz 74017 BLAKE2B 314b4cfa2c3ca8ed31e80a72233a6dc8cdb9f3811dad6e9f3eb5147c17cdf5a039436598b0fc2b30c6702b02dd3cb2da33543764aee3199c6864aae22be875ce SHA512 d7080c62349d1dcdd17008a7be3643b54678e0f66bf721068df73057394496d025c4fe01e52945c3acf9cc21eb90241512667772ef3fe519a3c9081efe92dd40 diff --git a/dev-db/plr/metadata.xml b/dev-db/plr/metadata.xml new file mode 100644 index 000000000000..7eb0ae4794ba --- /dev/null +++ b/dev-db/plr/metadata.xml @@ -0,0 +1,24 @@ + + + + + + axs@gentoo.org + Ian Stakenvicius + Primary maintainer + + +An extension for postgresql databases to allow direct usage of dev-lang/R +in SQL queries and database functions + + diff --git a/dev-db/plr/plr-8.3.0.17.ebuild b/dev-db/plr/plr-8.3.0.17.ebuild new file mode 100644 index 000000000000..53ecfa0ff067 --- /dev/null +++ b/dev-db/plr/plr-8.3.0.17.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +POSTGRES_COMPAT=( 9.{1..6} 10 ) +POSTGRES_USEDEP="server" + +inherit postgres-multi + +DESCRIPTION="R language extension for postgresql database" +HOMEPAGE="http://www.joeconway.com/plr/" +SRC_URI="https://github.com/postgres-plr/plr/archive/REL${PV//./_}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="dev-lang/R + ${POSTGRES_DEP}" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +REQUIRED_USE="${POSTGRES_REQ_USE}" + +S=${WORKDIR}/contrib/${PN} + +src_unpack() { + unpack ${A} + # the build system wants 'contrib' to be part of the path + mkdir -p "${WORKDIR}/contrib" + mv "${WORKDIR}/${PN}-REL${PV//./_}" "${S}" +} + +src_prepare() { + local BUILD_DIR="${S}" + postgres-multi_src_prepare +} + +src_compile() { + pg_src_compile() { + cd "${BUILD_DIR}" + PG_CONFIG="${SYSROOT}${EPREFIX}/usr/$(get_libdir)/postgresql-${MULTIBUILD_ID}/bin/pg_config" \ + USE_PGXS=1 \ + emake -j1 + } + postgres-multi_foreach pg_src_compile +} + +src_install() { + pg_src_install() { + cd "${BUILD_DIR}" + PG_CONFIG="${SYSROOT}${EPREFIX}/usr/$(get_libdir)/postgresql-${MULTIBUILD_ID}/bin/pg_config" \ + USE_PGXS=1 \ + emake -j1 DESTDIR="${D}" install + } + postgres-multi_foreach pg_src_install +} + +pkg_postinst() { + elog "The plr extension needs to be explicitly added (or 'created') on each database" + elog "you wish to use it with. As of postgresql-9.1 the easiest way to do this is" + elog "with the proprietary SQL statement:" + elog + elog "\tCREATE EXTENSION plr;" + elog + elog "For more info on how to add PL/R to your postgresql database(s), please visit" + elog "http://www.joeconway.com/doc/plr-install.html" +} -- 2.26.2