aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGleb Popov <arrowd@FreeBSD.org>2022-04-21 05:53:44 +0000
committerGleb Popov <arrowd@FreeBSD.org>2022-04-21 11:57:11 +0000
commit1a71ca9ef7e3fac9b0394d2c99d9a6980a025960 (patch)
treeb83ae52b6e352f58ebe1d01ecc2523c0550541d8
parent84124924d61b67d8bc53b723452ddd5ca1631790 (diff)
downloadports-1a71ca9ef7e3fac9b0394d2c99d9a6980a025960.tar.gz
ports-1a71ca9ef7e3fac9b0394d2c99d9a6980a025960.zip
games/moonlight-embedded: Update to 2.5.2
Enable udev, evdev and platform selection features.
-rw-r--r--games/moonlight-embedded/Makefile20
-rw-r--r--games/moonlight-embedded/distinfo8
-rw-r--r--games/moonlight-embedded/files/patch-src_input_evdev.c26
-rw-r--r--games/moonlight-embedded/files/patch-src_main.c93
-rw-r--r--games/moonlight-embedded/files/patch-src_platform.c6
-rw-r--r--games/moonlight-embedded/files/patch-third__party_moonlight-common-c_src_InputStream.c11
6 files changed, 41 insertions, 123 deletions
diff --git a/games/moonlight-embedded/Makefile b/games/moonlight-embedded/Makefile
index 45c8ecaac71c..17b7723059af 100644
--- a/games/moonlight-embedded/Makefile
+++ b/games/moonlight-embedded/Makefile
@@ -1,22 +1,22 @@
PORTNAME= moonlight-embedded
-DISTVERSION= 2.4.11
+DISTVERSION= 2.5.2
CATEGORIES= games
MASTER_SITES= https://github.com/irtimmer/moonlight-embedded/releases/download/v${DISTVERSION}/
-PATCH_SITES= https://github.com/irtimmer/moonlight-embedded/commit/
-PATCHFILES= 5b6639c8a76c4bbb5e0b4bcfe41b8df136608885.patch:-p1
-
MAINTAINER= ports@FreeBSD.org
COMMENT= Gamestream client
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/LICENSE
+BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto
LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \
libcurl.so:ftp/curl \
libenet.so:net/enet \
libexpat.so:textproc/expat2 \
+ libevdev.so:devel/libevdev \
libopus.so:audio/opus \
+ libudev.so:devel/libudev-devd \
libuuid.so:misc/e2fsprogs-libuuid
USES= cmake localbase:ldflags perl5 pkgconfig sdl ssl tar:xz
@@ -24,21 +24,15 @@ USE_LDCONFIG= yes
USE_PERL5= build
USE_SDL= sdl2
-CFLAGS+= -DPREFIX="\\\"${PREFIX}\\\""
+NO_WRKSUBDIR= yes
+CFLAGS+= -DHAS_SOCKLEN_T=1 -I${LOCALBASE}/include/libepoll-shim/
+LDFLAGS+= -lepoll-shim
post-patch:
@${REINPLACE_CMD} -e '/(ALSA)/d' \
-e '/libpulse-simple/d' \
-e '/libcec/d' \
- -e '/libevdev/d' -e 's@./src/input/evdev.c@@' \
- -e '/libudev/d' -e 's@./src/input/udev.c@@' \
- -e '/libva/d' \
- -e '/vdpau/d' \
- -e '/egl/d' \
- -e '/glesv2/d' \
- -e '/x11/d' \
${WRKSRC}/CMakeLists.txt
- @${RM} ${WRKSRC}/src/loop.c
@${REINPLACE_CMD} -e '/avahi-client/d' -e 's@SHARED@STATIC@' \
-e 's@OpenSSL 1.0.2@OpenSSL@' -e '/^install(/d' \
${WRKSRC}/libgamestream/CMakeLists.txt
diff --git a/games/moonlight-embedded/distinfo b/games/moonlight-embedded/distinfo
index 5aab3cccd977..119ac533be76 100644
--- a/games/moonlight-embedded/distinfo
+++ b/games/moonlight-embedded/distinfo
@@ -1,5 +1,3 @@
-TIMESTAMP = 1597898806
-SHA256 (moonlight-embedded-2.4.11.tar.xz) = 4494a30925c42c28197e1b0ebabdac0215507f206696aa5b14cb6e85afa4e33c
-SIZE (moonlight-embedded-2.4.11.tar.xz) = 164096
-SHA256 (5b6639c8a76c4bbb5e0b4bcfe41b8df136608885.patch) = e09b68d07acf1790747da9663dd8c0c0484778f948fac2c8e75a8b5a9e49daaa
-SIZE (5b6639c8a76c4bbb5e0b4bcfe41b8df136608885.patch) = 1076
+TIMESTAMP = 1649611079
+SHA256 (moonlight-embedded-2.5.2.tar.xz) = 05b8c4db5ff4e5ea6f6edf2ffc35fef4c989792342549498fd372bc21707f809
+SIZE (moonlight-embedded-2.5.2.tar.xz) = 295184
diff --git a/games/moonlight-embedded/files/patch-src_input_evdev.c b/games/moonlight-embedded/files/patch-src_input_evdev.c
new file mode 100644
index 000000000000..2fbd4ff994f1
--- /dev/null
+++ b/games/moonlight-embedded/files/patch-src_input_evdev.c
@@ -0,0 +1,26 @@
+--- src/input/evdev.c.orig 2021-12-20 00:24:48 UTC
++++ src/input/evdev.c
+@@ -38,10 +38,10 @@
+ #include <limits.h>
+ #include <unistd.h>
+ #include <pthread.h>
+-#include <endian.h>
++#include <sys/endian.h>
+ #include <math.h>
+
+-#if __BYTE_ORDER == __LITTLE_ENDIAN
++#if _BYTE_ORDER == _LITTLE_ENDIAN
+ #define int16_to_le(val) val
+ #else
+ #define int16_to_le(val) ((((val) >> 8) & 0x00FF) | (((val) << 8) & 0xFF00))
+@@ -66,8 +66,8 @@ struct input_device {
+ int hats_state[3][2];
+ int fd;
+ char modifiers;
+- __s32 mouseDeltaX, mouseDeltaY, mouseScroll;
+- __s32 touchDownX, touchDownY, touchX, touchY;
++ int32_t mouseDeltaX, mouseDeltaY, mouseScroll;
++ int32_t touchDownX, touchDownY, touchX, touchY;
+ struct timeval touchDownTime;
+ struct timeval btnDownTime;
+ short controllerId;
diff --git a/games/moonlight-embedded/files/patch-src_main.c b/games/moonlight-embedded/files/patch-src_main.c
index 6f2ede47e7fb..eb3340ad3460 100644
--- a/games/moonlight-embedded/files/patch-src_main.c
+++ b/games/moonlight-embedded/files/patch-src_main.c
@@ -1,54 +1,6 @@
---- src/main.c.orig 2020-03-09 19:33:27 UTC
+--- src/main.c.orig 2021-12-20 00:24:48 UTC
+++ src/main.c
-@@ -91,7 +91,6 @@ static void stream(PSERVER_DATA server, PCONFIGURATION
- }
-
- int gamepads = 0;
-- gamepads += evdev_gamepads;
- #ifdef HAVE_SDL
- gamepads += sdl_gamepads;
- #endif
-@@ -121,21 +120,11 @@ static void stream(PSERVER_DATA server, PCONFIGURATION
- connection_debug = true;
- }
-
-- if (IS_EMBEDDED(system))
-- loop_init();
--
- platform_start(system);
- LiStartConnection(&server->serverInfo, &config->stream, &connection_callbacks, platform_get_video(system), platform_get_audio(system, config->audio_device), NULL, drFlags, config->audio_device, 0);
-
-- if (IS_EMBEDDED(system)) {
-- if (!config->viewonly)
-- evdev_start();
-- loop_main();
-- if (!config->viewonly)
-- evdev_stop();
-- }
- #ifdef HAVE_SDL
-- else if (system == SDL)
-+ if (system == SDL)
- sdl_loop();
- #endif
-
-@@ -188,7 +177,6 @@ static void help() {
- printf("\t-surround\t\tStream 5.1 surround sound (requires GFE 2.7)\n");
- printf("\t-keydir <directory>\tLoad encryption keys from directory\n");
- printf("\t-mapping <file>\t\tUse <file> as gamepad mappings configuration file\n");
-- printf("\t-platform <system>\tSpecify system used for audio, video and input: pi/imx/aml/rk/x11/x11_vdpau/sdl/fake (default auto)\n");
- printf("\t-unsupported\t\tTry streaming if GFE version or options are unsupported\n");
- printf("\t-quitappafter\t\tSend quit app request to remote after quitting session\n");
- printf("\t-viewonly\t\tDisable all input processing (view-only mode)\n");
-@@ -228,8 +216,6 @@ int main(int argc, char* argv[]) {
- exit(-1);
- }
-
-- evdev_create(config.inputs[0], NULL, config.debug_level > 0);
-- evdev_map(config.inputs[0]);
- exit(0);
- }
-
-@@ -240,12 +226,8 @@ int main(int argc, char* argv[]) {
+@@ -258,12 +244,8 @@ int main(int argc, char* argv[]) {
exit(-1);
}
config.address[0] = 0;
@@ -63,44 +15,3 @@
}
char host_config_file[128];
-@@ -304,39 +286,8 @@ int main(int argc, char* argv[]) {
- if (config.debug_level > 0)
- printf("View-only mode enabled, no input will be sent to the host computer\n");
- } else {
-- if (IS_EMBEDDED(system)) {
-- char* mapping_env = getenv("SDL_GAMECONTROLLERCONFIG");
-- if (config.mapping == NULL && mapping_env == NULL) {
-- fprintf(stderr, "Please specify mapping file as default mapping could not be found.\n");
-- exit(-1);
-- }
--
-- struct mapping* mappings = NULL;
-- if (config.mapping != NULL)
-- mappings = mapping_load(config.mapping, config.debug_level > 0);
--
-- if (mapping_env != NULL) {
-- struct mapping* map = mapping_parse(mapping_env);
-- map->next = mappings;
-- mappings = map;
-- }
--
-- for (int i=0;i<config.inputsCount;i++) {
-- if (config.debug_level > 0)
-- printf("Add input %s...\n", config.inputs[i]);
--
-- evdev_create(config.inputs[i], mappings, config.debug_level > 0);
-- }
--
-- udev_init(!inputAdded, mappings, config.debug_level > 0);
-- evdev_init();
-- rumble_handler = evdev_rumble;
-- #ifdef HAVE_LIBCEC
-- cec_init();
-- #endif /* HAVE_LIBCEC */
-- }
- #ifdef HAVE_SDL
-- else if (system == SDL) {
-+ if (system == SDL) {
- if (config.inputsCount > 0) {
- fprintf(stderr, "You can't select input devices as SDL will automatically use all available controllers\n");
- exit(-1);
diff --git a/games/moonlight-embedded/files/patch-src_platform.c b/games/moonlight-embedded/files/patch-src_platform.c
index 4f6e6668f23c..d9cddad61b50 100644
--- a/games/moonlight-embedded/files/patch-src_platform.c
+++ b/games/moonlight-embedded/files/patch-src_platform.c
@@ -1,8 +1,8 @@
---- src/platform.c.orig 2018-08-11 15:43:13 UTC
+--- src/platform.c.orig 2021-12-20 00:24:48 UTC
+++ src/platform.c
-@@ -174,14 +174,6 @@ AUDIO_RENDERER_CALLBACKS* platform_get_audio(enum plat
- if (audio_device == NULL || strcmp(audio_device, "local") == 0 || strcmp(audio_device, "hdmi") == 0)
+@@ -188,14 +188,6 @@ AUDIO_RENDERER_CALLBACKS* platform_get_audio(enum plat
return (PAUDIO_RENDERER_CALLBACKS) dlsym(RTLD_DEFAULT, "audio_callbacks_omx");
+ // fall-through
#endif
- default:
- #ifdef HAVE_PULSE
diff --git a/games/moonlight-embedded/files/patch-third__party_moonlight-common-c_src_InputStream.c b/games/moonlight-embedded/files/patch-third__party_moonlight-common-c_src_InputStream.c
deleted file mode 100644
index 11a31e91d292..000000000000
--- a/games/moonlight-embedded/files/patch-third__party_moonlight-common-c_src_InputStream.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/moonlight-common-c/src/InputStream.c.orig 2019-04-29 17:05:00 UTC
-+++ third_party/moonlight-common-c/src/InputStream.c
-@@ -35,7 +35,7 @@ typedef struct _PACKET_HOLDER {
- LINKED_BLOCKING_QUEUE_ENTRY entry;
- } PACKET_HOLDER, *PPACKET_HOLDER;
-
--#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
- #define EVP_CIPHER_CTX_reset(x) EVP_CIPHER_CTX_cleanup(x); EVP_CIPHER_CTX_init(x)
- #endif
-