summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Schiffbauer <mschiff@gentoo.org>2017-11-01 16:20:59 +0100
committerMarc Schiffbauer <mschiff@gentoo.org>2017-11-01 16:20:59 +0100
commitc31f4f32c5de7d264bb7d8840b8213098404b91a (patch)
tree33624bbfb86a2f3823a776d85a702f090315eab2 /dev-db/couchdb/couchdb-2.1.0.ebuild
parentupdate Manifest (diff)
downloadmschiff-c31f4f32c5de7d264bb7d8840b8213098404b91a.tar.gz
mschiff-c31f4f32c5de7d264bb7d8840b8213098404b91a.tar.bz2
mschiff-c31f4f32c5de7d264bb7d8840b8213098404b91a.zip
dev-db/couchdb: added new ebuild
Package-Manager: Portage-2.3.13, Repoman-2.3.4 Manifest-Sign-Key: 0xCA3E7BF67F979BE5
Diffstat (limited to 'dev-db/couchdb/couchdb-2.1.0.ebuild')
-rw-r--r--dev-db/couchdb/couchdb-2.1.0.ebuild91
1 files changed, 91 insertions, 0 deletions
diff --git a/dev-db/couchdb/couchdb-2.1.0.ebuild b/dev-db/couchdb/couchdb-2.1.0.ebuild
new file mode 100644
index 0000000..ae012a4
--- /dev/null
+++ b/dev-db/couchdb/couchdb-2.1.0.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib pax-utils user
+
+DESCRIPTION="Distributed, fault-tolerant and schema-free document-oriented database"
+HOMEPAGE="https://couchdb.apache.org/"
+SRC_URI="mirror://apache/couchdb/source/${PV}/apache-${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="libressl selinux test"
+
+RDEPEND=">=dev-libs/icu-4.3.1:=
+ <dev-lang/erlang-19[ssl]
+ ~dev-lang/spidermonkey-1.8.5
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ net-misc/curl
+ selinux? ( sec-policy/selinux-couchdb )
+ sys-process/psmisc
+"
+
+DEPEND="${RDEPEND}
+ >=dev-util/rebar-2.6.0
+ <dev-util/rebar-3.0.0
+ sys-devel/autoconf-archive
+"
+
+RESTRICT=test
+
+S="${WORKDIR}/apache-${P}"
+
+pkg_setup() {
+ enewgroup couchdb
+ enewuser couchdb -1 -1 /var/lib/couchdb couchdb
+}
+
+src_configure() {
+ econf \
+ --with-erlang="${EPREFIX}"/usr/$(get_libdir)/erlang/usr/include \
+ --with-js-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-curl \
+ --user=couchdb
+}
+
+src_compile() {
+ emake release
+}
+
+src_test() {
+ emake distcheck
+}
+
+src_install() {
+ mkdir -p "${D}/opt"
+ cp -a "${S}/rel/couchdb" "${D}/opt/"
+
+ keepdir /var/l{ib,og}/couchdb
+
+ fowners couchdb:couchdb \
+ /var/lib/couchdb \
+ /var/log/couchdb
+
+ for f in "${ED}"/opt/couchdb/etc/*.d; do
+ fowners root:couchdb "${f#${ED}}"
+ fperms 0750 "${f#${ED}}"
+ done
+ for f in "${ED}"/opt/couchdb/etc/*.ini; do
+ fowners root:couchdb "${f#${ED}}"
+ fperms 0440 "${f#${ED}}"
+ done
+ insinto /opt/couchdb/etc/default.d
+ insopts -m0640 -oroot -gcouchdb
+ doins "${FILESDIR}/10_gentoo.ini"
+
+ # link etc dir for to /etc for convenience
+ dosym ../opt/couchdb/etc /etc/couchdb
+
+ newinitd "${FILESDIR}/couchdb.init-2.1.0" couchdb
+ newconfd "${FILESDIR}/couchdb.conf-2.1.0" couchdb
+
+ rm "${ED}/opt/couchdb/bin/couchdb.cmd"
+
+ # bug 442616
+ pax-mark mr "/opt/couchdb/bin/couchjs"
+ pax-mark mr "/opt/couchdb/lib/couch-${PV}/priv/couchjs"
+}