Page MenuHomeFreeBSD

net/rabbitmq: bump to 3.7.8 & OTP20
AbandonedPublic

Authored by dch on Sep 14 2018, 9:02 AM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 16 2024, 3:22 AM
Unknown Object (File)
Dec 20 2023, 4:12 AM
Unknown Object (File)
Nov 25 2023, 8:35 PM
Unknown Object (File)
Nov 24 2023, 11:26 PM
Unknown Object (File)
Nov 22 2023, 10:27 PM
Unknown Object (File)
Nov 22 2023, 10:27 PM
Unknown Object (File)
Nov 22 2023, 10:23 PM
Unknown Object (File)
Nov 22 2023, 10:00 PM
Subscribers
None

Details

Reviewers
jrm
dumbbell
Summary

as discussed on RabbitMQ list it's time to move to a supported
OTP release. Add OTP 20+21 support via knob.

Diff Detail

Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 19765
Build 19320: arc lint + arc unit

Event Timeline

I didn't test it yet but this looks good to me.

What do you think about adding a variable for the version of Erlang and use it everywhere in the Makefile? Something like:

ERLANG_VERSION ?= 19

BUILD_DEPENDS= erlang-runtime${ERLANG_VERSION}>=19.3:lang/erlang-runtime${ERLANG_VERSION}

post-patch:
        @${REINPLACE_CMD} -e 's|/etc/rabbitmq|${PREFIX}/etc/rabbitmq|g ; s|/var/lib|/var/db|g ; s|$${ERL_DIR}erl|${PREFIX}/lib/erlang${ERLANG_VERSION}/bin/erl|g' \

It's not great for the erlang-runtime${ERLANG_VERSION}>=19.3 part, but if both lines are close, we should remember to update both.

  • update to 3.7.8
  • add user knob for OTP versions

I didn't test it yet but this looks good to me.

What do you think about adding a variable for the version of Erlang and use it everywhere in the Makefile? Something like:

ERLANG_VERSION ?= 19

<3 this, it's better than what I did for couchdb2. I took the options flag from couchdb2
port back to this, I haven't *run* net/rabbitmq 3.7.8 with OTP21 yet but the port itself
builds. YMMV.

dch retitled this revision from net/rabbitmq: bump dependencies to OTP20 to net/rabbitmq: bump to 3.7.8 & OTP20.Sep 23 2018, 7:15 AM
dch edited the summary of this revision. (Show Details)

poudriere says "no":

 DEPEND goldrush.d
/bin/sh: erl: not found
gmake[4]: *** [/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8/deps/rabbit_common/erlang.mk:5146: goldrush.d] Error 127
gmake[4]: Leaving directory '/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8/deps/goldrush'
gmake[3]: *** [/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8/deps/rabbit_common/erlang.mk:4322: deps] Error 2
gmake[3]: Leaving directory '/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8/deps/lager'
gmake[2]: *** [erlang.mk:4322: deps] Error 2
gmake[2]: Leaving directory '/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8/deps/rabbit_common'
gmake[1]: *** [erlang.mk:4322: deps] Error 2
gmake[1]: Leaving directory '/tmp/usr/ports/net/rabbitmq/work/rabbitmq-server-3.7.8'
*** Error code 1
net/rabbitmq/Makefile
7

USE_GITHUB?

16

At least one leading TAB is missing here.

41–42

Your defining BUILD_DEPENDS and RUN_DEPENDS again here and hardcoding the erlang version.

45–46

Separate block placed above.

net/rabbitmq/Makefile
41–42

Cringe.... Your -> You're

dch marked 6 inline comments as done.
  • update to 3.7.8
  • add user knob for OTP versions
  • appease jrm and portlint
  • fail getting USE_GITHUB to work
dumbbell added inline comments.
net/rabbitmq/Makefile
7

The port is using files attached to a GitHub release, not a Git clone. Furthermore, the downloaded source archive is more than what is available in this repository. Therefore, no, it can't use USE_GITHUB.

dumbbell added inline comments.
net/rabbitmq/Makefile
71

This is not enough: RabbitMQ calls cuttlefish at runtime and it is an escript: it will therefore defaults to escript(1) available in $PATH. So either cuttlefish's shebang line is patched to point to the correct escript(1), or rabbitmq-env and rabbitmq-server are patched to modify $PATH.

Also, instead of using sed(1) to replace $ERL_DIR, it's probably easier to set the variable once in rabbitmq-defaults. The current value is empty (ERL_DIR=).

This revision now requires changes to proceed.Sep 24 2018, 11:18 AM
net/rabbitmq/Makefile
16

So what are the rules for tabs? currently I only put a tab in when the varname length is < 16.

41–42

<shivers>

I will revisit the licenses once the rest is ironed out, RMQ has a lot more than just MPL code.