commit: d222e99ed3c33186e17466b1df79dcba5a336df9 Author: Matthew Smith <matthew <AT> gentoo <DOT> org> AuthorDate: Fri Nov 17 16:47:35 2023 +0000 Commit: Matthew Smith <matthew <AT> gentoo <DOT> org> CommitDate: Fri Nov 17 16:50:18 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d222e99e
net-misc/rabbitmq-server: add 3.12.9 - Add Python 3.12 to PYTHON_COMPAT. - Remove simplejson dependency. - Update Erlang and Elixir dep versions. - Add REPLACING_VERSIONS warning when updating from 3.11. Closes: https://bugs.gentoo.org/906650 Signed-off-by: Matthew Smith <matthew <AT> gentoo.org> net-misc/rabbitmq-server/Manifest | 1 + .../rabbitmq-server/rabbitmq-server-3.12.9.ebuild | 91 ++++++++++++++++++++++ 2 files changed, 92 insertions(+) diff --git a/net-misc/rabbitmq-server/Manifest b/net-misc/rabbitmq-server/Manifest index 4672a39fe9b6..52b20c665f6f 100644 --- a/net-misc/rabbitmq-server/Manifest +++ b/net-misc/rabbitmq-server/Manifest @@ -1 +1,2 @@ DIST rabbitmq-server-3.11.2.tar.xz 3752644 BLAKE2B bc98808579cbaa12371fc95d137fd18a0d784a859471d4dac6c328e819bb7ba5cb0256509a678788452f6dbeaa6fc48b4dbe39b24bd7cf0b1698fb6e4f67cb03 SHA512 ceec07fb9dfe8ba76850aa94543396a4e878aca13b9e3e303e86bb44bbbb1cea863148a1480b83517bfd2bdc66b814c3177ad2ed595604f5710f8f98e8dcc439 +DIST rabbitmq-server-3.12.9.tar.xz 4437392 BLAKE2B 19c1e88e79c29af0c06d732d25098ee7b5575e8f269ba08e3247a65ba206c8cdc819767572071063dcbd8816756366d0a3f059d8e060ffe47fb221e1546b4c23 SHA512 c6015ee9593336104fc043ed20d99a476e7b36802ae36798f23c2caf91a01a71913963fdbe6de249f234cb3ba82379e5c5b2976e07d098c287ee72e3f238f2eb diff --git a/net-misc/rabbitmq-server/rabbitmq-server-3.12.9.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-3.12.9.ebuild new file mode 100644 index 000000000000..1ba1abad96c0 --- /dev/null +++ b/net-misc/rabbitmq-server/rabbitmq-server-3.12.9.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit python-any-r1 systemd + +DESCRIPTION="RabbitMQ is a high-performance AMQP-compliant message broker written in Erlang" +HOMEPAGE="https://www.rabbitmq.com/" +SRC_URI="https://github.com/rabbitmq/rabbitmq-server/releases/download/v${PV}/${P}.tar.xz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +RESTRICT="test" + +# See https://www.rabbitmq.com/which-erlang.html for Erlang version +# See https://github.com/rabbitmq/rabbitmq-server/tree/main/deps/rabbitmq_cli#requirements for Elixir version +RDEPEND=" + acct-group/rabbitmq + acct-user/rabbitmq + >=dev-lang/erlang-25.0[ssl] <dev-lang/erlang-26.2 +" +DEPEND=" + ${RDEPEND} + app-arch/zip + app-arch/unzip + app-text/docbook-xml-dtd:4.5 + app-text/xmlto + >=dev-lang/elixir-1.13.4 <dev-lang/elixir-1.16.0 + dev-libs/libxslt + ${PYTHON_DEPS} +" + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_compile() { + emake all docs dist +} + +src_install() { + # erlang module + local targetdir="/usr/$(get_libdir)/erlang/lib/rabbitmq_server-${PV}" + + einfo "Setting correct RABBITMQ_HOME in scripts" + sed -e "s:^RABBITMQ_HOME=.*:RABBITMQ_HOME=\"${targetdir}\":g" \ + -i deps/rabbit/scripts/rabbitmq-env || die + + einfo "Installing Erlang modules to ${targetdir}" + insinto "${targetdir}" + doins -r deps/rabbit/ebin deps/rabbit/include deps/rabbit/priv escript plugins + + einfo "Installing server scripts to /usr/sbin" + rm -v deps/rabbit/scripts/*.bat || die + exeinto /usr/libexec/rabbitmq + for script in deps/rabbit/scripts/*; do + doexe ${script} + newsbin "${FILESDIR}"/rabbitmq-script-wrapper $(basename $script) + done + + # install the init script + newinitd "${FILESDIR}"/rabbitmq-server.init-r4 rabbitmq + systemd_dounit "${FILESDIR}/rabbitmq.service" + + # install documentation + dodoc deps/rabbit/docs/*.example + dodoc deps/rabbit/README.md + doman deps/rabbit/docs/*.5 + doman deps/rabbit/docs/*.8 + + # create the directory where our log file will go. + diropts -m 0770 -o rabbitmq -g rabbitmq + keepdir /var/log/rabbitmq /etc/rabbitmq + + # create the mnesia directory + diropts -m 0770 -o rabbitmq -g rabbitmq + keepdir /var/lib/rabbitmq/mnesia +} + +pkg_preinst() { + if [[ -n ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 3.12; then + elog "Upgrading to RabbitMQ 3.12 requires all feature flags" + elog "from 3.11 to be enabled. If any feature flags are not" + elog "enabled, the node will refuse to start." + fi +}
