package/ejabberd: bump to version 18.09
This version requires much less patches than the previous one packaged in Buildroot. It is compatible with Erlang OTP 21. There are two remainning patches to: - change the Makefile rules so dependencies are not downloaded/compiled; - fix ejabberd user and load a default file in ejabberdctl script. The patch 0006-fix-install-permissions has been replaced by setting permissions on /etc/ejabberd directory via EJABBERD_PERMISSIONS. The patch 0009-disable-mod_avatar has been removed because eimp is a mandatory dependency since 0f86559d. Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
091c950fb0
commit
e1a43490e9
|
@ -0,0 +1,35 @@
|
|||
From 277103e886c9b3ddfede8b3f5b92d3e94736f404 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
Date: Fri, 23 Nov 2018 16:13:21 +0100
|
||||
Subject: [PATCH] Makefile.in: do not download or compile dependencies
|
||||
|
||||
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
---
|
||||
Makefile.in | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 48dca7d8..d2324dae 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -94,7 +94,7 @@ ifneq ($(INSTALLGROUP),)
|
||||
G_USER=-g $(INSTALLGROUP)
|
||||
endif
|
||||
|
||||
-all: deps src
|
||||
+all: src
|
||||
|
||||
deps: deps/.got
|
||||
|
||||
@@ -108,7 +108,7 @@ deps/.built: deps/.got
|
||||
$(REBAR) configure-deps
|
||||
$(REBAR) compile && :> deps/.built
|
||||
|
||||
-src: deps/.built
|
||||
+src:
|
||||
$(REBAR) skip_deps=true compile
|
||||
|
||||
update:
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
From 21d1f05a8882657c151397d0e4723535402f1757 Mon Sep 17 00:00:00 2001
|
||||
From: Philipp Huebner <debalance@debian.org>
|
||||
Date: Wed, 20 Jan 2016 10:22:57 -0500
|
||||
Subject: [PATCH] remove make targets for deps
|
||||
|
||||
Without this patch, dependencies would be downloaded and compiled
|
||||
using rebar at build time.
|
||||
|
||||
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index df2abfdc..8c8fd714 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -86,27 +86,11 @@ else
|
||||
INIT_USER=$(INSTALLUSER)
|
||||
endif
|
||||
|
||||
-all: deps src
|
||||
+all: src
|
||||
|
||||
-deps: deps/.got
|
||||
-
|
||||
-deps/.got:
|
||||
- rm -rf deps/.got
|
||||
- rm -rf deps/.built
|
||||
- mkdir -p deps
|
||||
- $(REBAR) get-deps && :> deps/.got
|
||||
-
|
||||
-deps/.built: deps/.got
|
||||
- $(REBAR) compile && :> deps/.built
|
||||
-
|
||||
-src: deps/.built
|
||||
+src:
|
||||
$(REBAR) skip_deps=true compile
|
||||
|
||||
-update:
|
||||
- rm -rf deps/.got
|
||||
- rm -rf deps/.built
|
||||
- $(REBAR) update-deps && :> deps/.got
|
||||
-
|
||||
xref: all
|
||||
$(REBAR) skip_deps=true xref
|
|
@ -1,32 +0,0 @@
|
|||
From f384518dedec4ad657ad69d55754076c13c22d96 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
Date: Wed, 20 Jan 2016 08:11:32 -0500
|
||||
Subject: [PATCH] remove checking erlang version
|
||||
|
||||
Without this patch, the configure will try to run erlang to simply check
|
||||
if the version is supported by ejabberd. Instead, we do this test
|
||||
statically.
|
||||
|
||||
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
---
|
||||
configure.ac | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 97e89a2..cd1ab08 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -39,10 +39,8 @@ AC_ARG_ENABLE(erlang-version-check,
|
||||
[Check Erlang/OTP version @<:@default=yes@:>@])])
|
||||
case "$enable_erlang_version_check" in
|
||||
yes|'')
|
||||
- ERLANG_VERSION_CHECK([$REQUIRE_ERLANG_MIN],[$REQUIRE_ERLANG_MAX])
|
||||
;;
|
||||
no)
|
||||
- ERLANG_VERSION_CHECK([$REQUIRE_ERLANG_MIN],[$REQUIRE_ERLANG_MAX],[warn])
|
||||
;;
|
||||
esac
|
||||
|
||||
--
|
||||
2.5.0
|
||||
|
File diff suppressed because it is too large
Load diff
|
@ -1,29 +0,0 @@
|
|||
From d43a65b112ec995a5ee52aca2a16e5cf9699d7c1 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
Date: Wed, 20 Jan 2016 08:16:26 -0500
|
||||
Subject: [PATCH] disable ERLANG_DEPRECATED_CHECK
|
||||
|
||||
Without this patch, the configure will try to execute erlang to check
|
||||
if it uses deprecated types. Assume the answer is false.
|
||||
|
||||
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index cd1ab08..a4f1533 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -235,7 +235,7 @@ if test "$ENABLEUSER" != ""; then
|
||||
AC_SUBST([INSTALLUSER], [$ENABLEUSER])
|
||||
fi
|
||||
|
||||
-ERLANG_DEPRECATED_TYPES_CHECK
|
||||
+AC_SUBST(erlang_deprecated_types, false)
|
||||
|
||||
if test "$sqlite" = "true"; then
|
||||
AX_LIB_SQLITE3([3.6.19])
|
||||
--
|
||||
2.5.0
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
From ef847479778cc58818e066b87aa1789ba1c4148b Mon Sep 17 00:00:00 2001
|
||||
From: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
Date: Wed, 20 Jan 2016 09:34:07 -0500
|
||||
Subject: [PATCH] fix install permissions
|
||||
|
||||
Without this patch, the makefile will try to install directories and
|
||||
files with incompatible permissions for ejabberd, which run as an
|
||||
ejabberd user.
|
||||
|
||||
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index a0b4553d..2cae2db4 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -169,10 +169,8 @@ copy-files-sub: copy-files-sub2
|
||||
install: all copy-files
|
||||
#
|
||||
# Configuration files
|
||||
- $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR)
|
||||
- [ -f $(ETCDIR)/ejabberd.yml ] \
|
||||
- && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
|
||||
- || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
|
||||
+ $(INSTALL) -d $(ETCDIR)
|
||||
+ $(INSTALL) -b -m 644 ejabberd.yml.example $(ETCDIR)/ejabberd.yml
|
||||
$(SED) -e "s*{{rootdir}}*@prefix@*g" \
|
||||
-e "s*{{installuser}}*@INSTALLUSER@*g" \
|
||||
-e "s*{{bindir}}*@bindir@*g" \
|
||||
@@ -183,53 +181,16 @@ install: all copy-files
|
||||
-e "s*{{erl}}*@ERL@*g" \
|
||||
-e "s*{{epmd}}*@EPMD@*g" ejabberdctl.template \
|
||||
> ejabberdctl.example
|
||||
- [ -f $(ETCDIR)/ejabberdctl.cfg ] \
|
||||
- && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
|
||||
- || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
|
||||
- $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc
|
||||
+ $(INSTALL) -b -m 644 ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
|
||||
+ $(INSTALL) -b -m 644 inetrc $(ETCDIR)/inetrc
|
||||
#
|
||||
# Administration script
|
||||
- [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR)
|
||||
- $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
|
||||
+ $(INSTALL) -D ejabberdctl.example $(SBINDIR)/ejabberdctl
|
||||
# Elixir binaries
|
||||
[ -d $(BINDIR) ] || $(INSTALL) -d -m 755 $(BINDIR)
|
||||
[ -f deps/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/iex $(BINDIR)/iex || true
|
||||
[ -f deps/elixir/bin/elixir ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/elixir $(BINDIR)/elixir || true
|
||||
[ -f deps/elixir/bin/mix ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/mix $(BINDIR)/mix || true
|
||||
- #
|
||||
- # Init script
|
||||
- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" \
|
||||
- -e "s*@installuser@*$(INIT_USER)*g" ejabberd.init.template \
|
||||
- > ejabberd.init
|
||||
- chmod 755 ejabberd.init
|
||||
- #
|
||||
- # Service script
|
||||
- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" ejabberd.service.template \
|
||||
- > ejabberd.service
|
||||
- chmod 644 ejabberd.service
|
||||
- #
|
||||
- # Spool directory
|
||||
- $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR)
|
||||
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(SPOOLDIR) >$(CHOWN_OUTPUT)
|
||||
- chmod -R 750 $(SPOOLDIR)
|
||||
- [ ! -f $(COOKIEFILE) ] || { $(CHOWN_COMMAND) @INSTALLUSER@ $(COOKIEFILE) >$(CHOWN_OUTPUT) ; chmod 400 $(COOKIEFILE) ; }
|
||||
- #
|
||||
- # ejabberdctl lock directory
|
||||
- $(INSTALL) -d -m 750 $(O_USER) $(CTLLOCKDIR)
|
||||
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(CTLLOCKDIR) >$(CHOWN_OUTPUT)
|
||||
- chmod -R 750 $(CTLLOCKDIR)
|
||||
- #
|
||||
- # Log directory
|
||||
- $(INSTALL) -d -m 750 $(O_USER) $(LOGDIR)
|
||||
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(LOGDIR) >$(CHOWN_OUTPUT)
|
||||
- chmod -R 750 $(LOGDIR)
|
||||
- #
|
||||
- # Documentation
|
||||
- $(INSTALL) -d $(DOCDIR)
|
||||
- [ -f doc/guide.html ] \
|
||||
- && $(INSTALL) -m 644 doc/guide.html $(DOCDIR) \
|
||||
- || echo "Documentation not included in sources"
|
||||
- $(INSTALL) -m 644 COPYING $(DOCDIR)
|
||||
|
||||
uninstall: uninstall-binary
|
|
@ -1,32 +0,0 @@
|
|||
From d0bfcbbfd8a6e7ee6213112e4078b020e4e1d15d Mon Sep 17 00:00:00 2001
|
||||
From: Paweł Chmielowski <pchmielowski@process-one.net>
|
||||
Date: Wed, 10 Jan 2018 16:34:01 +0100
|
||||
Subject: [PATCH] Handle error case from code:lib_dir in ResolveDepPath in
|
||||
rebar.config.script
|
||||
|
||||
This patch have already been applied in upstream/master.
|
||||
|
||||
Signed-off-by: Paweł Chmielowski <pchmielowski@process-one.net>
|
||||
|
||||
---
|
||||
rebar.config.script | 7 ++++---
|
||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/rebar.config.script b/rebar.config.script
|
||||
index 85f918fffd..ba374e5c5f 100644
|
||||
--- a/rebar.config.script
|
||||
+++ b/rebar.config.script
|
||||
@@ -233,9 +233,10 @@ ResolveDepPath = case {SystemDeps, IsRebar3} of
|
||||
{true, _} ->
|
||||
fun("deps/" ++ Rest) ->
|
||||
Slash = string:str(Rest, "/"),
|
||||
- code:lib_dir(
|
||||
- string:sub_string(Rest, 1, Slash -1)) ++
|
||||
- string:sub_string(Rest, Slash);
|
||||
+ case code:lib_dir(string:sub_string(Rest, 1, Slash -1)) of
|
||||
+ {error, _} -> Rest;
|
||||
+ V -> V ++ string:sub_string(Rest, Slash)
|
||||
+ end;
|
||||
(Path) ->
|
||||
Path
|
||||
end;
|
|
@ -1,32 +0,0 @@
|
|||
From e6eac74e82975e7d87b1f59c50eb007ab04c1392 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
Date: Tue, 16 Jan 2018 14:29:56 +0100
|
||||
Subject: [PATCH] disable mod_avatar
|
||||
|
||||
This module requires to compile with graphics enabled.
|
||||
|
||||
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
|
||||
---
|
||||
ejabberd.yml.example | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/ejabberd.yml.example b/ejabberd.yml.example
|
||||
index e178e956..7c12b76c 100644
|
||||
--- a/ejabberd.yml.example
|
||||
+++ b/ejabberd.yml.example
|
||||
@@ -796,9 +796,9 @@ modules:
|
||||
search: false
|
||||
mod_vcard_xupdate: {}
|
||||
## Convert all avatars posted by Android clients from WebP to JPEG
|
||||
- mod_avatar:
|
||||
- convert:
|
||||
- webp: jpeg
|
||||
+ ## mod_avatar:
|
||||
+ ## convert:
|
||||
+ ## webp: jpeg
|
||||
mod_version: {}
|
||||
mod_stream_mgmt: {}
|
||||
## Non-SASL Authentication (XEP-0078) is now disabled by default
|
||||
--
|
||||
2.14.1
|
||||
|
|
@ -2,6 +2,7 @@ config BR2_PACKAGE_EJABBERD
|
|||
bool "ejabberd"
|
||||
depends on BR2_PACKAGE_ERLANG
|
||||
depends on BR2_INSTALL_LIBSTDCPP # jiffy, stringprep
|
||||
select BR2_PACKAGE_ERLANG_EIMP
|
||||
select BR2_PACKAGE_ERLANG_JIFFY
|
||||
select BR2_PACKAGE_ERLANG_LAGER
|
||||
select BR2_PACKAGE_ERLANG_P1_CACHE_TAB
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
# Locally computed
|
||||
sha256 bd16b33a2f1345e5847fd05b70a5fa992181bac756cd6d5d621de9c18cb76801 ejabberd-17.11.tgz
|
||||
sha256 781a68d2deefb4afae563c29a8955063c759c244d308251167d46185f145d4ff ejabberd-18.09.tgz
|
||||
|
|
|
@ -4,12 +4,13 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
EJABBERD_VERSION = 17.11
|
||||
EJABBERD_VERSION = 18.09
|
||||
EJABBERD_SOURCE = ejabberd-$(EJABBERD_VERSION).tgz
|
||||
EJABBERD_SITE = https://www.process-one.net/downloads/ejabberd/$(EJABBERD_VERSION)
|
||||
EJABBERD_LICENSE = GPL-2.0+ with OpenSSL exception
|
||||
EJABBERD_LICENSE_FILES = COPYING
|
||||
EJABBERD_DEPENDENCIES = getent openssl host-erlang-lager erlang-lager \
|
||||
EJABBERD_DEPENDENCIES = getent openssl erlang-eimp \
|
||||
host-erlang-lager erlang-lager \
|
||||
erlang-p1-cache-tab erlang-p1-iconv erlang-p1-sip \
|
||||
erlang-p1-stringprep erlang-p1-stun erlang-p1-tls \
|
||||
erlang-p1-utils erlang-p1-xml erlang-p1-xmpp erlang-p1-yaml \
|
||||
|
@ -35,8 +36,7 @@ EJABBERD_CONF_ENV = \
|
|||
|
||||
EJABBERD_CONF_OPTS = \
|
||||
--enable-system-deps \
|
||||
--disable-erlang-version-check \
|
||||
--disable-graphics
|
||||
--disable-erlang-version-check
|
||||
|
||||
define EJABBERD_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) install -C $(@D)
|
||||
|
@ -54,6 +54,10 @@ define EJABBERD_USERS
|
|||
ejabberd -1 ejabberd -1 * /var/lib/ejabberd /bin/sh - ejabberd daemon
|
||||
endef
|
||||
|
||||
define EJABBERD_PERMISSIONS
|
||||
/etc/ejabberd r 750 root ejabberd - - - - -
|
||||
endef
|
||||
|
||||
define EJABBERD_INSTALL_INIT_SYSV
|
||||
$(INSTALL) -D -m 0755 package/ejabberd/S50ejabberd \
|
||||
$(TARGET_DIR)/etc/init.d/S50ejabberd
|
||||
|
|
Loading…
Reference in a new issue