Skip to contentSkip to conversation

Bump ejabberd to version 18.09

PATCH New Johan Oudinet 2 participants 28 messages Nov 26, 2018 – Dec 5, 2018 1 message not in the archive

lore
Share & tools
lore
#0 lore raw

cover Bump ejabberd to version 18.09

Ejabberd has many dependencies. Bump all of them to the versions needed by ejabberd-18.09.

Johan Oudinet (15):
package/pkg-rebar.mk: Remove dependencies from rebar.config
erlang-p1-utils: Bump to version 1.0.13
erlang-p1-cache-tab: Bump to version 1.0.16
erlang-p1-tls: Bump to version 1.0.25
erlang-p1-stringprep: Bump to version 1.0.14
erlang-p1-xml: Bump to version 1.1.34
erlang-p1-zlib: Bump to version 1.0.4
erlang-p1-xmpp: Bump to version 1.2.5
erlang-p1-yaml: Bump to version 1.0.17
erlang-p1-oauth2: Bump to version 0.6.3
erlang-p1-stun: Bump to version 1.0.25
erlang-p1-sip: Bump to version 1.0.26
erlang-p1-iconv: Bump to version 1.0.10
erlang-p1-eimp: New package
ejabberd: Bump to version 18.09

 package/Config.in                             |    1 +
 ...not-download-or-compile-dependencies.patch |   35 +
 .../0001-remove-make-targets-for-deps.patch   |   43 -
 ...rdctl.patch => 0002-fix-ejabberdctl.patch} |    0
 ...emove-dependencies-from-rebar-config.patch |  106 -
 .../0003-remove-checking-erlang-version.patch |   32 -
 package/ejabberd/0004-correct-includes.patch  | 1919 -----------------
 ...0005-disable-ERLANG_DEPRECATED_CHECK.patch |   29 -
 .../0006-fix-install-permissions.patch        |   84 -
 .../0008-handle-error-case-from-lib_dir.patch |   32 -
 .../ejabberd/0009-disable-mod_avatar.patch    |   32 -
 package/ejabberd/Config.in                    |    1 +
 package/ejabberd/ejabberd.hash                |    2 +-
 package/ejabberd/ejabberd.mk                  |   12 +-
 package/erlang-eimp/Config.in                 |   12 +
 package/erlang-eimp/erlang-eimp.mk            |   13 +
 .../erlang-p1-cache-tab.hash                  |    2 +-
 .../erlang-p1-cache-tab.mk                    |    2 +-
 package/erlang-p1-iconv/erlang-p1-iconv.hash  |    2 +-
 package/erlang-p1-iconv/erlang-p1-iconv.mk    |    2 +-
 .../erlang-p1-oauth2/erlang-p1-oauth2.hash    |    2 +-
 package/erlang-p1-oauth2/erlang-p1-oauth2.mk  |    2 +-
 ...emove-dependencies-from-rebar-config.patch |   20 -
 package/erlang-p1-sip/erlang-p1-sip.hash      |    2 +-
 package/erlang-p1-sip/erlang-p1-sip.mk        |    2 +-
 .../erlang-p1-stringprep.hash                 |    2 +-
 .../erlang-p1-stringprep.mk                   |    2 +-
 ...ove-dependencies-from-rebar-config.patch#} |    4 +-
 package/erlang-p1-stun/erlang-p1-stun.hash    |    2 +-
 package/erlang-p1-stun/erlang-p1-stun.mk      |    2 +-
 package/erlang-p1-tls/erlang-p1-tls.hash      |    2 +-
 package/erlang-p1-tls/erlang-p1-tls.mk        |    2 +-
 package/erlang-p1-utils/erlang-p1-utils.hash  |    2 +-
 package/erlang-p1-utils/erlang-p1-utils.mk    |    2 +-
 ...emove-dependencies-from-rebar-config.patch |   18 -
 package/erlang-p1-xml/erlang-p1-xml.hash      |    2 +-
 package/erlang-p1-xml/erlang-p1-xml.mk        |    2 +-
 ...emove-dependencies-from-rebar-config.patch |   19 -
 package/erlang-p1-xmpp/Config.in              |    2 +
 package/erlang-p1-xmpp/erlang-p1-xmpp.hash    |    2 +-
 package/erlang-p1-xmpp/erlang-p1-xmpp.mk      |    4 +-
 ...emove-dependencies-from-rebar-config.patch |   18 -
 package/erlang-p1-yaml/erlang-p1-yaml.hash    |    2 +-
 package/erlang-p1-yaml/erlang-p1-yaml.mk      |    2 +-
 package/erlang-p1-zlib/erlang-p1-zlib.hash    |    2 +-
 package/erlang-p1-zlib/erlang-p1-zlib.mk      |    2 +-
 package/pkg-rebar.mk                          |    9 +
 47 files changed, 109 insertions(+), 2384 deletions(-)
 create mode 100644 package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch
 delete mode 100644 package/ejabberd/0001-remove-make-targets-for-deps.patch
 rename package/ejabberd/{0007-fix-ejabberdctl.patch => 0002-fix-ejabberdctl.patch} (100%)
 delete mode 100644 package/ejabberd/0002-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/ejabberd/0003-remove-checking-erlang-version.patch
 delete mode 100644 package/ejabberd/0004-correct-includes.patch
 delete mode 100644 package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch
 delete mode 100644 package/ejabberd/0006-fix-install-permissions.patch
 delete mode 100644 package/ejabberd/0008-handle-error-case-from-lib_dir.patch
 delete mode 100644 package/ejabberd/0009-disable-mod_avatar.patch
 create mode 100644 package/erlang-eimp/Config.in
 create mode 100644 package/erlang-eimp/erlang-eimp.mk
 delete mode 100644 package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch
 rename package/erlang-p1-stun/{0001-remove-dependencies-from-rebar-config.patch => #0001-remove-dependencies-from-rebar-config.patch#} (78%)
 delete mode 100644 package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch
Signature · 1 line
2.17.1
#1 lore raw

PATCH 1/15 package/pkg-rebar.mk: Remove dependencies from rebar.config

Instead of having a patch in every rebar package to remove the dependencies in the rebar.config file in order to avoid rebar downloading such dependencies at build time, implement it directly as a post-patch hook in the rebar infrastructure.
Add a way to explicitly deactivate this behavior if any package needs such lines in the rebar.config file.

---
 ...emove-dependencies-from-rebar-config.patch | 106 ------------------
 ...emove-dependencies-from-rebar-config.patch |  20 ----
 ...emove-dependencies-from-rebar-config.patch |  16 ---
 ...emove-dependencies-from-rebar-config.patch |  18 ---
 ...emove-dependencies-from-rebar-config.patch |  19 ----
 ...emove-dependencies-from-rebar-config.patch |  18 ---
 package/pkg-rebar.mk                          |   9 ++
 7 files changed, 9 insertions(+), 197 deletions(-)
 delete mode 100644 package/ejabberd/0002-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch
 delete mode 100644 package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch
package/ejabberd/0002-remove-dependencies-from-rebar-config.patch deleted +0 -106
deleted file mode 100644
index 154c7bffd5..0000000000
@@ -1,106 +0,0 @@
-From 8674f61701da41cc53c532b5fa3a516838a2c5d4 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <[email protected]>
-Date: Wed, 10 Jan 2018 15:14:56 +0100
-Subject: [PATCH] remove dependencies from rebar config
-
-Without this patch, dependencies would be downloaded and compiled by
-rebar at build time.
-
-Signed-off-by: Johan Oudinet <[email protected]>
----
- rebar.config | 72 ------------------------------------------------------------
- 1 file changed, 72 deletions(-)
-
-diff --git a/rebar.config b/rebar.config
-index d6ad5e7b..0b246b92 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -18,68 +18,6 @@
- %%%
- %%%----------------------------------------------------------------------
- 
--{deps, [{lager, ".*", {git, "https://github.com/erlang-lager/lager",
--                       {tag, {if_version_above, "17", "3.4.2", "3.2.1"}}}},
--        {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}},
--        {cache_tab, ".*", {git, "https://github.com/processone/cache_tab", {tag, "1.0.12"}}},
--        {fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
--        {stringprep, ".*", {git, "https://github.com/processone/stringprep", {tag, "1.0.10"}}},
--        {fast_xml, ".*", {git, "https://github.com/processone/fast_xml", {tag, "1.1.25"}}},
--        {xmpp, ".*", {git, "https://github.com/processone/xmpp", {tag, "1.1.16"}}},
--        {fast_yaml, ".*", {git, "https://github.com/processone/fast_yaml", {tag, "1.0.12"}}},
--        {jiffy, ".*", {git, "https://github.com/davisp/jiffy", {tag, "0.14.8"}}},
--        {p1_oauth2, ".*", {git, "https://github.com/processone/p1_oauth2", {tag, "0.6.2"}}},
--        {luerl, ".*", {git, "https://github.com/rvirding/luerl", {tag, "v0.2"}}},
--	{jose, ".*", {git, "git://github.com/potatosalad/erlang-jose.git", {tag, "1.8.4"}}},
--	{fs, ".*", {git, "https://github.com/synrc/fs.git", {tag, "2.12.0"}}},
--	{if_var_true, stun, {stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.16"}}}},
--	{if_var_true, sip, {esip, ".*", {git, "https://github.com/processone/esip", {tag, "1.0.17"}}}},
--        {if_var_true, mysql, {p1_mysql, ".*", {git, "https://github.com/processone/p1_mysql",
--                                               {tag, "1.0.4"}}}},
--        {if_var_true, pgsql, {p1_pgsql, ".*", {git, "https://github.com/processone/p1_pgsql",
--                                               {tag, "1.1.4"}}}},
--        {if_var_true, sqlite, {sqlite3, ".*", {git, "https://github.com/processone/erlang-sqlite3",
--                                               {tag, "1.1.5"}}}},
--        {if_var_true, pam, {epam, ".*", {git, "https://github.com/processone/epam",
--                                           {tag, "1.0.3"}}}},
--        {if_var_true, zlib, {ezlib, ".*", {git, "https://github.com/processone/ezlib",
--                                           {tag, "1.0.3"}}}},
--        {if_var_true, riak, {riakc, ".*", {git, "https://github.com/processone/riak-erlang-client.git",
--                                           {tag, {if_version_above, "19", "develop", "2.5.3"}}}}},
--	{if_var_true, graphics, {eimp, ".*", {git, "https://github.com/processone/eimp.git", {tag, "1.0.2"}}}},
--	%% Elixir support, needed to run tests
--        {if_var_true, elixir, {elixir, ".*", {git, "https://github.com/elixir-lang/elixir",
--                                              {tag, {if_version_above, "17", "v1.4.4", "v1.1.1"}}}}},
--        %% TODO: When modules are fully migrated to new structure and mix, we will not need anymore rebar_elixir_plugin
--	{if_not_rebar3, {if_var_true, elixir, {rebar_elixir_plugin, ".*",
--					       {git, "https://github.com/processone/rebar_elixir_plugin", "0.1.0"}}}},
--        {if_var_true, iconv, {iconv, ".*", {git, "https://github.com/processone/iconv",
--                                            {tag, "1.0.6"}}}},
--        {if_var_true, tools, {meck, "0.8.*", {git, "https://github.com/eproxus/meck",
--                                              {tag, "0.8.4"}}}},
--        {if_var_true, tools, {moka, ".*", {git, "https://github.com/processone/moka.git",
--                                           {tag, "1.0.5c"}}}},
--        {if_var_true, redis, {eredis, ".*", {git, "https://github.com/wooga/eredis",
--                                             {tag, "v1.0.8"}}}}]}.
--
--{if_var_true, latest_deps,
-- {floating_deps, [cache_tab,
--                  fast_tls,
--                  stringprep,
--                  fast_xml,
--                  esip,
--                  stun,
--                  fast_yaml,
--		  xmpp,
--                  p1_utils,
--                  p1_mysql,
--                  p1_pgsql,
--                  p1_oauth2,
--                  epam,
--                  ezlib,
--		  eimp,
--                  iconv]}}.
--
- {erl_first_files, ["src/ejabberd_config.erl", "src/gen_mod.erl", "src/mod_muc_room.erl", "src/mod_push.erl"]}.
- 
- {erl_opts, [nowarn_deprecated_function,
-@@ -153,16 +91,6 @@
- {if_version_above, "17", {cover_enabled, true}}.
- {cover_export_enabled, true}.
- 
--{post_hook_configure, [{"fast_tls", []},
--                       {"stringprep", []},
--                       {"fast_yaml", []},
--                       {if_var_true, sip, {"esip", []}},
--                       {"fast_xml", [{if_var_true, full_xml, "--enable-full-xml"}]},
--                       {if_var_true, pam, {"epam", []}},
--                       {if_var_true, zlib, {"ezlib", []}},
--		       {if_var_true, graphics, {"eimp", []}},
--                       {if_var_true, iconv, {"iconv", []}}]}.
--
- {port_env, [{"CFLAGS", "-g -O2 -Wall"}]}.
- 
- {port_specs, [{"priv/lib/jid.so", ["c_src/jid.c"]}]}.
--- 
-2.14.1
-
package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch deleted +0 -20
deleted file mode 100644
index da86076988..0000000000
@@ -1,20 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <[email protected]>
-
-diff --git a/rebar.config b/rebar.config
-index ed93134..5b32788 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -31,10 +31,6 @@
-
- {port_specs, [{"priv/lib/esip_drv.so", ["c_src/esip_codec.c"]}]}.
-
--{deps, [{stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.16"}}},
--	{fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
--	{p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/esip_codec.gcda", "c_src/esip_codec.gcno"]}.
-
- {cover_enabled, true}.
package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch deleted +0 -16
deleted file mode 100644
index 7e6b4b5345..0000000000
@@ -1,16 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-diff --git a/rebar.config b/rebar.config
-index f02ea40..d0af863 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -22,9 +22,6 @@
-
- {erl_opts, [debug_info, {i, "include"}]}.
-
--{deps, [{fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
--	{p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {cover_enabled, true}.
- {cover_export_enabled, true}.
package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch deleted +0 -18
deleted file mode 100644
index b58db3f2c5..0000000000
@@ -1,18 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <[email protected]>
-
-diff --git a/rebar.config b/rebar.config
-index 99f5047..ac2f3b2 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -32,8 +32,6 @@
- {port_specs, [{"priv/lib/fxml.so", ["c_src/fxml.c"]},
-               {"priv/lib/fxml_stream.so", ["c_src/fxml_stream.c"]}]}.
-
--{deps, [{p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/fxml.gcda", "c_src/fxml.gcno", "c_src/fxml_stream.gcda", "c_src/fxml_stream.gcno"]}.
-
- {cover_enabled, true}.
package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch deleted +0 -19
deleted file mode 100644
index fed44f626d..0000000000
@@ -1,19 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <[email protected]>
-
-diff --git a/rebar.config b/rebar.config
---- a/rebar.config	2017-11-30 14:24:52.348695123 +0100
-+++ b/rebar.config	2017-11-30 14:35:11.816407195 +0100
-@@ -29,10 +29,6 @@
-
- {port_specs, [{"priv/lib/jid.so", ["c_src/jid.c"]}]}.
-
--{deps, [{fast_xml, ".*", {git, "https://github.com/processone/fast_xml", {tag, "1.1.25"}}},
--        {stringprep, ".*", {git, "https://github.com/processone/stringprep", {tag, "1.0.10"}}},
--        {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/jid.gcda", "c_src/jid.gcno"]}.
-
- {cover_enabled, true}.
package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch deleted +0 -18
deleted file mode 100644
index 4dfdb929c1..0000000000
@@ -1,18 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <[email protected]>
-
-diff --git a/rebar.config b/rebar.config
-index e09d08d..651a829 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -24,8 +24,6 @@
- {port_env, [{"CFLAGS", "$CFLAGS"}, {"LDFLAGS", "$LDFLAGS -lyaml"}]}.
- {port_specs, [{"priv/lib/fast_yaml.so", ["c_src/fast_yaml.c"]}]}.
-
--{deps, [{p1_utils, ".*", {git, "git://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/fast_yaml.gcda", "c_src/fast_yaml.gcno"]}.
-
- {cover_enabled, true}.
package/pkg-rebar.mk +9 -0
index e2b4a58681..66711c913e 100644
@@ -227,6 +227,15 @@ $(2)_REBAR = rebar
 $(2)_DEPENDENCIES += host-erlang-rebar
 endif
 
+# Remove dependencies listed in rebar.config unless the package says
+# otherwise
+ifeq ($$($(2)_KEEP_DEPENDENCIES),)
+define remove_dependencies_from_rebar_config
+	$(SED) '/^{deps/,/}\.$$$$/d' $$($$(PKG)_DIR)/rebar.config
+endef
+$(2)_POST_PATCH_HOOKS += remove_dependencies_from_rebar_config
+endif
+
 # The package sub-infra to use
 #
 ifeq ($$($(2)_USE_AUTOCONF),YES)
Signature · 1 line
2.17.1
#2 lore raw

PATCH 1/15 package/pkg-rebar.mk: Remove dependencies from rebar.config

Hello Johan,

package/pkg-rebar.mk $(2)_REBAR = rebar · line 234

Quoted 5 lines · Johan Oudinet
package/pkg-rebar.mk +5 -0
+# Remove dependencies listed in rebar.config unless the package says
+# otherwise
+ifeq ($$($(2)_KEEP_DEPENDENCIES),)
+define remove_dependencies_from_rebar_config
+	$(SED) '/^{deps/,/}\.$$$$/d' $$($$(PKG)_DIR)/rebar.config

I renamed this macro:

remove-rebar-config-dependencies

and moved it outside of the inner-rebar-package macro, so that it is declared together with the other macros in pkg-rebar.mk.

Also, an added benefit is that we can avoid the double escaping so $$$$ becomes just $$, and $$ becomes just $.

I've applied to next, but could you please send a follow-up patch that documents this <pkg>_KEEP_DEPENDENCIES variable in the Buildroot manual in the rebar package infrastructure section ?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#3 lore raw

PATCH 1/15 package/pkg-rebar.mk: Remove dependencies from rebar.config

Hi Thomas,

Quoted 15 lines · Thomas Petazzoni

package/pkg-rebar.mk $(2)_REBAR = rebar · line 234

Quoted 5 lines · Johan Oudinet
package/pkg-rebar.mk +5 -0
+# Remove dependencies listed in rebar.config unless the package says
+# otherwise
+ifeq ($$($(2)_KEEP_DEPENDENCIES),)
+define remove_dependencies_from_rebar_config
+     $(SED) '/^{deps/,/}\.$$$$/d' $$($$(PKG)_DIR)/rebar.config

I renamed this macro:

remove-rebar-config-dependencies

and moved it outside of the inner-rebar-package macro, so that it is declared together with the other macros in pkg-rebar.mk.

Quoted 6 lines

Also, an added benefit is that we can avoid the double escaping so $$$$ becomes just $$, and $$ becomes just $.

I've applied to next, but could you please send a follow-up patch that documents this <pkg>_KEEP_DEPENDENCIES variable in the Buildroot manual in the rebar package infrastructure section ?

Thanks. I've just sent a patch to document this variable in the Buildroot manual.

Best,

Signature · 1 line
Johan
#4 lore raw

PATCH 1/1 docs/manual: Document ERLANG_FOOBAR_KEEP_DEPENDENCIES in rebar infra

In reply to Johan Oudinet
---
 docs/manual/adding-packages-rebar.txt | 7 +++++++
 1 file changed, 7 insertions(+)
docs/manual/adding-packages-rebar.txt +7 -0
index be9ede0113..b2028b1c5b 100644
@@ -86,6 +86,13 @@ If the package bundles a _rebar_ utility, but can use the generic
 * +ERLANG_FOOBAR_REBAR_ENV+, to specify additional environment
   variables to pass to the _rebar_ utility.
 
+* +ERLANG_FOOBAR_KEEP_DEPENDENCIES+, to keep the dependencies
+  described in the rebar.config file. By default, the _rebar_
+  infrastructure removes such dependencies as a post-patch hook to
+  ensure rebar does not download or compile them. Only set this
+  variable to a non-empty value if the _rebar_ infrastructure must not
+  modify the rebar.config file included in the package.
+
 With the rebar infrastructure, all the steps required to build
 and install the packages are already defined, and they generally work
 well for most rebar-based packages. However, when required, it is
Signature · 1 line
2.17.1
#5 lore raw

PATCH 1/1 docs/manual: Document ERLANG_FOOBAR_KEEP_DEPENDENCIES in rebar infra

Hello,

docs/manual/adding-packages-rebar.txt If the package bundles a _rebar_ utility, but can use the generic · line 91

Quoted 3 lines · Johan Oudinet
docs/manual/adding-packages-rebar.txt +3 -0
+* +ERLANG_FOOBAR_KEEP_DEPENDENCIES+, to keep the dependencies
+  described in the rebar.config file. By default, the _rebar_
+  infrastructure removes such dependencies as a post-patch hook to
	as a post-patch hook -> *in* a post-patch hook

docs/manual/adding-packages-rebar.txt If the package bundles a _rebar_ utility, but can use the generic · line 94

Quoted 3 lines
docs/manual/adding-packages-rebar.txt +3 -0
+  ensure rebar does not download or compile them. Only set this
+  variable to a non-empty value if the _rebar_ infrastructure must not
+  modify the rebar.config file included in the package.

Now that you write down the semantic of the variable, I don't like it
anymore: setting to a non-empty value is clearly not what Buildroot normally does for boolean variables. We use a YES/NO value.

So instead of this, could we change pkg-rebar.mk to do this:

$(2)_KEEP_DEPENDENCIES ?= NO

ifeq ($($(2)_KEEP_DEPENDENCIES),NO) $(2)_POST_PATCH_HOOKS += remove-rebar-config-dependencies endif

And then the document should say that the accepted values are "YES" and "NO" and that the infrastructure defaults to "NO".

Could you have a look at doing this ?

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#6 lore raw

PATCH 1/1 docs/manual: Document ERLANG_FOOBAR_KEEP_DEPENDENCIES in rebar infra

Quoted 20 lines · Thomas Petazzoni

docs/manual/adding-packages-rebar.txt If the package bundles a _rebar_ utility, but can use the generic · line 91

Quoted 3 lines · Johan Oudinet
docs/manual/adding-packages-rebar.txt +3 -0
+* +ERLANG_FOOBAR_KEEP_DEPENDENCIES+, to keep the dependencies
+  described in the rebar.config file. By default, the _rebar_
+  infrastructure removes such dependencies as a post-patch hook to
        as a post-patch hook -> *in* a post-patch hook

docs/manual/adding-packages-rebar.txt If the package bundles a _rebar_ utility, but can use the generic · line 94

Quoted 3 lines
docs/manual/adding-packages-rebar.txt +3 -0
+  ensure rebar does not download or compile them. Only set this
+  variable to a non-empty value if the _rebar_ infrastructure must not
+  modify the rebar.config file included in the package.

Now that you write down the semantic of the variable, I don't like it
anymore: setting to a non-empty value is clearly not what Buildroot normally does for boolean variables. We use a YES/NO value.

So instead of this, could we change pkg-rebar.mk to do this:

$(2)_KEEP_DEPENDENCIES ?= NO

Quoted 8 lines

ifeq ($($(2)_KEEP_DEPENDENCIES),NO) $(2)_POST_PATCH_HOOKS += remove-rebar-config-dependencies endif

And then the document should say that the accepted values are "YES" and "NO" and that the infrastructure defaults to "NO".

Could you have a look at doing this ?

Done. I've also fixed a bug in remove-rebar-config-dependencies that took me days to figure out :-(

Signature · 1 line
Johan
#7 lore raw

PATCH 2/15 erlang-p1-utils: Bump to version 1.0.13

In reply to Johan Oudinet
---
 package/erlang-p1-utils/erlang-p1-utils.hash | 2 +-
 package/erlang-p1-utils/erlang-p1-utils.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-utils/erlang-p1-utils.hash +1 -1
index 950a5540d7..db925bddd1 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 57bfc575179733a723717f4fecb65b9f7fd056595f798b52e7bc0206e8a9333f erlang-p1-utils-1.0.10.tar.gz
+sha256 8f21fc0472c314572ebb066d624cb5463cf5b016e18b7fd7dca9dca2a4589382 erlang-p1-utils-1.0.13.tar.gz
package/erlang-p1-utils/erlang-p1-utils.mk +1 -1
index 6a4920738c..6025e3f56c 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_UTILS_VERSION = 1.0.10
+ERLANG_P1_UTILS_VERSION = 1.0.13
 ERLANG_P1_UTILS_SITE = $(call github,processone,p1_utils,$(ERLANG_P1_UTILS_VERSION))
 ERLANG_P1_UTILS_LICENSE = Apache-2.0
 ERLANG_P1_UTILS_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#8 lore raw

PATCH 2/15 erlang-p1-utils: Bump to version 1.0.13

Hello,

Quoted 5 lines · Johan Oudinet
---
 package/erlang-p1-utils/erlang-p1-utils.hash | 2 +-
 package/erlang-p1-utils/erlang-p1-utils.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

I've applied patches 2 to 15 to next. I have some comments/questions on a few of them, I'll reply to them specifically.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#9 lore raw

PATCH 3/15 erlang-p1-cache-tab: Bump to version 1.0.16

In reply to Johan Oudinet
---
 package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash | 2 +-
 package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash +1 -1
index 9425bcda8b..841410292f 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 5ef27d3be0ef2e8dc06468ec39dc3a43506d6f85af0edc21b9c14db860669d38 erlang-p1-cache-tab-1.0.12.tar.gz
+sha256 169c3ca82b99c482e5914b616d594fed25cf34a4c995e37bfe1651d70bbaea55 erlang-p1-cache-tab-1.0.16.tar.gz
package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk +1 -1
index ae96103ead..a25f0a1e6e 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_CACHE_TAB_VERSION = 1.0.12
+ERLANG_P1_CACHE_TAB_VERSION = 1.0.16
 ERLANG_P1_CACHE_TAB_SITE = $(call github,processone,cache_tab,$(ERLANG_P1_CACHE_TAB_VERSION))
 ERLANG_P1_CACHE_TAB_LICENSE = Apache-2.0
 ERLANG_P1_CACHE_TAB_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#10 lore raw

PATCH 4/15 erlang-p1-tls: Bump to version 1.0.25

In reply to Johan Oudinet
---
 package/erlang-p1-tls/erlang-p1-tls.hash | 2 +-
 package/erlang-p1-tls/erlang-p1-tls.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-tls/erlang-p1-tls.hash +1 -1
index b5b800b202..af635e5221 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 ca9670b7f78a025b101e3fee6255d7472d6b52abc46444cc45616c3d1bd75b9b erlang-p1-tls-1.0.17.tar.gz
+sha256 5bb883b03514999876c750cdb08a5e4cf80a9eb89319037b612e1265c43f6f6d erlang-p1-tls-1.0.25.tar.gz
package/erlang-p1-tls/erlang-p1-tls.mk +1 -1
index ad7317dc8c..b569664465 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_TLS_VERSION = 1.0.17
+ERLANG_P1_TLS_VERSION = 1.0.25
 ERLANG_P1_TLS_SITE = $(call github,processone,fast_tls,$(ERLANG_P1_TLS_VERSION))
 ERLANG_P1_TLS_LICENSE = Apache-2.0
 ERLANG_P1_TLS_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#11 lore raw

PATCH 5/15 erlang-p1-stringprep: Bump to version 1.0.14

In reply to Johan Oudinet
---
 package/erlang-p1-stringprep/erlang-p1-stringprep.hash | 2 +-
 package/erlang-p1-stringprep/erlang-p1-stringprep.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-stringprep/erlang-p1-stringprep.hash +1 -1
index 769e2180d6..5200d661a8 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 baef9e6bd59e00c9d2600e8db87078c19d76cbf66d5068efeaf1df740ee306ce erlang-p1-stringprep-1.0.10.tar.gz
+sha256 32245561f84b03b9024c8768ad2ac8d67f285a032a7f36ff35a74c77fc701f96 erlang-p1-stringprep-1.0.14.tar.gz
package/erlang-p1-stringprep/erlang-p1-stringprep.mk +1 -1
index f104a2ce87..a05752508c 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_STRINGPREP_VERSION = 1.0.10
+ERLANG_P1_STRINGPREP_VERSION = 1.0.14
 ERLANG_P1_STRINGPREP_SITE = $(call github,processone,stringprep,$(ERLANG_P1_STRINGPREP_VERSION))
 ERLANG_P1_STRINGPREP_LICENSE = TCL (tools/*.tcl), Apache-2.0 (rest)
 ERLANG_P1_STRINGPREP_LICENSE_FILES = LICENSE.ALL LICENSE.TCL LICENSE.txt
Signature · 1 line
2.17.1
#12 lore raw

PATCH 6/15 erlang-p1-xml: Bump to version 1.1.34

In reply to Johan Oudinet
---
 package/erlang-p1-xml/erlang-p1-xml.hash | 2 +-
 package/erlang-p1-xml/erlang-p1-xml.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-xml/erlang-p1-xml.hash +1 -1
index ae3f3241c6..ac8042da64 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 aeda4051c08b78e2f036d82705433a667d03736f07ff0054862e82105435e285 erlang-p1-xml-1.1.25.tar.gz
+sha256 8615f77a1448e297af25f85261b6e4a84952af797da2e317c8ec71fe2fe779ac erlang-p1-xml-1.1.34.tar.gz
package/erlang-p1-xml/erlang-p1-xml.mk +1 -1
index ff9999834d..c8c65ff423 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_XML_VERSION = 1.1.25
+ERLANG_P1_XML_VERSION = 1.1.34
 ERLANG_P1_XML_SITE = $(call github,processone,fast_xml,$(ERLANG_P1_XML_VERSION))
 ERLANG_P1_XML_LICENSE = Apache-2.0
 ERLANG_P1_XML_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#13 lore raw

PATCH 7/15 erlang-p1-zlib: Bump to version 1.0.4

In reply to Johan Oudinet
---
 package/erlang-p1-zlib/erlang-p1-zlib.hash | 2 +-
 package/erlang-p1-zlib/erlang-p1-zlib.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-zlib/erlang-p1-zlib.hash +1 -1
index dc14dd0707..6717abdde0 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 8396f9cb17fdb195d9a2537ad76327bf930d66118b87b7108f27e5ed28b7cde6 erlang-p1-zlib-1.0.3.tar.gz
+sha256 3328661c512c28e68db69b82202b8d6c4127f31f2aefc5b0040ba9bce6abe9b3 erlang-p1-zlib-1.0.4.tar.gz
package/erlang-p1-zlib/erlang-p1-zlib.mk +1 -1
index bc53efccd7..f62eff6377 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_ZLIB_VERSION = 1.0.3
+ERLANG_P1_ZLIB_VERSION = 1.0.4
 ERLANG_P1_ZLIB_SITE = $(call github,processone,ezlib,$(ERLANG_P1_ZLIB_VERSION))
 ERLANG_P1_ZLIB_LICENSE = Apache-2.0
 ERLANG_P1_ZLIB_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#14 lore raw

PATCH 8/15 erlang-p1-xmpp: Bump to version 1.2.5

In reply to Johan Oudinet

This package now depends also on erlang-p1-tls and erlang-p1-zlib.

---
 package/erlang-p1-xmpp/Config.in           | 2 ++
 package/erlang-p1-xmpp/erlang-p1-xmpp.hash | 2 +-
 package/erlang-p1-xmpp/erlang-p1-xmpp.mk   | 4 ++--
 3 files changed, 5 insertions(+), 3 deletions(-)
package/erlang-p1-xmpp/Config.in +2 -0
index 9b33e0c609..6e40fed10a 100644
@@ -6,7 +6,9 @@ config BR2_PACKAGE_ERLANG_P1_XMPP
 	depends on BR2_INSTALL_LIBSTDCPP # erlang-p1-stringprep
 	select BR2_PACKAGE_ERLANG_P1_XML
 	select BR2_PACKAGE_ERLANG_P1_STRINGPREP
+	select BR2_PACKAGE_ERLANG_P1_TLS
 	select BR2_PACKAGE_ERLANG_P1_UTILS
+	select BR2_PACKAGE_ERLANG_P1_ZLIB
 	help
 	  XMPP library for Erlang.
 
package/erlang-p1-xmpp/erlang-p1-xmpp.hash +1 -1
index d3d2dafb9e..e1c63a6065 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 558e8d8734052bdbe679cf10165a63944c208940ab84be78c97ba661dfcf3cb2 erlang-p1-xmpp-1.1.16.tar.gz
+sha256 699f50d50850272e67160b022fd27f3ccc46570e48968d8ee30d491bf926794d erlang-p1-xmpp-1.2.5.tar.gz
package/erlang-p1-xmpp/erlang-p1-xmpp.mk +2 -2
index 096876ca34..e20a84f4a3 100644
@@ -4,13 +4,13 @@
 #
 ################################################################################
 
-ERLANG_P1_XMPP_VERSION = 1.1.16
+ERLANG_P1_XMPP_VERSION = 1.2.5
 ERLANG_P1_XMPP_SITE = $(call github,processone,xmpp,$(ERLANG_P1_XMPP_VERSION))
 ERLANG_P1_XMPP_LICENSE = Apache-2.0
 ERLANG_P1_XMPP_LICENSE_FILES = LICENSE.txt
 ERLANG_P1_XMPP_INSTALL_STAGING = YES
 ERLANG_P1_XMPP_DEPENDENCIES = erlang-p1-xml erlang-p1-stringprep \
-	erlang-p1-utils host-erlang-p1-xml
+	erlang-p1-tls erlang-p1-utils erlang-p1-zlib host-erlang-p1-xml
 
 $(eval $(rebar-package))
 $(eval $(host-rebar-package))
Signature · 1 line
2.17.1
#15 lore raw

PATCH 9/15 erlang-p1-yaml: Bump to version 1.0.17

In reply to Johan Oudinet
---
 package/erlang-p1-yaml/erlang-p1-yaml.hash | 2 +-
 package/erlang-p1-yaml/erlang-p1-yaml.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-yaml/erlang-p1-yaml.hash +1 -1
index 24282e6c37..2f3b181f6a 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 5a6499a47cdd1f753a527cb8b79074312354063535adc0ca0fd7f72c2a015e3a erlang-p1-yaml-1.0.12.tar.gz
+sha256 d2675ec9b2f64eba6c3437597e3abe3bfaae2172560784456a2763d1d1a50b08 erlang-p1-yaml-1.0.17.tar.gz
package/erlang-p1-yaml/erlang-p1-yaml.mk +1 -1
index de138a9f93..d4173988f3 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_YAML_VERSION = 1.0.12
+ERLANG_P1_YAML_VERSION = 1.0.17
 ERLANG_P1_YAML_SITE = $(call github,processone,fast_yaml,$(ERLANG_P1_YAML_VERSION))
 ERLANG_P1_YAML_LICENSE = Apache-2.0
 ERLANG_P1_YAML_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#16 lore raw

PATCH 10/15 erlang-p1-oauth2: Bump to version 0.6.3

In reply to Johan Oudinet
---
 package/erlang-p1-oauth2/erlang-p1-oauth2.hash | 2 +-
 package/erlang-p1-oauth2/erlang-p1-oauth2.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-oauth2/erlang-p1-oauth2.hash +1 -1
index 29fae12636..58756c6fd7 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 aea823ccc49b20f7e27f1893c7edf231339f56b16ba21ce78a60f735b6211718 erlang-p1-oauth2-0.6.2.tar.gz
+sha256 d7d954376ae7c131a0884c7c80b0b9e8270b6f574182df59ce4f2fbbae322854 erlang-p1-oauth2-0.6.3.tar.gz
package/erlang-p1-oauth2/erlang-p1-oauth2.mk +1 -1
index 5c27393ae2..444bc8971b 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_OAUTH2_VERSION = 0.6.2
+ERLANG_P1_OAUTH2_VERSION = 0.6.3
 ERLANG_P1_OAUTH2_SITE = $(call github,processone,p1_oauth2,$(ERLANG_P1_OAUTH2_VERSION))
 ERLANG_P1_OAUTH2_LICENSE = MIT
 ERLANG_P1_OAUTH2_LICENSE_FILES = LICENSE
Signature · 1 line
2.17.1
#17 lore raw

PATCH 11/15 erlang-p1-stun: Bump to version 1.0.25

In reply to Johan Oudinet
---
 ...-remove-dependencies-from-rebar-config.patch# | 16 ++++++++++++++++
 package/erlang-p1-stun/erlang-p1-stun.hash       |  2 +-
 package/erlang-p1-stun/erlang-p1-stun.mk         |  2 +-
 3 files changed, 18 insertions(+), 2 deletions(-)
 create mode 100644 package/erlang-p1-stun/#0001-remove-dependencies-from-rebar-config.patch#
package/erlang-p1-stun/#0001-remove-dependencies-from-rebar-config.patch# new file +16 -0
new file mode 100644
index 0000000000..b228edafa7
@@ -0,0 +1,16 @@
+Without this patch, dependencies would be downloaded and compiled
+by rebar at build time.
+
+diff --git a/rebar.config b/rebar.config
+index f02ea40..d0af863 100644
+--- a/rebar.config
++++ b/rebar.config
+@@ -22,8 +22,5 @@
+
+ {erl_opts, [debug_info, {i, "include"}]}.
+
+-{deps, [{fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
+-      {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
+-
+ {cover_enabled, true}.
+ {cover_export_enabled, true}.
package/erlang-p1-stun/erlang-p1-stun.hash +1 -1
index ee32834e34..7400a276a0 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 8efe2f47c2460b1e0d68a680dcfcd938a2bc98c85abb5b100c15246fe6a25506 erlang-p1-stun-1.0.16.tar.gz
+sha256 a5a59ae3c75290029aa062ef19ecd52b8377959a8eb7352bd2a62c4ff1dd0613 erlang-p1-stun-1.0.25.tar.gz
package/erlang-p1-stun/erlang-p1-stun.mk +1 -1
index 42bbc758e5..32bdd4f245 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_STUN_VERSION = 1.0.16
+ERLANG_P1_STUN_VERSION = 1.0.25
 ERLANG_P1_STUN_SITE = $(call github,processone,stun,$(ERLANG_P1_STUN_VERSION))
 ERLANG_P1_STUN_LICENSE = Apache-2.0
 ERLANG_P1_STUN_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#18 lore raw

PATCH 11/15 erlang-p1-stun: Bump to version 1.0.25

Quoted 4 lines · Johan Oudinet
---
 ...-remove-dependencies-from-rebar-config.patch# | 16 ++++++++++++++++

Sorry this file is not supposed to be there. I'll fix that in a V2.

Quoted 3 lines
 package/erlang-p1-stun/erlang-p1-stun.hash       |  2 +-
 package/erlang-p1-stun/erlang-p1-stun.mk         |  2 +-
 3 files changed, 18 insertions(+), 2 deletions(-)
Signature · 1 line
Johan
#19 lore raw

PATCH v2 11/15 erlang-p1-stun: Bump to version 1.0.25

In reply to Johan Oudinet

---
Changes v1 -> v2:
- Remove emacs backup file

---
 package/erlang-p1-stun/erlang-p1-stun.hash | 2 +-
 package/erlang-p1-stun/erlang-p1-stun.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-stun/erlang-p1-stun.hash +1 -1
index ee32834e34..7400a276a0 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 8efe2f47c2460b1e0d68a680dcfcd938a2bc98c85abb5b100c15246fe6a25506 erlang-p1-stun-1.0.16.tar.gz
+sha256 a5a59ae3c75290029aa062ef19ecd52b8377959a8eb7352bd2a62c4ff1dd0613 erlang-p1-stun-1.0.25.tar.gz
package/erlang-p1-stun/erlang-p1-stun.mk +1 -1
index 42bbc758e5..32bdd4f245 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_STUN_VERSION = 1.0.16
+ERLANG_P1_STUN_VERSION = 1.0.25
 ERLANG_P1_STUN_SITE = $(call github,processone,stun,$(ERLANG_P1_STUN_VERSION))
 ERLANG_P1_STUN_LICENSE = Apache-2.0
 ERLANG_P1_STUN_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#20 lore raw

PATCH 12/15 erlang-p1-sip: Bump to version 1.0.26

In reply to Johan Oudinet
---
 package/erlang-p1-sip/erlang-p1-sip.hash | 2 +-
 package/erlang-p1-sip/erlang-p1-sip.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-sip/erlang-p1-sip.hash +1 -1
index 4d41b9884c..2cd057b976 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 6ac36594921561d0d5502bb824b7408223a3f53560a9d2fa4b0f685c0441baf0 erlang-p1-sip-1.0.17.tar.gz
+sha256 be38cceff8e2207da24805b8e1c926cdf6d63ab116be12cd829f5a3a4e5e58ab erlang-p1-sip-1.0.26.tar.gz
package/erlang-p1-sip/erlang-p1-sip.mk +1 -1
index a9f572df2d..846633873a 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_SIP_VERSION = 1.0.17
+ERLANG_P1_SIP_VERSION = 1.0.26
 ERLANG_P1_SIP_SITE = $(call github,processone,esip,$(ERLANG_P1_SIP_VERSION))
 ERLANG_P1_SIP_LICENSE = Apache-2.0
 ERLANG_P1_SIP_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#21 lore raw

PATCH 13/15 erlang-p1-iconv: Bump to version 1.0.10

In reply to Johan Oudinet
---
 package/erlang-p1-iconv/erlang-p1-iconv.hash | 2 +-
 package/erlang-p1-iconv/erlang-p1-iconv.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/erlang-p1-iconv/erlang-p1-iconv.hash +1 -1
index 0f0a23161a..31bcf40731 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 c7214ea7503c3de1edf3bdd72b37187aa3a9a36d7cf7f5945a067ae8d262d3fb erlang-p1-iconv-1.0.6.tar.gz
+sha256 8a9ff8a3dd983284caa964f118b5782ef1c0c662995608b2ca4f4a5f285605a9 erlang-p1-iconv-1.0.10.tar.gz
package/erlang-p1-iconv/erlang-p1-iconv.mk +1 -1
index 6b22431cce..79d8efe16f 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_ICONV_VERSION = 1.0.6
+ERLANG_P1_ICONV_VERSION = 1.0.10
 ERLANG_P1_ICONV_SITE = $(call github,processone,iconv,$(ERLANG_P1_ICONV_VERSION))
 ERLANG_P1_ICONV_LICENSE = Apache-2.0
 ERLANG_P1_ICONV_LICENSE_FILES = LICENSE.txt
Signature · 1 line
2.17.1
#22 lore raw

PATCH 14/15 erlang-p1-eimp: New package

In reply to Johan Oudinet
---
 package/Config.in                  |  1 +
 package/erlang-eimp/Config.in      | 12 ++++++++++++
 package/erlang-eimp/erlang-eimp.mk | 13 +++++++++++++
 3 files changed, 26 insertions(+)
 create mode 100644 package/erlang-eimp/Config.in
 create mode 100644 package/erlang-eimp/erlang-eimp.mk
package/Config.in +1 -0
index b60e7700ad..e15ab513f9 100644
@@ -550,6 +550,7 @@ menu "Interpreter languages and scripting"
 	source "package/erlang/Config.in"
 if BR2_PACKAGE_ERLANG
 menu "Erlang libraries/modules"
+	source "package/erlang-eimp/Config.in"
 	source "package/erlang-goldrush/Config.in"
 	source "package/erlang-jiffy/Config.in"
 	source "package/erlang-lager/Config.in"
package/erlang-eimp/Config.in new file +12 -0
new file mode 100644
index 0000000000..5c207e9c23
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_ERLANG_EIMP
+	bool "erlang-eimp"
+	select BR2_PACKAGE_ERLANG_P1_UTILS
+	select BR2_PACKAGE_GD
+	select BR2_PACKAGE_GD_WEBPNG
+	select BR2_PACKAGE_JPEG
+	select BR2_PACKAGE_LIBPNG
+	select BR2_PACKAGE_WEBP
+	help
+	  Erlang Image Manipulation Process
+
+	  https://github.com/processone/eimp
package/erlang-eimp/erlang-eimp.mk new file +13 -0
new file mode 100644
index 0000000000..83d34cd5e0
@@ -0,0 +1,13 @@
+################################################################################
+#
+# erlang-eimp
+#
+################################################################################
+
+ERLANG_EIMP_VERSION = 1.0.8
+ERLANG_EIMP_SITE = $(call github,processone,eimp,$(ERLANG_EIMP_VERSION))
+ERLANG_EIMP_LICENSE = Apache-2.0
+ERLANG_EIMP_LICENSE_FILES = LICENSE.txt
+ERLANG_EIMP_DEPENDENCIES = erlang-p1-utils gd jpeg libpng webp
+
+$(eval $(rebar-package))
Signature · 1 line
2.17.1
#23 lore raw

PATCH 14/15 erlang-p1-eimp: New package

Hello,

Quoted 8 lines · Johan Oudinet
---
 package/Config.in                  |  1 +
 package/erlang-eimp/Config.in      | 12 ++++++++++++
 package/erlang-eimp/erlang-eimp.mk | 13 +++++++++++++
 3 files changed, 26 insertions(+)
 create mode 100644 package/erlang-eimp/Config.in
 create mode 100644 package/erlang-eimp/erlang-eimp.mk

On this one you forgot to update the DEVELOPERS file with this new package, so I did so when applying. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#24 lore raw

PATCH 15/15 ejabberd: Bump to version 18.09

In reply to Johan Oudinet

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.

---
 ...not-download-or-compile-dependencies.patch |   35 +
 .../0001-remove-make-targets-for-deps.patch   |   43 -
 ...rdctl.patch => 0002-fix-ejabberdctl.patch} |    0
 .../0003-remove-checking-erlang-version.patch |   32 -
 package/ejabberd/0004-correct-includes.patch  | 1919 -----------------
 ...0005-disable-ERLANG_DEPRECATED_CHECK.patch |   29 -
 .../0006-fix-install-permissions.patch        |   84 -
 .../0008-handle-error-case-from-lib_dir.patch |   32 -
 .../ejabberd/0009-disable-mod_avatar.patch    |   32 -
 package/ejabberd/Config.in                    |    1 +
 package/ejabberd/ejabberd.hash                |    2 +-
 package/ejabberd/ejabberd.mk                  |   12 +-
 12 files changed, 45 insertions(+), 2176 deletions(-)
 create mode 100644 package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch
 delete mode 100644 package/ejabberd/0001-remove-make-targets-for-deps.patch
 rename package/ejabberd/{0007-fix-ejabberdctl.patch => 0002-fix-ejabberdctl.patch} (100%)
 delete mode 100644 package/ejabberd/0003-remove-checking-erlang-version.patch
 delete mode 100644 package/ejabberd/0004-correct-includes.patch
 delete mode 100644 package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch
 delete mode 100644 package/ejabberd/0006-fix-install-permissions.patch
 delete mode 100644 package/ejabberd/0008-handle-error-case-from-lib_dir.patch
 delete mode 100644 package/ejabberd/0009-disable-mod_avatar.patch
package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch new file +35 -0
new file mode 100644
index 0000000000..01a5362e5f
@@ -0,0 +1,35 @@
+From 277103e886c9b3ddfede8b3f5b92d3e94736f404 Mon Sep 17 00:00:00 2001
+From: Johan Oudinet <[email protected]>
+Date: Fri, 23 Nov 2018 16:13:21 +0100
+Subject: [PATCH] Makefile.in: do not download or compile dependencies
+
+Signed-off-by: Johan Oudinet <[email protected]>
+---
+ 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
+
package/ejabberd/0001-remove-make-targets-for-deps.patch deleted +0 -43

43 lines not on this page · raw message

package/ejabberd/0002-fix-ejabberdctl.patch renamed from package/ejabberd/0007-fix-ejabberdctl.patch +0 -0
similarity index 100%
rename from package/ejabberd/0007-fix-ejabberdctl.patch
rename to package/ejabberd/0002-fix-ejabberdctl.patch
package/ejabberd/0003-remove-checking-erlang-version.patch deleted +0 -32
deleted file mode 100644
index da3bf2a89e..0000000000
@@ -1,32 +0,0 @@
-From f384518dedec4ad657ad69d55754076c13c22d96 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <[email protected]>
-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 <[email protected]>
----
- 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
-
package/ejabberd/0004-correct-includes.patch deleted +0 -1919

1,919 lines not on this page · raw message

package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch deleted +0 -29
deleted file mode 100644
index 09b356219d..0000000000
@@ -1,29 +0,0 @@
-From d43a65b112ec995a5ee52aca2a16e5cf9699d7c1 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <[email protected]>
-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 <[email protected]>
----
- 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
-
package/ejabberd/0006-fix-install-permissions.patch deleted +0 -84

84 lines not on this page · raw message

package/ejabberd/0008-handle-error-case-from-lib_dir.patch deleted +0 -32
deleted file mode 100644
index f7931b4edc..0000000000
@@ -1,32 +0,0 @@
-From d0bfcbbfd8a6e7ee6213112e4078b020e4e1d15d Mon Sep 17 00:00:00 2001
-From: Pawe? Chmielowski <[email protected]>
-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 <[email protected]>
-
----
- 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;
package/ejabberd/0009-disable-mod_avatar.patch deleted +0 -32
deleted file mode 100644
index ab89ba1a29..0000000000
@@ -1,32 +0,0 @@
-From e6eac74e82975e7d87b1f59c50eb007ab04c1392 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <[email protected]>
-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 <[email protected]>
----
- 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
-
package/ejabberd/Config.in +1 -0
index a7542cd12d..53b688b5d9 100644
@@ -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
package/ejabberd/ejabberd.hash +1 -1
index 6fb90a2300..aed269cb8d 100644
@@ -1,2 +1,2 @@
 # Locally computed
-sha256 bd16b33a2f1345e5847fd05b70a5fa992181bac756cd6d5d621de9c18cb76801 ejabberd-17.11.tgz
+sha256 781a68d2deefb4afae563c29a8955063c759c244d308251167d46185f145d4ff ejabberd-18.09.tgz
package/ejabberd/ejabberd.mk +8 -4
index acd52e5b38..26768c7f89 100644
@@ -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
Signature · 1 line
2.17.1
#25 lore raw

PATCH 15/15 ejabberd: Bump to version 18.09

Hello,

Quoted 6 lines · Johan Oudinet

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.

Quoted 7 lines

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.

I don't have a specific issue with that patch, but when doing a build, I realized that some dependencies of ejabberd are built *after* ejabberd itself.

Comparing ejabberd/Config.in selects and ejabberd/ejabberd.mk DEPENDENCIES variable, I found that erlang-jiffy and erlang-p1-oauth2 were selected by ejabberd/Config.in, but not mentioned in EJABBERD_DEPENDENCIES. In my build, they ended up being built after ejabberd, so they are clearly not build dependencies.

The question is: are these runtime dependencies (in which case a # runtime comment in the Config.in file would be nice), or are they stale/useless dependencies ?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#26 lore raw

PATCH 15/15 ejabberd: Bump to version 18.09

Hi Thomas, Christophe, All,

Quoted 10 lines · Thomas Petazzoni

Comparing ejabberd/Config.in selects and ejabberd/ejabberd.mk DEPENDENCIES variable, I found that erlang-jiffy and erlang-p1-oauth2 were selected by ejabberd/Config.in, but not mentioned in EJABBERD_DEPENDENCIES. In my build, they ended up being built after ejabberd, so they are clearly not build dependencies.

The question is: are these runtime dependencies (in which case a # runtime comment in the Config.in file would be nice), or are they stale/useless dependencies ?

Hum, that's an interesting question. I followed mandatory dependencies listed in Ejabberd's rebar.config but I'm not sure if those two dependencies are runtime dependencies or if Ejabberd could run smoothly without them.

I digged into Ejabberd's git repository to try to find out where p1_oauth2 and jiffy are used, but I'd like Christophe's opinion on this before taking any action.

For p1_oauth2, it's hard to say from the git log as the dependency was there before the project moved to git. Still, there are calls to oauth2 functions in src/ejabberd_oauth.erl file, in particular in the oauth_issue_token function that can be called via the command line. So I would assume it is a runtime dependency. Christophe, can you confirm?

For jiffy, it is a JSON parser which is used in several parts of Ejabberd. In mod_bosh, there is a function to deal with the case where it fails to load this component:
start_jiffy(Opts) ->

    case gen_mod:get_opt(json, Opts) of
        false ->
            ok;
        true ->
            case catch ejabberd:start_app(jiffy) of
                ok ->
                    ok;
                Err ->
                    ?WARNING_MSG("Failed to start JSON codec (jiffy): ~p. "
                                 "JSON support will be disabled", [Err])
            end
    end.

but other components seem less tolerant. I think it is a runtime dependency as well. Christophe, do you agree?

Signature · 1 line
Johan

A message that is not in the archive (sent off-list or not yet received): 20181203140919.eep447v4yoykd5dr@localhost

#28 lore raw

PATCH 15/15 ejabberd: Bump to version 18.09

Quoted 7 lines · Christophe Romain

-- Johan Oudinet [2018-12-03 15:00:55 +0100]:

Quoted 3 lines

For p1_oauth2, [...]
I would assume it is a runtime dependency. Christophe, can you confirm?

Quoted 6 lines

Yes, it's runtime dependency

Quoted 2 lines

For jiffy, it is a JSON parser which is used in several parts of Ejabberd. I think it is a runtime dependency as well. Christophe, do you agree?

Yes, it's used by BOSH, ACME and REST features as well

Thanks Christophe. I'll add this information to Ejabberd's Config.in, as suggested by Thomas.

Signature · 1 line
Johan