package/ustreamer: new package

Lightweight and fast MJPEG-HTTP streamer
(https://github.com/pikvm/ustreamer/tree/master#%C2%B5streamer)

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Kadambini Nema 2024-02-19 13:34:02 -08:00 committed by Thomas Petazzoni
parent 7aa4c0d9cc
commit 142fec6cbd
5 changed files with 68 additions and 0 deletions

View File

@ -1920,6 +1920,9 @@ F: package/easy-rsa/
N: Justin Maggard <jmaggard@netgear.com>
F: package/dtach/
N: Kadambini Nema <kadambini.nema@gmail.com>
F: package/ustreamer/
N: Kamel Bouhara <kamel.bouhara@gmail.com>
F: package/libodb-boost/
F: package/libodb-mysql/

View File

@ -2609,6 +2609,7 @@ endif
source "package/uredir/Config.in"
source "package/ushare/Config.in"
source "package/ussp-push/Config.in"
source "package/ustreamer/Config.in"
source "package/vde2/Config.in"
source "package/vdr/Config.in"
source "package/vdr-plugin-vnsiserver/Config.in"

View File

@ -0,0 +1,21 @@
config BR2_PACKAGE_USTREAMER
bool "ustreamer"
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 # V4L2_EVENT_SOURCE_CHANGE
depends on BR2_TOOLCHAIN_HAS_THREADS # libbsd
depends on !BR2_STATIC_LIBS # libbsd
depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS # libbsd
depends on BR2_USE_WCHAR # libbsd
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBBSD
select BR2_PACKAGE_LIBEVENT
help
Lightweight and fast MJPEG-HTTP streamer
https://github.com/pikvm/ustreamer
comment "ustreamer needs a toolchain w/ headers >= 3.16, threads, dynamic library, wchar"
depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 || \
!BR2_TOOLCHAIN_HAS_THREADS || \
BR2_STATIC_LIBS || \
!BR2_USE_WCHAR

View File

@ -0,0 +1,3 @@
# Locally computed
sha256 88f107e02a0b5c6493d55ed1bce0c85f66ce83d2bc0271ff6319ad593c6584bc ustreamer-5.51.tar.gz
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE

View File

@ -0,0 +1,40 @@
################################################################################
#
# ustreamer
#
################################################################################
USTREAMER_VERSION = 5.51
USTREAMER_SITE = $(call github,pikvm,ustreamer,v$(USTREAMER_VERSION))
USTREAMER_LICENSE = GPL-3.0+
USTREAMER_LICENSE_FILES = LICENSE
USTREAMER_DEPENDENCIES = jpeg libevent libbsd
USTREAMER_MAKE_OPTS = \
$(TARGET_CONFIGURE_OPTS) \
WITH_PTHREAD_NP=1 \
WITH_SETPROCTITLE=1 \
HAS_PDEATHSIG=1
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
USTREAMER_MAKE_OPTS += WITH_SYSTEMD=1
USTREAMER_DEPENDENCIES += systemd
endif
ifeq ($(BR2_PACKAGE_LIBGPIOD),y)
USTREAMER_MAKE_OPTS += WITH_GPIO=1
USTREAMER_DEPENDENCIES += libgpiod
endif
define USTREAMER_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) $(USTREAMER_MAKE_OPTS) -C $(@D)
endef
define USTREAMER_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/ustreamer \
$(TARGET_DIR)/usr/bin/ustreamer
$(INSTALL) -D -m 0755 $(@D)/ustreamer-dump \
$(TARGET_DIR)/usr/bin/ustreamer-dump
endef
$(eval $(generic-package))