summaryrefslogtreecommitdiff
path: root/dev-db
diff options
context:
space:
mode:
authorIan Stakenvicius <axs@gentoo.org>2017-12-14 14:28:52 -0500
committerIan Stakenvicius <axs@gentoo.org>2017-12-28 15:56:08 -0500
commitd27c6cbeee1abb654b6304c8c4c5e253fd45166e (patch)
tree99f207a2a2e5b02274ba81a8c53877240d2b742e /dev-db
parentapp-i18n/ibus: stable 1.5.16 for ia64/ppc/ppc64, bug #641276 (diff)
downloadgentoo-d27c6cbeee1abb654b6304c8c4c5e253fd45166e.tar.gz
gentoo-d27c6cbeee1abb654b6304c8c4c5e253fd45166e.tar.bz2
gentoo-d27c6cbeee1abb654b6304c8c4c5e253fd45166e.zip
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
Diffstat (limited to 'dev-db')
-rw-r--r--dev-db/plr/Manifest1
-rw-r--r--dev-db/plr/metadata.xml24
-rw-r--r--dev-db/plr/plr-8.3.0.17.ebuild69
3 files changed, 94 insertions, 0 deletions
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 @@
+<?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>axs@gentoo.org</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 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"
+}