aboutsummaryrefslogtreecommitdiff
path: root/multimedia/nymphrpc
diff options
context:
space:
mode:
authorAdriaan de Groot <adridg@FreeBSD.org>2022-02-05 21:06:20 +0000
committerAdriaan de Groot <adridg@FreeBSD.org>2022-02-14 22:18:18 +0000
commita49c9a49de9c9b180f3da58f7edce28abaeb1ea9 (patch)
tree3bc00ff3ef7f47b89f905ccac3391c4c7092dc76 /multimedia/nymphrpc
parente1f7bf96dea660c9f13dab5c623c7666c68ac15a (diff)
downloadports-a49c9a49de9c9b180f3da58f7edce28abaeb1ea9.tar.gz
ports-a49c9a49de9c9b180f3da58f7edce28abaeb1ea9.zip
multimedia/nymphcast: 'broadcast' to your TV or speakers from the desktop
This is three ports: - nymphrpc (RPC library) - nymphcastlib (supporting library for the server and clients) - nymphcast (the server) There is no client for FreeBSD (yet). Use the client on Android, Windows, or Linux.
Diffstat (limited to 'multimedia/nymphrpc')
-rw-r--r--multimedia/nymphrpc/Makefile18
-rw-r--r--multimedia/nymphrpc/distinfo3
-rw-r--r--multimedia/nymphrpc/files/patch-Makefile78
-rw-r--r--multimedia/nymphrpc/pkg-descr9
-rw-r--r--multimedia/nymphrpc/pkg-plist19
5 files changed, 127 insertions, 0 deletions
diff --git a/multimedia/nymphrpc/Makefile b/multimedia/nymphrpc/Makefile
new file mode 100644
index 000000000000..f36c8dd07393
--- /dev/null
+++ b/multimedia/nymphrpc/Makefile
@@ -0,0 +1,18 @@
+PORTNAME= NymphRPC
+DISTVERSION= v0.1-alpha1
+CATEGORIES= multimedia devel
+
+MAINTAINER= adridg@FreeBSD.org
+COMMENT= Compact, C++-based Remote Procedure Call (RPC) library
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS= libPocoNet.so:devel/poco
+
+USES= compiler:c++17-lang gmake
+
+USE_GITHUB= yes
+GH_ACCOUNT= MayaPosch
+
+.include <bsd.port.mk>
diff --git a/multimedia/nymphrpc/distinfo b/multimedia/nymphrpc/distinfo
new file mode 100644
index 000000000000..0b9d5b8bf1ba
--- /dev/null
+++ b/multimedia/nymphrpc/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1643980281
+SHA256 (MayaPosch-NymphRPC-v0.1-alpha1_GH0.tar.gz) = e002829eabc75e2db061d301a0102ff982e2917cbc119f68f05b02e1ad168844
+SIZE (MayaPosch-NymphRPC-v0.1-alpha1_GH0.tar.gz) = 14119499
diff --git a/multimedia/nymphrpc/files/patch-Makefile b/multimedia/nymphrpc/files/patch-Makefile
new file mode 100644
index 000000000000..660f7f7da65f
--- /dev/null
+++ b/multimedia/nymphrpc/files/patch-Makefile
@@ -0,0 +1,78 @@
+--- Makefile.orig 2021-12-16 10:20:49 UTC
++++ Makefile
+@@ -7,6 +7,8 @@
+
+ export TOP := $(CURDIR)
+
++CXX ?= g++
++
+ ifndef ANDROID_ABI_LEVEL
+ ANDROID_ABI_LEVEL := 21
+ endif
+@@ -31,9 +33,7 @@ TOOLCHAIN_POSTFIX := .cmd
+ endif
+ endif
+
+-ifndef ARCH
+-ARCH := $(shell g++ -dumpmachine)/
+-endif
++ARCH :=
+
+ USYS := $(shell uname -s)
+ UMCH := $(shell uname -m)
+@@ -60,7 +60,7 @@ MAKEDIR = mkdir -p
+ RM = rm
+ AR = ar
+ else
+-GCC = g++
++GCC = $(CXX)
+ MAKEDIR = mkdir -p
+ RM = rm
+ AR = ar
+@@ -81,9 +81,10 @@ endif
+
+
+ INCLUDE = -I src
++INCLUDE += -I /usr/local/include
+ LIBS := -lPocoNet -lPocoUtil -lPocoFoundation -lPocoJSON
+ CFLAGS := $(INCLUDE) -g3 -std=c++11 -O0
+-SHARED_FLAGS := -fPIC -shared -Wl,$(SONAME),$(LIBNAME)
++SHARED_FLAGS := -fPIC -shared -Wl,$(SONAME),$(LIBNAME) -L /usr/local/lib
+
+ ifdef ANDROID
+ CFLAGS += -fPIC
+@@ -115,7 +116,7 @@ SHARED_OBJECTS := $(addprefix obj/shared/$(ARCH),$(not
+
+ all: lib
+
+-lib: makedir lib/$(ARCH)$(OUTPUT).a lib/$(ARCH)$(LIBNAME)
++lib: makedir lib/$(OUTPUT).a lib/$(LIBNAME)
+
+ obj/static/$(ARCH)%.o: %.cpp
+ $(GCC) -c -o $@ $< $(CFLAGS)
+@@ -123,11 +124,11 @@ obj/static/$(ARCH)%.o: %.cpp
+ obj/shared/$(ARCH)%.o: %.cpp
+ $(GCC) -c -o $@ $< $(SHARED_FLAGS) $(CFLAGS) $(LIBS)
+
+-lib/$(ARCH)$(OUTPUT).a: $(OBJECTS)
++lib/$(OUTPUT).a: $(OBJECTS)
+ -rm -f $@
+ $(AR) rcs $@ $^
+
+-lib/$(ARCH)$(LIBNAME): $(SHARED_OBJECTS)
++lib/$(LIBNAME): $(SHARED_OBJECTS)
+ $(GCC) -o $@ $(CFLAGS) $(SHARED_FLAGS) $(SHARED_OBJECTS) $(LIBS)
+
+ makedir:
+@@ -165,9 +166,9 @@ endif
+ .PHONY: install
+ install:
+ install -d $(DESTDIR)$(PREFIX)/lib/
+- install -m 644 lib/$(ARCH)$(OUTPUT).a $(DESTDIR)$(PREFIX)/lib/
++ install -m 644 lib/$(OUTPUT).a $(DESTDIR)$(PREFIX)/lib/
+ ifndef OS
+- install -m 644 lib/$(ARCH)$(OUTPUT).so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/
++ install -m 644 lib/$(OUTPUT).so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/
+ endif
+ install -d $(DESTDIR)$(PREFIX)/include/nymph
+ install -m 644 src/*.h $(DESTDIR)$(PREFIX)/include/nymph/
diff --git a/multimedia/nymphrpc/pkg-descr b/multimedia/nymphrpc/pkg-descr
new file mode 100644
index 000000000000..9f9d64e8386b
--- /dev/null
+++ b/multimedia/nymphrpc/pkg-descr
@@ -0,0 +1,9 @@
+NymphRPC is a compact, C++-based Remote Procedure Call (RPC) library.
+Look at the example server and client implementations in the test folder
+to get an idea of how NymphRPC is integrated into an application.
+
+The basic procedure is to define the RPC methods and client-side callbacks
+in the server, which the client will synchronise with when it connects to
+the server. There is no Domain-Specific Language (DSL) or auto-generated code.
+
+WWW: https://github.com/MayaPosch/NymphRPC
diff --git a/multimedia/nymphrpc/pkg-plist b/multimedia/nymphrpc/pkg-plist
new file mode 100644
index 000000000000..26f6340a72bc
--- /dev/null
+++ b/multimedia/nymphrpc/pkg-plist
@@ -0,0 +1,19 @@
+include/nymph/abstract_request.h
+include/nymph/callback_request.h
+include/nymph/dispatcher.h
+include/nymph/nymph.h
+include/nymph/nymph_listener.h
+include/nymph/nymph_logger.h
+include/nymph/nymph_message.h
+include/nymph/nymph_method.h
+include/nymph/nymph_server.h
+include/nymph/nymph_session.h
+include/nymph/nymph_socket_listener.h
+include/nymph/nymph_types.h
+include/nymph/nymph_utilities.h
+include/nymph/remote_client.h
+include/nymph/remote_server.h
+include/nymph/worker.h
+lib/libnymphrpc.a
+lib/libnymphrpc.so.0.1
+lib/libnymphrpc.so