Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 13 additions & 8 deletions cross/ejabberd/Makefile
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
PKG_NAME = ejabberd
PKG_VERS = 21.07
PKG_EXT = tgz
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://static.process-one.net/ejabberd/downloads/$(PKG_VERS)
PKG_VERS = 23.04
PKG_EXT = tar.gz
PKG_DIST_NAME = $(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/processone/ejabberd/archive
PKG_DIST_FILE = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

BUILD_DEPENDS = native/erlang
DEPENDS = cross/ncursesw cross/erlang cross/libexpat cross/zlib cross/openssl cross/libyaml
DEPENDS = cross/ncursesw cross/erlang cross/libexpat cross/zlib cross/openssl3 cross/libyaml

# PPC archs except qoriq have compiler errors with 64 bit values
UNSUPPORTED_ARCHS = $(OLD_PPC_ARCHS)
Expand All @@ -15,13 +16,14 @@ HOMEPAGE = https://www.ejabberd.im
COMMENT = Robust, Scalable and Extensible Realtime Platform XMPP Server + MQTT Broker + SIP Service.
LICENSE = GPLv2

NATIVE_ERLANG_ROOT_DIR = $(realpath $(WORK_DIR)/../../../native/erlang/work-native/install/usr/local)
NATIVE_ERLANG_ROOT_DIR = $(abspath $(WORK_DIR)/../../../native/erlang/work-native/install/usr/local)
NATIVE_ERLANG_BIN = $(NATIVE_ERLANG_ROOT_DIR)/bin

GNU_CONFIGURE = 1
# force native erlang root dir
CONFIGURE_ARGS = ac_cv_erlang_root_dir=$(NATIVE_ERLANG_ROOT_DIR)
CONFIGURE_ARGS += --enable-mysql

# for 'rebar configure-deps' + 'rebar compile' to find cross compiled libei.a and liberl_interface.a
# remarks: arguments for rebar are collected in 'vars.config'
ADDITIONAL_LDFLAGS = -L$(STAGING_INSTALL_PREFIX)/lib/erlang/usr/lib
Expand All @@ -37,11 +39,14 @@ ENV += PATH=$(NATIVE_ERLANG_BIN):$$PATH
include ../../mk/spksrc.cross-cc.mk

.PHONY: ejabberd_pre_configure
# fix cross compile of dependent packages
# patch rebar.config.script for 'rebar configure-deps' to add --host and --build
# related to: https://github.com/processone/ejabberd/issues/139
ejabberd_pre_configure:
sed -e "s#\" ./configure \"#\" ./configure $(TC_CONFIGURE_ARGS)\"#g" -i $(WORK_DIR)/$(PKG_DIR)/rebar.config.script
@$(MSG) Patch to fix cross compile of rebar package
@$(RUN) ; sed -e "s#\" ./configure \"#\" ./configure $(TC_CONFIGURE_ARGS)\"#g" -i ./rebar.config.script
@$(MSG) Run autogen and avoid to take version from git tag
@$(RUN) ; sed 's?git describe --tags 2>/dev/null || ??' -i ./configure.ac
@$(RUN) ; ./autogen.sh

.PHONY: ejabberd_post_install
# patch the generated ejabberdctl script
Expand Down
1,527 changes: 760 additions & 767 deletions cross/ejabberd/PLIST

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions cross/ejabberd/digests
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ejabberd-21.07.tgz SHA1 9d78b5bf034ce6a704d0fb83b1721fa5dfbd20bc
ejabberd-21.07.tgz SHA256 0e90cfd6c03191ca8aef344b9d543a038e272770be14c2288d83cc4d34825868
ejabberd-21.07.tgz MD5 e37000934aea83e3465a7bbbef903193
ejabberd-23.04.tar.gz SHA1 ef9e56a69d4158bdf5e642675b19a6219320ecfc
ejabberd-23.04.tar.gz SHA256 6ff1d41a1ff6261a0c846193647d8ec143e82142859bf1cfdc62299022ceb2ad
ejabberd-23.04.tar.gz MD5 2dd1a586f7ed8e38d19966bd19585552
12 changes: 6 additions & 6 deletions cross/ejabberd/patches/001-replace-etc_ejabberd_by_var.patch
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
--- Makefile.in.orig 2020-12-15 14:40:16.000000000 +0000
+++ Makefile.in 2020-12-26 13:46:43.686744701 +0000
@@ -8,8 +8,8 @@
--- Makefile.in.orig 2023-04-18 09:39:33.000000000 +0000
+++ Makefile.in 2023-08-04 08:54:24.628004111 +0000
@@ -9,8 +9,8 @@

DESTDIR =

-# /etc/ejabberd/
-ETCDIR = $(DESTDIR)@sysconfdir@/ejabberd
-ETCDIR = @sysconfdir@/ejabberd
+# /etc/ejabberd/ => /var/
+ETCDIR = $(DESTDIR)@prefix@/var
+ETCDIR = @localstatedir@

# /bin/
BINDIR = $(DESTDIR)@bindir@
BINDIR = @bindir@
4 changes: 2 additions & 2 deletions cross/erlang/Makefile
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
PKG_NAME = erlang
PKG_VERS = 24.3.4.13
PKG_VERS = 25.3.2.5
PKG_EXT = tar.gz
PKG_DIST_NAME = OTP-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/erlang/otp/archive
PKG_DIST_FILE = $(PKG_NAME)-OTP-$(PKG_VERS).$(PKG_EXT)
PKG_DIR = otp-OTP-$(PKG_VERS)

BUILD_DEPENDS = native/erlang
DEPENDS = cross/ncursesw cross/openssl
DEPENDS = cross/ncursesw cross/openssl3

HOMEPAGE = https://www.erlang.org
COMMENT = Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability.
Expand Down
42 changes: 21 additions & 21 deletions cross/erlang/PLIST
Original file line number Diff line number Diff line change
Expand Up @@ -25,25 +25,25 @@ rsc:lib/erlang/bin/start_erl
rsc:lib/erlang/bin/start_sasl.boot
bin:lib/erlang/bin/to_erl
bin:lib/erlang/bin/typer
bin:lib/erlang/erts-12.3.2.13/bin/beam.smp
bin:lib/erlang/erts-12.3.2.13/bin/ct_run
bin:lib/erlang/erts-12.3.2.13/bin/dialyzer
bin:lib/erlang/erts-12.3.2.13/bin/dyn_erl
bin:lib/erlang/erts-12.3.2.13/bin/epmd
rsc:lib/erlang/erts-12.3.2.13/bin/erl
rsc:lib/erlang/erts-12.3.2.13/bin/erl.src
bin:lib/erlang/erts-12.3.2.13/bin/erl_call
bin:lib/erlang/erts-12.3.2.13/bin/erl_child_setup
bin:lib/erlang/erts-12.3.2.13/bin/erlc
bin:lib/erlang/erts-12.3.2.13/bin/erlexec
bin:lib/erlang/erts-12.3.2.13/bin/escript
bin:lib/erlang/erts-12.3.2.13/bin/heart
bin:lib/erlang/erts-12.3.2.13/bin/inet_gethost
bin:lib/erlang/erts-12.3.2.13/bin/run_erl
rsc:lib/erlang/erts-12.3.2.13/bin/start
rsc:lib/erlang/erts-12.3.2.13/bin/start.src
rsc:lib/erlang/erts-12.3.2.13/bin/start_erl.src
bin:lib/erlang/erts-12.3.2.13/bin/to_erl
bin:lib/erlang/erts-12.3.2.13/bin/typer
bin:lib/erlang/erts-12.3.2.13/bin/yielding_c_fun
bin:lib/erlang/erts-13.2.2.2/bin/beam.smp
bin:lib/erlang/erts-13.2.2.2/bin/ct_run
bin:lib/erlang/erts-13.2.2.2/bin/dialyzer
bin:lib/erlang/erts-13.2.2.2/bin/dyn_erl
bin:lib/erlang/erts-13.2.2.2/bin/epmd
rsc:lib/erlang/erts-13.2.2.2/bin/erl
rsc:lib/erlang/erts-13.2.2.2/bin/erl.src
bin:lib/erlang/erts-13.2.2.2/bin/erl_call
bin:lib/erlang/erts-13.2.2.2/bin/erl_child_setup
bin:lib/erlang/erts-13.2.2.2/bin/erlc
bin:lib/erlang/erts-13.2.2.2/bin/erlexec
bin:lib/erlang/erts-13.2.2.2/bin/escript
bin:lib/erlang/erts-13.2.2.2/bin/heart
bin:lib/erlang/erts-13.2.2.2/bin/inet_gethost
bin:lib/erlang/erts-13.2.2.2/bin/run_erl
rsc:lib/erlang/erts-13.2.2.2/bin/start
rsc:lib/erlang/erts-13.2.2.2/bin/start.src
rsc:lib/erlang/erts-13.2.2.2/bin/start_erl.src
bin:lib/erlang/erts-13.2.2.2/bin/to_erl
bin:lib/erlang/erts-13.2.2.2/bin/typer
bin:lib/erlang/erts-13.2.2.2/bin/yielding_c_fun
rsc:lib/erlang/lib/
6 changes: 3 additions & 3 deletions cross/erlang/digests
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
erlang-OTP-24.3.4.13.tar.gz SHA1 317bf729e86538300a6b530933dce63c8a15c0b5
erlang-OTP-24.3.4.13.tar.gz SHA256 c5c26cf77d6336ef85d3ba7b99b68723847c10f4928f4cbed8ef2c664ca96255
erlang-OTP-24.3.4.13.tar.gz MD5 4400a009bbc21afc5995ce664520d45f
erlang-OTP-25.3.2.5.tar.gz SHA1 3ad53d0024ff27bc208c1cfd8af1a77445cf1f5d
erlang-OTP-25.3.2.5.tar.gz SHA256 16f3b64498f024f7f7ad9bd65786effdc9a2f857a1ed33392e67728302772a03
erlang-OTP-25.3.2.5.tar.gz MD5 8518490a8249079707bd10f2219ab5ee
19 changes: 18 additions & 1 deletion cross/rabbitmq/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
PKG_NAME = rabbitmq
PKG_VERS = 3.10.24
PKG_VERS = 3.11.20
PKG_EXT = tar.xz
PKG_DIST_NAME = $(PKG_NAME)-server-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/rabbitmq/rabbitmq-server/releases/download/v$(PKG_VERS)
Expand All @@ -22,4 +22,21 @@ ENV += PATH=$$PATH:$(ERLANG_BIN_DIR):$(ELIXIR_BIN_DIR)
CONFIGURE_TARGET = nop
INSTALL_MAKE_OPTIONS = install DESTDIR=$(INSTALL_DIR) PREFIX=$(INSTALL_PREFIX) RMQ_ROOTDIR=$(INSTALL_PREFIX)

# we need a git tag that matches the rabbitmq version
# to prevent to use an unrelated tag of the spksrc repo (at time of writing this is "mono-5.20.1.34-17dsm7")
# as there are sub projects that take the version from the git repositry with "git describe --tag"
PRE_CONFIGURE_TARGET = rabbitmq_pre_configure
POST_INSTALL_TARGET = rabbitmq_post_install

include ../../mk/spksrc.cross-cc.mk

.PHONY rabbitmq_pre_configure:
rabbitmq_pre_configure:
@$(MSG) "Temporary create a version tag v$(PKG_VERS)"
@git tag -f v$(PKG_VERS)

.PHONY rabbitmq_post_install:
rabbitmq_post_install:
@$(MSG) "Remove the temporary version tag v$(PKG_VERS)"
@git tag -d v$(PKG_VERS)

28 changes: 14 additions & 14 deletions cross/rabbitmq/PLIST
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
rsc:lib/rabbitmq_server-3.10.24/INSTALL
rsc:lib/rabbitmq_server-3.10.24/LICENSE*
rsc:lib/rabbitmq_server-3.10.24/escript/
rsc:lib/rabbitmq_server-3.10.24/plugins/
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-defaults
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-diagnostics
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-env
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-plugins
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-queues
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-server
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-streams
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-tanzu
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmq-upgrade
rsc:lib/rabbitmq_server-3.10.24/sbin/rabbitmqctl
rsc:lib/rabbitmq_server-3.11.20/INSTALL
rsc:lib/rabbitmq_server-3.11.20/LICENSE*
rsc:lib/rabbitmq_server-3.11.20/escript/
rsc:lib/rabbitmq_server-3.11.20/plugins/
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-defaults
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-diagnostics
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-env
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-plugins
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-queues
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-server
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-streams
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-tanzu
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmq-upgrade
rsc:lib/rabbitmq_server-3.11.20/sbin/rabbitmqctl
6 changes: 3 additions & 3 deletions cross/rabbitmq/digests
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
rabbitmq-server-3.10.24.tar.xz SHA1 2b283ef27bb3cf347995828b3ffe983563ff4e43
rabbitmq-server-3.10.24.tar.xz SHA256 036ebf9f42e25fd2fba9458dc18b3ce39083caead9890754eef56e0e4c3179ad
rabbitmq-server-3.10.24.tar.xz MD5 9be567a20b0f437d5d2ee14347fd02dd
rabbitmq-server-3.11.20.tar.xz SHA1 dfc7c01c07bde1730a6d8414874e053ede642c36
rabbitmq-server-3.11.20.tar.xz SHA256 ce8646f43bbba5a6257c902f91f104bbc3c41456a150cd3f658b238891aa6ef6
rabbitmq-server-3.11.20.tar.xz MD5 cabaff38ed63fa72f3a3e85c653c072b
2 changes: 1 addition & 1 deletion native/erlang/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
PKG_NAME = erlang
PKG_VERS = 24.3
PKG_VERS = 25.3
PKG_EXT = tar.gz
PKG_DIST_NAME = OTP-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/erlang/otp/archive
Expand Down
6 changes: 3 additions & 3 deletions native/erlang/digests
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
erlang-OTP-24.3.tar.gz SHA1 a8cee583409e4b6648208c8b8b6c0cb8693b6ff0
erlang-OTP-24.3.tar.gz SHA256 82e821102a083073e7e088961bcd98b9f5fc4608b05702d8c36a9c7d917e8d71
erlang-OTP-24.3.tar.gz MD5 747d76df2cc844f55ae47c4fa98c06f3
erlang-OTP-25.3.tar.gz SHA1 0922892c4a83a5c1b7bd31c6e4abc1bbcaffffc5
erlang-OTP-25.3.tar.gz SHA256 f4fc2c5e1da56eb659003015ab80c42e50cef1129cca8c14457a522d1793498d
erlang-OTP-25.3.tar.gz MD5 31a0ab7f49316bb16e849566fff4ee4a
7 changes: 4 additions & 3 deletions spk/ejabberd/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
SPK_NAME = ejabberd
SPK_VERS = 21.07
SPK_REV = 2
SPK_VERS = 23.04
SPK_REV = 3
SPK_ICON = src/ejabberd.png
DSM_UI_DIR = app

Expand All @@ -13,6 +13,7 @@ DESCRIPTION = Robust, Scalable and Extensible Realtime Platform XMPP Server + MQ
ADMIN_URL = /admin/
ADMIN_PORT = 5280
DISPLAY_NAME = ejabberd
CHANGELOG = "Update ejabberd to v23.04"

HOMEPAGE = https://www.ejabberd.im
LICENSE = GPLv2
Expand All @@ -26,7 +27,7 @@ SERVICE_SETUP = src/service-setup.sh
# as SERVICE_COMMAND is not a single command
SSS_SCRIPT = src/service-start-stop.sh

FWPORTS = src/${SPK_NAME}.sc
FWPORTS = src/ejabberd.sc

SPK_COMMANDS = bin/ejabberdctl

Expand Down
6 changes: 3 additions & 3 deletions spk/ejabberd/src/ejabberd.sc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[ejabberd]
title="ejabberd"
desc="ejabberd"
[ejabberd_webui]
title="HTTP(S)"
desc="ejabberd web UI"
port_forward="yes"
dst.ports="5280/tcp"
17 changes: 17 additions & 0 deletions spk/ejabberd/src/service-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,23 @@ EJABBERD_CTL="${SYNOPKG_PKGDEST}/bin/ejabberdctl"
# HOME to place the erlang cookie into
export HOME=${SYNOPKG_PKGDEST}

service_preinst ()
{
if [ "${SYNOPKG_PKG_STATUS}" == "UPGRADE" ]; then
if [ "$SYNOPKG_DSM_VERSION_MAJOR" -lt 7 ]; then
# provide a copy of the new config files
# copy to TMP_DIR that will be restored into var, to
# prevent final overwriting by previous versions of *.new files
for config_file in ejabberdctl.cfg ejabberd.yml inetrc; do
if [ -f ${SYNOPKG_PKGINST_TEMP_DIR}/var/${config_file} ]; then
echo "install new config file as: ${config_file}.new"
$CP ${SYNOPKG_PKGINST_TEMP_DIR}/var/${config_file} ${TMP_DIR}/${config_file}.new
fi
done
fi
fi
}

service_postinst ()
{
if [ "${SYNOPKG_PKG_STATUS}" == "INSTALL" ]; then
Expand Down
6 changes: 3 additions & 3 deletions spk/erlang/Makefile
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
SPK_NAME = erlang
SPK_VERS = 24.3.4.13
SPK_REV = 4
SPK_VERS = 25.3.2.5
SPK_REV = 5
SPK_ICON = src/erlang.png

DEPENDS = cross/erlang

MAINTAINER = DigitalBox98
DESCRIPTION = Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.
CHANGELOG = "1. Update Erlang to v24.3.4.13.<br/>2. Update OpenSSL to v1.1.1u."
CHANGELOG = "1. Update Erlang to v25.3.2.5<br/>2. Update OpenSSL to v3.1.2."
STARTABLE = no
DISPLAY_NAME = Erlang

Expand Down
11 changes: 5 additions & 6 deletions spk/rabbitmq/Makefile
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
SPK_NAME = rabbitmq
SPK_VERS = 3.10.24
SPK_REV = 8
SPK_VERS = 3.11.20
SPK_REV = 9
SPK_ICON = src/rabbitmq.png

DEPENDS = cross/rabbitmq

SPK_DEPENDS = "erlang>=24.3.4:erlang<25.4"
SPK_DEPENDS = "erlang>=25:erlang<25.4"

MAINTAINER = DigitalBox98
DESCRIPTION = RabbitMQ is one of the most popular open source message brokers. From T-Mobile to Runtastic, RabbitMQ is used worldwide at small startups and large enterprises. RabbitMQ is lightweight and easy to deploy on premises and in the cloud. It supports multiple messaging protocols. RabbitMQ can be deployed in distributed and federated configurations to meet high-scale, high-availability requirements.
CHANGELOG = "Update RabbitMQ to v3.10.24.<br/><br/>REMARKS: This is an intermediate version that depends on Erlang 24.3.4 and allows update to Erlang 25."
CHANGELOG = "1. Update RabbitMQ to v3.11.20.<br/>2. Update OpenSSL to v3.1.2."

DISPLAY_NAME = RabbitMQ

Expand All @@ -31,9 +31,8 @@ include ../../mk/spksrc.spk.mk

.PHONY: rabbitmq_extra_install
rabbitmq_extra_install:
# Create directories
@$(MSG) Install RabbitMQ configuration files
install -m 755 -d ${STAGING_DIR}/etc/rabbitmq ${STAGING_DIR}/var
# Install RabbitMQ configurations
install -m 644 src/etc/rabbitmq-env.conf ${STAGING_DIR}/etc/rabbitmq/rabbitmq-env.conf
install -m 644 src/rabbitmq.conf ${STAGING_DIR}/var/rabbitmq.conf
install -m 644 src/enabled_plugins ${STAGING_DIR}/var/enabled_plugins