Преглед на файлове

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>
Kadambini Nema преди 1 година
родител
ревизия
142fec6cbd
променени са 5 файла, в които са добавени 68 реда и са изтрити 0 реда
  1. 3 0
      DEVELOPERS
  2. 1 0
      package/Config.in
  3. 21 0
      package/ustreamer/Config.in
  4. 3 0
      package/ustreamer/ustreamer.hash
  5. 40 0
      package/ustreamer/ustreamer.mk

+ 3 - 0
DEVELOPERS

@@ -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/

+ 1 - 0
package/Config.in

@@ -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"

+ 21 - 0
package/ustreamer/Config.in

@@ -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

+ 3 - 0
package/ustreamer/ustreamer.hash

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

+ 40 - 0
package/ustreamer/ustreamer.mk

@@ -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))