diff options
Diffstat (limited to 'net/lavinmq/Makefile')
-rw-r--r-- | net/lavinmq/Makefile | 71 |
1 files changed, 63 insertions, 8 deletions
diff --git a/net/lavinmq/Makefile b/net/lavinmq/Makefile index 86d209dccf0c..d27d57820c3c 100644 --- a/net/lavinmq/Makefile +++ b/net/lavinmq/Makefile @@ -1,8 +1,43 @@ PORTNAME= lavinmq DISTVERSIONPREFIX= v -DISTVERSION= 1.2.14 +DISTVERSION= 2.3.0 CATEGORIES= net +# JavaScripts +MASTER_SITES+= https://github.com/chartjs/Chart.js/releases/download/v4.0.1/:chartjs \ + https://github.com/cloudamqp/amqp-client.js/releases/download/v3.1.1/:amqpclient \ + https://moment.github.io/luxon/es6/:luxon \ + https://cdn.jsdelivr.net/npm/chartjs-adapter-luxon@1.3.1/dist/:chartjsadapter \ + https://unpkg.com/@stoplight/elements@8.2.0/:elements \ + https://raw.githubusercontent.com/eclipse-paho/paho.mqtt.javascript/master/src/:paho + +DISTFILES+= chart.js-4.0.1.tgz:chartjs \ + amqp-websocket-client.mjs:amqpclient \ + amqp-websocket-client.mjs.map:amqpclient \ + luxon.js:luxon \ + chartjs-adapter-luxon.esm.js:chartjsadapter \ + web-components.min.js:elements \ + styles.min.css:elements \ + paho-mqtt.js:paho + +EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} \ + 84codes-lz4.cr-${_LZ4}_GH0.tar.gz \ + 84codes-systemd.cr-v2.0.0_GH0.tar.gz \ + cloudamqp-amq-protocol.cr-v1.1.15_GH0.tar.gz \ + cloudamqp-amqp-client.cr-v1.3.1_GH0.tar.gz \ + 84codes-mqtt-protocol.cr-${_MQTT}_GH0.tar.gz \ + chart.js-${_CHARTJS}.tgz + +# Crystal library versions +_LZ4= 96d714f7593c66ca7425872fd26c7b1286806d3d +_MQTT= d01a1210ed7adfed9aa5cd055f1788a45d9c4d52 + +# JavaScript library versions +_CHARTJS= 4.0.1 +_ELEMENTS= 8.2.0 +_AMQP_CLIENT= 3.1.1 +_CHARTJS_ADAPTER= 1.3.1 + MAINTAINER= dch@FreeBSD.org COMMENT= Next-generation AMQP 0.9.1 based message broker WWW= https://www.lavinmq.com/ @@ -16,13 +51,11 @@ BUILD_DEPENDS= crystal:lang/crystal \ USES= pkgconfig ssl:build USE_GITHUB= yes GH_ACCOUNT= cloudamqp -GH_TUPLE= \ - 84codes:lz4.cr:6cc0d0096207821222317ee02ea23d5296ad4023:a/deps/lz4.cr \ +GH_TUPLE= 84codes:lz4.cr:${_LZ4}:a/deps/lz4.cr \ 84codes:systemd.cr:v2.0.0:systemd/deps/systemd.cr \ - cloudamqp:amq-protocol.cr:v1.1.14:proto/deps/amq-protocol.cr \ - cloudamqp:amqp-client.cr:v1.2.3:client/deps/amqp-client.cr \ - luislavena:radix:v0.4.1:radix/deps/radix \ - tbrand:router.cr:v0.2.8:router/deps/router.cr + cloudamqp:amq-protocol.cr:v1.1.15:proto/deps/amq-protocol.cr \ + cloudamqp:amqp-client.cr:v1.3.1:client/deps/amqp-client.cr \ + 84codes:mqtt-protocol.cr:${_MQTT}:mqtt/deps/mqtt-protocol.cr USE_RC_SUBR= lavinmq @@ -39,7 +72,7 @@ SHARDS_ENV= --time --verbose --production --release --no-color --stats \ .include <bsd.port.options.mk> .if ${SSL_DEFAULT:Mopenssl} || ${SSL_DEFAULT:Mopenssl3*} -BROKEN= fails to compile: undefined symbol: EVP_MD_size +BROKEN= fails to compile: undefined symbol: EVP_MD_size .endif post-extract: @@ -58,6 +91,28 @@ post-extract: -e 's,/tmp/lavinmq-http.sock,/var/run/lavinmq/http.sock,' \ -e 's,/tmp/lavinmq.sock,/var/run/lavinmq/amqp.sock,' \ ${WRKSRC}/extras/lavinmq.ini +# setup javaScript directories + ${MKDIR} ${WRKSRC}/static/js/lib \ + ${WRKSRC}/static/js/lib/chunks +# extract Chart.js files from tarball + ${TAR} -xOf ${DISTDIR}/chart.js-${_CHARTJS}.tgz package/dist/chart.js \ + > ${WRKSRC}/static/js/lib/chart.js + ${TAR} -xOf ${DISTDIR}/chart.js-${_CHARTJS}.tgz package/dist/chunks/helpers.segment.js \ + > ${WRKSRC}/static/js/lib/chunks/helpers.segment.js +# copy AMQP WebSocket client files + ${CP} ${DISTDIR}/amqp-websocket-client.mjs ${WRKSRC}/static/js/lib/ + ${CP} ${DISTDIR}/amqp-websocket-client.mjs.map ${WRKSRC}/static/js/lib/ +# copy luxon and Chart.js adapter + ${CP} ${DISTDIR}/luxon.js ${WRKSRC}/static/js/lib/ + ${CP} ${DISTDIR}/chartjs-adapter-luxon.esm.js ${WRKSRC}/static/js/lib/ + ${SED} -i '' \ + -e "s|\(import { _adapters } from\).*|\1 './chart.js'|; s|\(import { DateTime } from\).*|\1 './luxon.js'|" \ + ${WRKSRC}/static/js/lib/chartjs-adapter-luxon.esm.js +# copy stoplight Elements files + ${CP} ${DISTDIR}/web-components.min.js ${WRKSRC}/static/js/lib/elements-${_ELEMENTS}.js + ${CP} ${DISTDIR}/styles.min.css ${WRKSRC}/static/js/lib/elements-${_ELEMENTS}.css +# copy paho MQTT + ${CP} ${DISTDIR}/paho-mqtt.js ${WRKSRC}/static/js/lib/ do-build: ${MKDIR} ${WRKDIR}/man1 |