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";
+}

Reply via email to