My #FreeBSD #ports builder is testing a new version of LavinMQ, an AMQP-compliant message broker.
To build it we have a comical chain of history and languages:
- needs crystal which …
- needs ruby
- needs python
- needs rust
- needs perl
- needs docbook
- needs expat and libxml
- needs cmake
- needs lua53 and lua54
- needs autoconf and automake
- needs gmake and libtool
- needs git
- needs pkgconf
- needs meson
- needs ninja
- needs m4
- needs curl
- needs llvm14 and llvm20
- needs yaml
I started off with a nice formatted tree but it soon devolved into a complex graph of inter-twined dependencies... it's a wonder we can build software at all, when so many of these requirements can change at any time.
easy.