commit: d27c6cbeee1abb654b6304c8c4c5e253fd45166e Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org> AuthorDate: Thu Dec 14 19:28:52 2017 +0000 Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org> CommitDate: Thu Dec 28 20:56:08 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d27c6cbe
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(+) diff --git a/dev-db/plr/Manifest b/dev-db/plr/Manifest new file mode 100644 index 00000000000..afd497d93f1 --- /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 00000000000..7eb0ae4794b --- /dev/null +++ b/dev-db/plr/metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!-- +This is the example metadata file. +The root element of this file is <pkgmetadata>. Within this element a +number of subelements are allowed, the most common being maintainer. + +For a full description look at: +https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/ + +Before committing, please remove the comments from this file. They are +not relevant for general metadata.xml files. +--> +<pkgmetadata> +<maintainer type="person"> + <email>[email protected]</email> + <name>Ian Stakenvicius</name> + <description>Primary maintainer</description> +</maintainer> +<longdescription> +An extension for postgresql databases to allow direct usage of <pkg>dev-lang/R</pkg> +in SQL queries and database functions +</longdescription> +</pkgmetadata> 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 00000000000..53ecfa0ff06 --- /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" +}
