Date: Friday, October 21, 2022 @ 20:57:56
Author: foutrelis
Revision: 1333299
Fix build with Erlang/OTP 25
Added:
couchdb/trunk/erlang-25-snappy.patch
couchdb/trunk/erlang-25.patch
Modified:
couchdb/trunk/PKGBUILD
------------------------+
PKGBUILD | 28 +++++++++++++++++++++------
erlang-25-snappy.patch | 19 ++++++++++++++++++
erlang-25.patch | 48 +++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 89 insertions(+), 6 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2022-10-21 20:54:06 UTC (rev 1333298)
+++ PKGBUILD 2022-10-21 20:57:56 UTC (rev 1333299)
@@ -18,15 +18,22 @@
etc/default/couchdb)
options=(debug)
source=("https://archive.apache.org/dist/${pkgname}/source/${pkgver}/apache-${pkgname}-${pkgver}.tar.gz"{,.asc}
+ https://github.com/davisp/jiffy/archive/1.1.1/jiffy-1.1.1.tar.gz
+ erlang-25.patch
+ erlang-25-snappy.patch
couchdb.default
couchdb.service
couchdb.sysusers
couchdb.tmpfiles)
-sha256sums=(69c9fd6f80133557f68a02e92dda72a4fd646d646f429f45bb8329a30f82f20e
SKIP
- 0d21fdd7851b3a6fa099b030cab0e96705b1d5a3a83a4ff1c871814d8742cae9
- 6ab3d362f3fcd9079036c883dc09dc597584cb627831460f2e0c68a31aa052ae
- 3ed1ad2a37a068ce194b03fb72eb35285d60fa7faf2d2c2bb710703d229108a8
- 7331b9675e3668c5f0d632bee5d154c061cc3e60d451bef3dc0d0ab2dadfa006)
+sha256sums=('69c9fd6f80133557f68a02e92dda72a4fd646d646f429f45bb8329a30f82f20e'
+ 'SKIP'
+ 'a999351d956d3ed10c33a6dd7e9435e674e519b5b82a46d60361afdb83062fd8'
+ '59a8a92200321f670f20746848fcadae35d1818f6bdacbedaf49012866dcfc27'
+ '8a74ae8cc5c5a54cd0a65f7aeed55af257eef8912630b953bfeb8d9329228b4b'
+ '0d21fdd7851b3a6fa099b030cab0e96705b1d5a3a83a4ff1c871814d8742cae9'
+ '6ab3d362f3fcd9079036c883dc09dc597584cb627831460f2e0c68a31aa052ae'
+ '3ed1ad2a37a068ce194b03fb72eb35285d60fa7faf2d2c2bb710703d229108a8'
+ '7331b9675e3668c5f0d632bee5d154c061cc3e60d451bef3dc0d0ab2dadfa006')
# https://downloads.apache.org/couchdb/KEYS
validpgpkeys=(2EC788AE3F239FA13E82D215CDE711289384AE37 # Joan Touzet (CODE
SIGNING KEY) <[email protected]>
@@ -36,6 +43,15 @@
prepare() {
cd apache-couchdb-${pkgver}
sed -i 's|./data|/var/lib/couchdb|' configure
+
+ # force recompilation of "rebar" with current erlang
+ rm bin/rebar
+ # use newer jiffy which doesn't ship an "enc" binary
+ rm -r src/jiffy
+ mv ../jiffy-1.1.1 src/jiffy
+
+ patch -Np1 <../erlang-25.patch
+ patch -Np1 -d src/snappy <../erlang-25-snappy.patch
}
build() {
@@ -59,7 +75,7 @@
install -Dm644 ${pkgname}.sysusers
"${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
# Remove some cruft
- rm -r "${pkgdir}"/usr/lib/couchdb/erts-12.3/{doc,include,lib,man,src}
+ rm -r "${pkgdir}"/usr/lib/couchdb/erts-13.1.1/{doc,include,lib,man,src}
rm -rv "${pkgdir}"/usr/lib/couchdb/etc/
rm -rv
"${pkgdir}"/usr/lib/couchdb/lib/couch-${pkgver}/priv/couch_{ejson_compare,js}
}
Added: erlang-25-snappy.patch
===================================================================
--- erlang-25-snappy.patch (rev 0)
+++ erlang-25-snappy.patch 2022-10-21 20:57:56 UTC (rev 1333299)
@@ -0,0 +1,19 @@
+From 7ed2207259db0ef82fa3d3ead52af3d3414ec350 Mon Sep 17 00:00:00 2001
+From: Ronny <[email protected]>
+Date: Sat, 11 Jun 2022 14:00:32 +0200
+Subject: [PATCH] Add Erlang 25 support
+
+---
+ rebar.config | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rebar.config b/rebar.config
+index a6a3b70..3b93f8a 100644
+--- a/rebar.config
++++ b/rebar.config
+@@ -1,4 +1,4 @@
+-{require_otp_vsn, "R14|R15|R16|17|18|19|20|21|22|23|24"}.
++{require_otp_vsn, "R14|R15|R16|17|18|19|20|21|22|23|24|25"}.
+
+ {erl_opts, [debug_info, warn_unused_vars, warn_shadow_vars,
warn_unused_import]}.
+ {port_sources, ["c_src/*.cc",
Added: erlang-25.patch
===================================================================
--- erlang-25.patch (rev 0)
+++ erlang-25.patch 2022-10-21 20:57:56 UTC (rev 1333299)
@@ -0,0 +1,48 @@
+From 592837abc8b07f9b28898fa91c31658e2beecfc4 Mon Sep 17 00:00:00 2001
+From: Ronny Berndt <[email protected]>
+Date: Sat, 11 Jun 2022 14:18:54 +0200
+Subject: [PATCH] Add Erlang 25 support
+
+Before merging this PR, PR #16 in couchdb-snappy needs to get merged and
tagged with CouchDB-1.0.8
+---
+ rebar.config.script | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rebar.config.script b/rebar.config.script
+index 31855098b3..44c4d61b1a 100644
+--- a/rebar.config.script
++++ b/rebar.config.script
+@@ -192,7 +192,7 @@ MakeDep = fun
+ end.
+
+ AddConfig = [
+- {require_otp_vsn, "20|21|22|23|24"},
++ {require_otp_vsn, "20|21|22|23|24|25"},
+ {deps_dir, "src"},
+ {deps, lists:map(MakeDep, DepDescs ++ OptionalDeps)},
+ {sub_dirs, SubDirs},
+
+From 6da9405ff97acae745ae85f3f9ce92484a7722df Mon Sep 17 00:00:00 2001
+From: Nick Vatamaniuc <[email protected]>
+Date: Fri, 17 Jun 2022 16:47:12 -0400
+Subject: [PATCH] Erlang 25 compatibility - http_uri:parse -> uri_string:parse
+
+This fixes the replicator eunit failure:
+https://github.com/apache/couchdb/pull/4060#issuecomment-1154391783
+---
+ .../test/eunit/couch_replicator_error_reporting_tests.erl | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git
a/src/couch_replicator/test/eunit/couch_replicator_error_reporting_tests.erl
b/src/couch_replicator/test/eunit/couch_replicator_error_reporting_tests.erl
+index 7778bd77de..b0863614c3 100644
+---
a/src/couch_replicator/test/eunit/couch_replicator_error_reporting_tests.erl
++++
b/src/couch_replicator/test/eunit/couch_replicator_error_reporting_tests.erl
+@@ -165,7 +165,7 @@ mock_fail_req(Path, Return) ->
+ send_req_direct,
+ fun(W, Url, Headers, Meth, Body, Opts, TOut) ->
+ Args = [W, Url, Headers, Meth, Body, Opts, TOut],
+- {ok, {_, _, _, _, UPath, _}} = http_uri:parse(Url),
++ #{path := UPath} = uri_string:parse(Url),
+ case lists:suffix(Path, UPath) of
+ true -> Return;
+ false -> meck:passthrough(Args)