diff options
author | Vanilla I. Shu <vanilla@FreeBSD.org> | 2021-08-08 09:54:05 +0000 |
---|---|---|
committer | Jesper Schmitz Mouridsen <jsm@FreeBSD.org> | 2021-08-08 10:04:03 +0000 |
commit | 31811bb4ff34dda24e1c367eba5cca46fa577b00 (patch) | |
tree | 54dd78b40e6651600833c1c0e1c7408d6aa34752 | |
parent | 835981dbc56d281ba8cc9ac1433536f3e448491b (diff) | |
download | ports-31811bb4ff34dda24e1c367eba5cca46fa577b00.tar.gz ports-31811bb4ff34dda24e1c367eba5cca46fa577b00.zip |
www/janus: New port
Janus is an open source, general purpose,
WebRTC gateway designed and
developed by Meetecho
PR: 219444
-rw-r--r-- | www/Makefile | 1 | ||||
-rw-r--r-- | www/janus/Makefile | 64 | ||||
-rw-r--r-- | www/janus/distinfo | 3 | ||||
-rw-r--r-- | www/janus/files/janus.in | 28 | ||||
-rw-r--r-- | www/janus/files/patch-configure.ac | 11 | ||||
-rw-r--r-- | www/janus/files/patch-janus.c | 10 | ||||
-rw-r--r-- | www/janus/files/pkg-message.in | 8 | ||||
-rw-r--r-- | www/janus/pkg-descr | 4 | ||||
-rw-r--r-- | www/janus/pkg-plist | 186 |
9 files changed, 315 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile index 8a38ae53fa34..9126f7baa036 100644 --- a/www/Makefile +++ b/www/Makefile @@ -260,6 +260,7 @@ SUBDIR += ilias6 SUBDIR += interchange SUBDIR += itop + SUBDIR += janus SUBDIR += jericho-html SUBDIR += jesred SUBDIR += jetty8 diff --git a/www/janus/Makefile b/www/janus/Makefile new file mode 100644 index 000000000000..91994d748e71 --- /dev/null +++ b/www/janus/Makefile @@ -0,0 +1,64 @@ +PORTNAME= janus +DISTVERSIONPREFIX= v +DISTVERSION= 0.11.3 +CATEGORIES= www + +MAINTAINER= vanilla@FreeBSD.org +COMMENT= WebRTC gateway + +LICENSE= GPLv3 + +BUILD_DEPENDS= gengetopt>0:devel/gengetopt +LIB_DEPENDS= libsrtp2.so:net/libsrtp2 \ + libusrsctp.so:net/libusrsctp \ + libjansson.so:devel/jansson \ + libnice.so:net-im/libnice \ + libmicrohttpd.so:www/libmicrohttpd \ + libwebsockets.so:net/libwebsockets \ + libcurl.so:ftp/curl \ + libopus.so:audio/opus \ + libsofia-sip-ua.so:net/sofia-sip \ + libogg.so:audio/libogg \ + libjansson.so:devel/jansson \ + libnice.so:net-im/libnice \ + libmicrohttpd.so:www/libmicrohttpd \ + libwebsockets.so:net/libwebsockets \ + libconfig.so:devel/libconfig + +USES= libtool pkgconfig autoreconf gmake localbase gnome ssl +USE_GNOME= glib20 +USE_GITHUB= yes +GH_ACCOUNT= meetecho +GH_PROJECT= janus-gateway +USE_RC_SUBR= janus +CONFIGURE_ARGS+= --disable-mqtt \ + --disable-rabbitmq \ + --enable-json-logger \ + --enable-data-channels +INSTALL_TARGET=install-strip +CFLAGS+= -I${OPENSSLINC} -I${LOCALBASE}/include/nice +LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl -L${LOCALBASE} -lnice +GNU_CONFIGURE= yes +USE_LDCONFIG= yes +SUB_FILES= pkg-message + +OPTIONS_SUB= yes +OPTIONS_DEFINE= JAVASCRIPT LUA NANOMSG RABBITMQ POSTPROCESSING +JAVASCRIPT_DESC= JavaScript scripting language support +#MQTT_DESC= MQTT integration +NANOMSG_DESC= Nanomsg integration +RABBITMQ_DESC= RabbitMQ integration +POSTPROCESSING_DESC= Post processing integration +JAVASCRIPT_LIB_DEPENDS= libduktape.so:lang/duktape-lib +NANOMSG_LIB_DEPENDS= libnanomsg.so:net/nanomsg +RABBITMQ_LIB_DEPENDS= librabbitmq.so:net/rabbitmq-c +JAVASCRIPT_CONFIGURE_ENABLE= plugin-duktape +NANOMSG_CONFIGURE_ENABLE= nanomsg +RABBITMQ_CONFIGURE_ENABLE= rabbitmq +LUA_CONFIGURE_ENABLE= plugin-lua +LUA_USES= lua +LUA_CONFIGURE_ENV= LUA_CFLAGS="-I${LUA_INCDIR}" LUA_LIBS="-L${LUA_LIBDIR} -llua-${LUA_VER}" +POSTPROCESSING_CONFIGURE_ENABLE= post-processing +POSTPROCESSING_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg + +.include <bsd.port.mk> diff --git a/www/janus/distinfo b/www/janus/distinfo new file mode 100644 index 000000000000..7bb9f048fb61 --- /dev/null +++ b/www/janus/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1625046487 +SHA256 (meetecho-janus-gateway-v0.11.3_GH0.tar.gz) = bfe4bb0f5c1db7ca1ab7e294b377d604b21e5187a35a64ed93536e2da9f0e9db +SIZE (meetecho-janus-gateway-v0.11.3_GH0.tar.gz) = 7080692 diff --git a/www/janus/files/janus.in b/www/janus/files/janus.in new file mode 100644 index 000000000000..edcb24031455 --- /dev/null +++ b/www/janus/files/janus.in @@ -0,0 +1,28 @@ +#!/bin/sh +# +# $FreeBSD$ +# +# PROVIDE: janus +# REQUIRE: NETWORKING syslogd +# BEFORE: DAEMON +# KEYWORD: shutdown + +# Add the following lines to /etc/rc.conf to enable janus: +# janus_enable="YES" +# janus_flags="<set as needed>" + +. /etc/rc.subr + +name=janus +rcvar=janus_enable + +: ${janus_enable="NO"} +: ${janus_config_dir="%%PREFIX%%/etc/${name}"} +: ${janus_conf="${janus_config_dir}/$name.jcfg"} + +required_files="${janus_conf}" +command="%%PREFIX%%/bin/janus" +command_args="-D -f -o -F ${janus_config_dir} -C ${janus_conf} -b -L /var/log/janus.log" + +load_rc_config $name +run_rc_command "$1" diff --git a/www/janus/files/patch-configure.ac b/www/janus/files/patch-configure.ac new file mode 100644 index 000000000000..cc0df705b38a --- /dev/null +++ b/www/janus/files/patch-configure.ac @@ -0,0 +1,11 @@ +--- configure.ac.orig 2021-06-15 12:25:22 UTC ++++ configure.ac +@@ -363,8 +363,6 @@ freebsd*) + libconfig + nice + jansson >= $jansson_version +- libssl >= $ssl_version +- libcrypto + zlib" + esac + PKG_CHECK_MODULES([JANUS],"$PKGCHECKMODULES") diff --git a/www/janus/files/patch-janus.c b/www/janus/files/patch-janus.c new file mode 100644 index 000000000000..0a67c09d79c8 --- /dev/null +++ b/www/janus/files/patch-janus.c @@ -0,0 +1,10 @@ +--- janus.c.orig 2021-08-02 14:04:13 UTC ++++ janus.c +@@ -4282,6 +4282,7 @@ gint main(int argc, char *argv[]) + if (!event) { + JANUS_LOG(LOG_ERR, "\tCouldn't load logger plugin '%s': %s\n", eventent->d_name, dlerror()); + } else { ++ dlerror(); + create_l *create = (create_l*) dlsym(event, "create"); + const char *dlsym_error = dlerror(); + if (dlsym_error) { diff --git a/www/janus/files/pkg-message.in b/www/janus/files/pkg-message.in new file mode 100644 index 000000000000..be8f7416f80d --- /dev/null +++ b/www/janus/files/pkg-message.in @@ -0,0 +1,8 @@ +[ +{ type: install + message: <<EOM +You must set ws_ip and/or wss_ip in janus.transport.websockets.jcfg +to IPv4 addresses if you need ipv4 for websockets. +EOM +} +] diff --git a/www/janus/pkg-descr b/www/janus/pkg-descr new file mode 100644 index 000000000000..b8e126deab56 --- /dev/null +++ b/www/janus/pkg-descr @@ -0,0 +1,4 @@ +Janus is an open source, general purpose, WebRTC gateway designed and +developed by Meetecho + +WWW: https://github.com/meetecho/janus-gateway diff --git a/www/janus/pkg-plist b/www/janus/pkg-plist new file mode 100644 index 000000000000..3b63bed07b7f --- /dev/null +++ b/www/janus/pkg-plist @@ -0,0 +1,186 @@ +bin/janus +bin/janus-cfgconv +%%POSTPROCESSING%%bin/janus-pp-rec +%%POSTPROCESSING%%bin/mjr2pcap +@sample %%ETCDIR%%/janus.eventhandler.gelfevh.jcfg.sample +%%NANOMSG%%@sample %%ETCDIR%%/janus.eventhandler.nanomsgevh.jcfg.sample +%%RABBITMQ%%@sample %%ETCDIR%%/janus.eventhandler.rabbitmqevh.jcfg.sample +%%JAVASCRIPT%%@sample %%ETCDIR%%/janus.plugin.duktape.jcfg.sample +%%NANOMSG%%@sample %%ETCDIR%%/janus.transport.nanomsg.jcfg.sample +%%RABBITMQ%%@sample %%ETCDIR%%/janus.transport.rabbitmq.jcfg.sample +@sample %%ETCDIR%%/janus.eventhandler.sampleevh.jcfg.sample +@sample %%ETCDIR%%/janus.eventhandler.wsevh.jcfg.sample +@sample %%ETCDIR%%/janus.jcfg.sample +@sample %%ETCDIR%%/janus.logger.jsonlog.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.audiobridge.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.echotest.jcfg.sample +%%LUA%%@sample %%ETCDIR%%/janus.plugin.lua.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.nosip.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.recordplay.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.sip.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.streaming.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.textroom.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.videocall.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.videoroom.jcfg.sample +@sample %%ETCDIR%%/janus.plugin.voicemail.jcfg.sample +@sample %%ETCDIR%%/janus.transport.http.jcfg.sample +@sample %%ETCDIR%%/janus.transport.pfunix.jcfg.sample +@sample %%ETCDIR%%/janus.transport.websockets.jcfg.sample +include/janus/apierror.h +include/janus/config.h +include/janus/debug.h +include/janus/events/eventhandler.h +include/janus/ip-utils.h +include/janus/log.h +include/janus/loggers/logger.h +include/janus/mutex.h +include/janus/plugins/plugin.h +include/janus/record.h +include/janus/refcount.h +include/janus/rtcp.h +include/janus/rtp.h +include/janus/rtpsrtp.h +include/janus/sdp-utils.h +include/janus/text2pcap.h +include/janus/transports/transport.h +include/janus/utils.h +lib/janus/events/libjanus_gelfevh.so +lib/janus/events/libjanus_gelfevh.so.0 +lib/janus/events/libjanus_gelfevh.so.0.0.0 +%%NANOMSG%%lib/janus/events/libjanus_nanomsgevh.so +%%NANOMSG%%lib/janus/events/libjanus_nanomsgevh.so.0 +%%NANOMSG%%lib/janus/events/libjanus_nanomsgevh.so.0.0.0 +%%RABBITMQ%%lib/janus/events/libjanus_rabbitmqevh.so +%%RABBITMQ%%lib/janus/events/libjanus_rabbitmqevh.so.0 +%%RABBITMQ%%lib/janus/events/libjanus_rabbitmqevh.so.0.0.0 +lib/janus/events/libjanus_sampleevh.so +lib/janus/events/libjanus_sampleevh.so.0 +lib/janus/events/libjanus_sampleevh.so.0.0.0 +lib/janus/events/libjanus_wsevh.so +lib/janus/events/libjanus_wsevh.so.0 +lib/janus/events/libjanus_wsevh.so.0.0.0 +lib/janus/loggers/libjanus_jsonlog.so +lib/janus/loggers/libjanus_jsonlog.so.0 +lib/janus/loggers/libjanus_jsonlog.so.0.0.0 +lib/janus/plugins/libjanus_audiobridge.so +lib/janus/plugins/libjanus_audiobridge.so.0 +lib/janus/plugins/libjanus_audiobridge.so.0.0.0 +lib/janus/plugins/libjanus_echotest.so +lib/janus/plugins/libjanus_echotest.so.0 +lib/janus/plugins/libjanus_echotest.so.0.0.0 +%%JAVASCRIPT%%lib/janus/plugins/libjanus_duktape.so +%%JAVASCRIPT%%lib/janus/plugins/libjanus_duktape.so.0 +%%JAVASCRIPT%%lib/janus/plugins/libjanus_duktape.so.0.0.0 +%%LUA%%lib/janus/plugins/libjanus_lua.so +%%LUA%%lib/janus/plugins/libjanus_lua.so.0 +%%LUA%%lib/janus/plugins/libjanus_lua.so.0.0.0 +lib/janus/plugins/libjanus_nosip.so +lib/janus/plugins/libjanus_nosip.so.0 +lib/janus/plugins/libjanus_nosip.so.0.0.0 +lib/janus/plugins/libjanus_recordplay.so +lib/janus/plugins/libjanus_recordplay.so.0 +lib/janus/plugins/libjanus_recordplay.so.0.0.0 +lib/janus/plugins/libjanus_sip.so +lib/janus/plugins/libjanus_sip.so.0 +lib/janus/plugins/libjanus_sip.so.0.0.0 +lib/janus/plugins/libjanus_streaming.so +lib/janus/plugins/libjanus_streaming.so.0 +lib/janus/plugins/libjanus_streaming.so.0.0.0 +lib/janus/plugins/libjanus_textroom.so +lib/janus/plugins/libjanus_textroom.so.0 +lib/janus/plugins/libjanus_textroom.so.0.0.0 +lib/janus/plugins/libjanus_videocall.so +lib/janus/plugins/libjanus_videocall.so.0 +lib/janus/plugins/libjanus_videocall.so.0.0.0 +lib/janus/plugins/libjanus_videoroom.so +lib/janus/plugins/libjanus_videoroom.so.0 +lib/janus/plugins/libjanus_videoroom.so.0.0.0 +lib/janus/plugins/libjanus_voicemail.so +lib/janus/plugins/libjanus_voicemail.so.0 +lib/janus/plugins/libjanus_voicemail.so.0.0.0 +lib/janus/transports/libjanus_http.so +lib/janus/transports/libjanus_http.so.0 +lib/janus/transports/libjanus_http.so.0.0.0 +%%NANOMSG%%lib/janus/transports/libjanus_nanomsg.so +%%NANOMSG%%lib/janus/transports/libjanus_nanomsg.so.0 +%%NANOMSG%%lib/janus/transports/libjanus_nanomsg.so.0.0.0 +lib/janus/transports/libjanus_pfunix.so +lib/janus/transports/libjanus_pfunix.so.0 +lib/janus/transports/libjanus_pfunix.so.0.0.0 +%%RABBITMQ%%lib/janus/transports/libjanus_rabbitmq.so +%%RABBITMQ%%lib/janus/transports/libjanus_rabbitmq.so.0 +%%RABBITMQ%%lib/janus/transports/libjanus_rabbitmq.so.0.0.0 +lib/janus/transports/libjanus_websockets.so +lib/janus/transports/libjanus_websockets.so.0 +lib/janus/transports/libjanus_websockets.so.0.0.0 +man/man1/janus-cfgconv.1.gz +%%POSTPROCESSING%%man/man1/janus-pp-rec.1.gz +man/man1/janus.1.gz +%%POSTPROCESSING%%man/man1/mjr2pcap.1.gz +share/doc/janus-gateway/README.md +%%DATADIR%%/demos/admin.html +%%DATADIR%%/demos/admin.js +%%DATADIR%%/demos/audiobridgetest.html +%%DATADIR%%/demos/audiobridgetest.js +%%DATADIR%%/demos/canvas.html +%%DATADIR%%/demos/canvas.js +%%DATADIR%%/demos/citeus.html +%%DATADIR%%/demos/css/demo.css +%%DATADIR%%/demos/demos.html +%%DATADIR%%/demos/devicetest.html +%%DATADIR%%/demos/devicetest.js +%%DATADIR%%/demos/docs/index.html +%%DATADIR%%/demos/e2etest.html +%%DATADIR%%/demos/e2etest.js +%%DATADIR%%/demos/echotest.html +%%DATADIR%%/demos/echotest.js +%%DATADIR%%/demos/favicon.ico +%%DATADIR%%/demos/footer.html +%%DATADIR%%/demos/index.html +%%DATADIR%%/demos/janus-logo.png +%%DATADIR%%/demos/janus-logo-small.png +%%DATADIR%%/demos/janus.js +%%DATADIR%%/demos/meetecho-logo.png +%%DATADIR%%/demos/multiopus.html +%%DATADIR%%/demos/multiopus.js +%%DATADIR%%/demos/navbar.html +%%DATADIR%%/demos/nosiptest.html +%%DATADIR%%/demos/nosiptest.js +%%DATADIR%%/demos/recordplaytest.html +%%DATADIR%%/demos/recordplaytest.js +%%DATADIR%%/demos/screensharingtest.html +%%DATADIR%%/demos/screensharingtest.js +%%DATADIR%%/demos/siptest.html +%%DATADIR%%/demos/siptest.js +%%DATADIR%%/demos/streamingtest.html +%%DATADIR%%/demos/streamingtest.js +%%DATADIR%%/demos/support.html +%%DATADIR%%/demos/surround/ChID-BLITS-EBU.mp4 +%%DATADIR%%/demos/surround/ChID-BLITS-EBU.txt +%%DATADIR%%/demos/textroomtest.html +%%DATADIR%%/demos/textroomtest.js +%%DATADIR%%/demos/up_arrow.png +%%DATADIR%%/demos/videocalltest.html +%%DATADIR%%/demos/videocalltest.js +%%DATADIR%%/demos/videoroomtest.html +%%DATADIR%%/demos/videoroomtest.js +%%DATADIR%%/demos/voicemailtest.html +%%DATADIR%%/demos/voicemailtest.js +%%DATADIR%%/demos/vp9svctest.html +%%DATADIR%%/demos/vp9svctest.js +%%JAVASCRIPT%%%%DATADIR%%/duktape/echotest.js +%%JAVASCRIPT%%%%DATADIR%%/duktape/janus-sdp.js +%%DATADIR%%/javascript/janus.js +%%LUA%%%%DATADIR%%/lua/echotest.lua +%%LUA%%%%DATADIR%%/lua/janus-logger.lua +%%LUA%%%%DATADIR%%/lua/janus-sdp.lua +%%LUA%%%%DATADIR%%/lua/videoroom.lua +%%DATADIR%%/recordings/1234.nfo +%%DATADIR%%/recordings/rec-sample-audio.mjr +%%DATADIR%%/recordings/rec-sample-video.mjr +%%DATADIR%%/streams/music.mulaw +%%DATADIR%%/streams/radio.alaw +%%DATADIR%%/streams/test_gstreamer.sh +%%DATADIR%%/streams/test_gstreamer_1.sh +@dir %%DATADIR%%/duktape +@dir %%DATADIR%%/lua |