From e1efc25f2a76bc55200563601f687db1d477e762 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= Date: Thu, 9 Apr 2020 14:30:24 +0200 Subject: [PATCH] couchdb: update to 3.0.0 Switch to use mozjs60-devel instead of js-devel. We can remove js now. --- srcpkgs/couchdb/files/couchdb/run | 2 +- srcpkgs/couchdb/template | 62 ++++++++++++++++++++++--------- 2 files changed, 46 insertions(+), 18 deletions(-) diff --git a/srcpkgs/couchdb/files/couchdb/run b/srcpkgs/couchdb/files/couchdb/run index 25d1abb8272..9754364240a 100755 --- a/srcpkgs/couchdb/files/couchdb/run +++ b/srcpkgs/couchdb/files/couchdb/run @@ -2,5 +2,5 @@ export HOME=/var/lib/couchdb mkdir -p /var/run/couchdb chown couchdb /var/run/couchdb -exec chpst -u couchdb:couchdb couchdb -r 5 -o /dev/null -e /dev/null +exec chpst -u couchdb:couchdb couchdb -o /dev/null -e /dev/null diff --git a/srcpkgs/couchdb/template b/srcpkgs/couchdb/template index 5ca5eacbaab..fbdb754fa56 100644 --- a/srcpkgs/couchdb/template +++ b/srcpkgs/couchdb/template @@ -1,20 +1,22 @@ # Template file for 'couchdb' pkgname=couchdb -version=1.7.1 -revision=2 +version=3.0.0 +revision=1 wrksrc="apache-couchdb-${version}" -build_style=gnu-configure +build_style=gnu-makefile +make_build_args="V=1" +make_build_target="release" +configure_args="--user couchdb --with-curl --spidermonkey-version 60" conf_files="/etc/couchdb/default.ini /etc/couchdb/local.ini" -hostmakedepends="erlang pkg-config" -makedepends="libressl-devel icu-devel js-devel libcurl-devel" +hostmakedepends="erlang" +makedepends="libressl-devel icu-devel mozjs60-devel libcurl-devel" depends="erlang" -short_desc="A document-oriented database" +short_desc="Document-oriented database" maintainer="Gerardo Di Iorio " license="Apache-2.0" homepage="http://couchdb.apache.org/" -distfiles="https://dist.apache.org/repos/dist/release/couchdb/source/${version}/apache-couchdb-${version}.tar.gz" -checksum=91200aa6fbc6fa5e2f3d78ef40e39d8c1ec7c83ea1c2cd730d270658735b2cad -broken="unsupported version upstream, broken distfiles" +distfiles="https://downloads.apache.org/couchdb/source/${version}/apache-couchdb-${version}.tar.gz" +checksum=d109bb1a70fe746c04a9bf79a2bb1096cb949c750c29dbd196e9c2efd4167fd9 system_accounts="couchdb" couchdb_homedir="/var/lib/couchdb" @@ -23,18 +25,44 @@ make_dirs=" /var/log/couchdb 0750 couchdb couchdb" if [ "$CROSS_BUILD" ]; then + hostmakedepends+=" mozjs60-devel" makedepends+=" erlang" - configure_args="--with-erlang=${XBPS_CROSS_BASE}/usr/lib/erlang/usr/include" + ERL_CFLAGS="-I${XBPS_CROSS_BASE}/usr/include/js -I${XBPS_CROSS_BASE}/usr/lib/erlang/usr/include" fi -pre_configure() { - sed -i 's|-Werror|-pie -fPIE|g' src/couchdb/priv/Makefile.* -if [ "$CROSS_BUILD" ]; then - sed -i '/FLAGS.*\(usr\|opt\)/s/.*/:/' configure -fi +do_configure() { + if [ "$CROSS_BUILD" ]; then + vsed -i src/rebar/src/rebar_port_compiler.erl \ + -e "s;, erl_interface_dir(lib);, \"${XBPS_CROSS_BASE}/\"&;" + make -C src/rebar + fi + ./configure ${configure_args} ERL_CFLAGS="${ERL_CFLAGS}" } - -post_install() { +do_install() { + local dir + if [ "$CROSS_BUILD" ]; then + # Copy target erlang libraries into release + for dir in $(ls rel/couchdb); do + if [ -d "${XBPS_CROSS_BASE}/usr/lib/erlang/${dir}" ]; then + echo "Copying target erlang ${dir} ..." + cp -pRv ${XBPS_CROSS_BASE}/usr/lib/erlang/${dir}/* \ + rel/couchdb/${dir}/ + fi + done + for dir in $(ls rel/couchdb/lib); do + if [ -d "${XBPS_CROSS_BASE}/usr/lib/erlang/lib/${dir}" ]; then + echo "Copying target erlang ${dir} ..." + cp -pR ${XBPS_CROSS_BASE}/usr/lib/erlang/lib/${dir}/* \ + rel/couchdb/lib/${dir}/ + fi + done + fi + vmkdir usr/lib + vcopy "rel/couchdb" usr/lib + vinstall rel/overlay/etc/default.ini 644 etc/couchdb + vinstall rel/overlay/etc/local.ini 644 etc/couchdb + vmkdir usr/bin + ln -srv ${DESTDIR}/usr/lib/couchdb/couchdb/bin/couchdb ${DESTDIR}/usr/bin/couchdb vsv couchdb }