summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-multimedia')
-rw-r--r--meta-openembedded/meta-multimedia/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/juce/projucer.inc1
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb1
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch46
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.11.1.bb2
-rw-r--r--meta-openembedded/meta-multimedia/recipes-support/srt/srt/0001-don-t-install-srt-ffplay.patch28
-rw-r--r--meta-openembedded/meta-multimedia/recipes-support/srt/srt_1.4.2.bb27
7 files changed, 106 insertions, 1 deletions
diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf
index be0e2b362e..a27b97de0a 100644
--- a/meta-openembedded/meta-multimedia/conf/layer.conf
+++ b/meta-openembedded/meta-multimedia/conf/layer.conf
@@ -31,4 +31,4 @@ LAYERVERSION_multimedia-layer = "1"
LAYERDEPENDS_multimedia-layer = "core meta-python"
-LAYERSERIES_COMPAT_multimedia-layer = "gatesgarth"
+LAYERSERIES_COMPAT_multimedia-layer = "gatesgarth hardknott"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/juce/projucer.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/juce/projucer.inc
index fc8baa45b4..ab0f23879f 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/juce/projucer.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/juce/projucer.inc
@@ -34,6 +34,7 @@ EXTRA_OEMAKE = "V=1 JUCE_ARCH_LABEL=${TARGET_ARCH} TARGET_ARCH='-g'"
LDFLAGS_append_mipsarcho32 = " -latomic"
LDFLAGS_append_powerpc = " -latomic"
LDFLAGS_append_riscv64 = " -latomic"
+LDFLAGS_append_riscv32 = " -latomic"
LDFLAGS_append_armv5 = " -latomic"
do_configure() {
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
index b4f09cdf54..78c7c06b22 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
@@ -101,6 +101,7 @@ RDEPENDS_packagegroup-meta-multimedia-support = "\
libmediaart \
gst-instruments \
libsrtp \
+ srt \
"
# devel headers/libraries only packages
# libsquish
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch
new file mode 100644
index 0000000000..405490dcfc
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch
@@ -0,0 +1,46 @@
+From f7957c35654222e5bd1038341612bbb40a88e98b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 16 Nov 2020 12:08:43 -0800
+Subject: [PATCH] linux/thread: Use SYS_futex instead of __NR_futex
+
+SYS_futex it expected from system C library.
+in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
+some newer 32bit architectures e.g. riscv32 are using 64bit time_t from
+get go unlike other 32bit architectures in glibc, therefore it wont have
+NR_futex defined but just NR_futex_time64 this aliases it to NR_futex so
+that SYS_futex is then defined for rv32
+
+Upstream-Status: Submitted [https://github.com/videolan/vlc/pull/117]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/linux/thread.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/linux/thread.c b/src/linux/thread.c
+index 20da296..30639a3 100644
+--- a/src/linux/thread.c
++++ b/src/linux/thread.c
+@@ -30,6 +30,11 @@
+ #include <sys/syscall.h>
+ #include <linux/futex.h>
+
++/* 32bit architectures with 64bit time_t do not define __NR_futex syscall */
++#if !defined(SYS_futex) && defined(SYS_futex_time64)
++#define SYS_futex SYS_futex_time64
++#endif
++
+ #ifndef FUTEX_PRIVATE_FLAG
+ #define FUTEX_WAKE_PRIVATE FUTEX_WAKE
+ #define FUTEX_WAIT_PRIVATE FUTEX_WAIT
+@@ -50,7 +55,7 @@ unsigned long vlc_thread_id(void)
+ static int sys_futex(void *addr, int op, unsigned val,
+ const struct timespec *to, void *addr2, int val3)
+ {
+- return syscall(__NR_futex, addr, op, val, to, addr2, val3);
++ return syscall(SYS_futex, addr, op, val, to, addr2, val3);
+ }
+
+ static int vlc_futex_wake(void *addr, int nr)
+--
+2.29.2
+
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.11.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.11.1.bb
index 44178a10d1..7902825f24 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.11.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.11.1.bb
@@ -14,6 +14,7 @@ DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \
tiff"
LDFLAGS_append_riscv64 = " -latomic"
+LDFLAGS_append_riscv32 = " -latomic"
# While this item does not require it, it depends on ffmpeg which does
LICENSE_FLAGS = "commercial"
@@ -24,6 +25,7 @@ SRC_URI = "http://download.videolan.org/pub/videolan/${BPN}/${PV}/${BP}.tar.xz \
file://0003-fix-luaL-checkint.patch \
file://0004-Use-packageconfig-to-detect-mmal-support.patch \
file://0005-Fix-build-with-Qt-5.15.patch \
+ file://0001-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch \
"
SRC_URI[sha256sum] = "189311d28aa814f106a7b3645211ac52c0b3e2b9f4b348de2f63bab3218086b8"
diff --git a/meta-openembedded/meta-multimedia/recipes-support/srt/srt/0001-don-t-install-srt-ffplay.patch b/meta-openembedded/meta-multimedia/recipes-support/srt/srt/0001-don-t-install-srt-ffplay.patch
new file mode 100644
index 0000000000..5b76b16328
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-support/srt/srt/0001-don-t-install-srt-ffplay.patch
@@ -0,0 +1,28 @@
+From a45b43a2acd4c29bc8a204f51a3fa5e7b9815613 Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sat, 14 Nov 2020 12:29:56 +0000
+Subject: [PATCH] don't install srt-ffplay
+
+srt-ffplay is a simple bash scripts that pipes the output of srt-live-transmit to ffplay.
+It need ffmpeg as dependencie and requeire that libsrt is builded with -DENABLE_APPS=ON.
+So remove it because there are no option to disable the instalation.
+
+Upstream-Status: Pending
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ CMakeLists.txt | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ed6e603..ef53dc5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1224,7 +1224,6 @@ if (ENABLE_UNITTESTS AND ENABLE_CXX11)
+ endif()
+
+
+-install(PROGRAMS scripts/srt-ffplay DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+
+ if (DEFINED SRT_EXTRA_APPS_INC)
diff --git a/meta-openembedded/meta-multimedia/recipes-support/srt/srt_1.4.2.bb b/meta-openembedded/meta-multimedia/recipes-support/srt/srt_1.4.2.bb
new file mode 100644
index 0000000000..567ea68edf
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-support/srt/srt_1.4.2.bb
@@ -0,0 +1,27 @@
+SUMMARY = "Secure Reliable Transport (SRT) Protocol"
+DESCRIPTION = "Secure Reliable Transport (SRT) is an open source transport technology \
+that optimizes streaming performance across unpredictable networks, such as the Internet."
+SECTION = "libs"
+HOMEPAGE = "https://github.com/Haivision/srt"
+LICENSE = "MPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=815ca599c9df247a0c7f619bab123dad"
+
+SRCREV = "50b7af06f3a0a456c172b4cb3aceafa8a5cc0036"
+SRC_URI = "git://github.com/Haivision/srt;protocol=https \
+ file://0001-don-t-install-srt-ffplay.patch \
+ "
+UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release -DENABLE_UNITTESTS=OFF"
+
+PACKAGECONFIG ??= "crypt"
+PACKAGECONFIG[debug] = "-DENABLE_DEBUG=1,,"
+PACKAGECONFIG[crypt] = "-DENABLE_ENCRYPTION=ON,-DENABLE_ENCRYPTION=OFF,openssl"
+PACKAGECONFIG[utils] = "-DENABLE_APPS=ON,-DENABLE_APPS=OFF,"
+
+PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'utils', '${PN}-utils', '', d)}"
+FILES_${PN}-utils += "${bindir}"
+RDEPENDS_${PN}-utils += "${PN}"