mirror of
https://git.openwrt.org/feed/packages.git
synced 2024-06-13 19:03:52 +02:00
![Sebastian Kemper](/assets/img/avatar_default.png)
This partially reverts ac5912e9cb
.
CMAKE_SKIP_RPATH=TRUE is set in include/cmake.mk, so the commit removed
this from some packages as it is the default anyway. But in
mjpg-streamer Makefile this was not set to "TRUE", but to "FALSE". So
this line shouldn't have been removed.
With this revert the runpath is back and modules can be loaded again
from "/usr/lib/mjpg-streamer":
readelf -d build_dir/target-mips_24kc_musl/mjpg-streamer-1.0.0/ipkg-mips_24kc/mjpg-streamer/usr/bin/mjpg_streamer
Dynamic section at offset 0x1c0 contains 35 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libjpeg.so.62]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so]
0x0000001d (RUNPATH) Library runpath: [/usr/lib/mjpg-streamer]
Resolve #17081
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
287 lines
8.2 KiB
Makefile
287 lines
8.2 KiB
Makefile
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=mjpg-streamer
|
|
PKG_VERSION:=1.0.0
|
|
PKG_RELEASE:=$(AUTORELEASE)
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://codeload.github.com/jacksonliam/mjpg-streamer/tar.gz/v$(PKG_VERSION)?
|
|
PKG_HASH:=31850cd533b0290640cbdf4da44f7a774bfba050647cb0a0c84a435e90b08598
|
|
|
|
PKG_MAINTAINER:=Roger D <rogerdammit@gmail.com>, \
|
|
Ted Hess <thess@kitschensync.net>
|
|
PKG_LICENSE:=GPL-2.0-or-later
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
|
|
PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip=2 -xf $(DL_DIR)/$(PKG_SOURCE)
|
|
PKG_BUILD_DEPENDS:=MJPG_STREAMER_V4L2:libv4l zmq protobuf-c/host
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/cmake.mk
|
|
|
|
define Package/mjpg-streamer
|
|
SECTION:=multimedia
|
|
CATEGORY:=Multimedia
|
|
TITLE:=MJPG-streamer
|
|
DEPENDS:=+libpthread +libjpeg +MJPG_STREAMER_V4L2:libv4l
|
|
URL:=https://github.com/jacksonliam/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer/Default/description
|
|
Streaming application for Linux-UVC compatible webcams
|
|
endef
|
|
|
|
define Package/mjpg-streamer/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
endef
|
|
|
|
define Package/mjpg-streamer/conffiles
|
|
/etc/config/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer/config
|
|
if PACKAGE_mjpg-streamer-input-uvc
|
|
|
|
config MJPG_STREAMER_V4L2
|
|
bool "Build input_uvc with libv4l2 (camera controls)"
|
|
default n
|
|
select PACKAGE_libv4l
|
|
endif
|
|
endef
|
|
|
|
define Package/mjpg-streamer/Default
|
|
SECTION:=multimedia
|
|
CATEGORY:=Multimedia
|
|
TITLE:=MJPG-streamer
|
|
URL:=https://github.com/jacksonliam/mjpg-streamer
|
|
DEPENDS:=mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-file
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (file input)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-file/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the file input plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-uvc
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (UVC input)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-uvc/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the UVC input plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-http
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (HTTP input)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-http/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the http input plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-rtsp
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (RTSP output)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-rtsp/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the RTSP output plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-udp
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (UDP output)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-udp/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the UDP output plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-file
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (file output)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-file/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the file output plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-http
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (HTTP output)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-http/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the HTTP output plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-zmq
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (zmq output)
|
|
DEPENDS+= +libzmq +libprotobuf-c
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-zmq/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides the ZeroMQ output plugin.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (full www)
|
|
CONFLICTS:=mjpg-streamer-www-simple
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides full version of the web content.
|
|
Includes cambozola applet.
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www-simple
|
|
$(call Package/mjpg-streamer/Default)
|
|
TITLE+= (simple www)
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www-simple/description
|
|
$(call Package/mjpg-streamer/Default/description)
|
|
|
|
This package provides simple version of the web content.
|
|
endef
|
|
|
|
CMAKE_OPTIONS += -DCMAKE_SKIP_RPATH=FALSE
|
|
|
|
CAMBOZOLA:=cambozola-0.936.tar.gz
|
|
|
|
# Distribution URL doesn't always have the correct version
|
|
# Using the OpenWrt mirror provides a stable version
|
|
# orig-URL:=http://www.andywilcock.com/code/cambozola
|
|
define Download/cambozola
|
|
URL:=https://sources.openwrt.org/
|
|
FILE:=$(CAMBOZOLA)
|
|
HASH:=4e4e92d95673edd051e6b4d36bed8c5328873f5fc374073760b457d4be33415b
|
|
endef
|
|
|
|
# redefine prepare to extract to our build dir
|
|
# apply patches
|
|
define Build/Prepare
|
|
$(Build/Prepare/Default)
|
|
# Fetch latest cambozola that works with latest Java(s)
|
|
# Yes, I know this is ugly
|
|
ifneq ($(CONFIG_PACKAGE_mjpg-streamer-www),)
|
|
$(eval $(call Download,cambozola))
|
|
$(TAR) -xf $(DL_DIR)/$(CAMBOZOLA) --strip=2 --wildcards \
|
|
-C $(PKG_BUILD_DIR)/www */dist/cambozola.jar
|
|
endif
|
|
endef
|
|
|
|
define Build/Configure
|
|
$(RM) $(PKG_BUILD_DIR)/plugins/input_uvc/uvcvideo.h
|
|
$(call Build/Configure/Default)
|
|
endef
|
|
|
|
TARGET_LDFLAGS+= -ljpeg
|
|
|
|
ifeq ($(CONFIG_MJPG_STREAMER_V4L2),y)
|
|
TARGET_CFLAGS+= -DUSE_LIBV4L2
|
|
TARGET_LDFLAGS+= -lv4l2
|
|
endif
|
|
|
|
define Package/mjpg-streamer/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mjpg_streamer $(1)/usr/bin/
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(CP) ./files/mjpg-streamer.config $(1)/etc/config/mjpg-streamer
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/mjpg-streamer.init $(1)/etc/init.d/mjpg-streamer
|
|
$(INSTALL_DIR) $(1)/etc/hotplug.d/usb
|
|
$(INSTALL_DATA) ./files/mjpg-streamer.hotplug $(1)/etc/hotplug.d/usb/20-mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-file/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/input_file.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-uvc/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/input_uvc.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-input-http/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/input_http.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-rtsp/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/output_rtsp.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-udp/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/output_udp.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-file/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/output_file.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-http/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/output_http.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-output-zmq/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/mjpg-streamer
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/mjpg-streamer/output_zmqserver.so $(1)/usr/lib/mjpg-streamer
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www/install
|
|
$(INSTALL_DIR) $(1)/www/webcam
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mjpg-streamer/www/* $(1)/www/webcam
|
|
endef
|
|
|
|
define Package/mjpg-streamer-www-simple/install
|
|
$(INSTALL_DIR) $(1)/www/webcam
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mjpg-streamer/www/stream_simple.html $(1)/www/webcam/index.html
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,mjpg-streamer))
|
|
$(eval $(call BuildPackage,mjpg-streamer-input-file))
|
|
$(eval $(call BuildPackage,mjpg-streamer-input-uvc))
|
|
$(eval $(call BuildPackage,mjpg-streamer-input-http))
|
|
$(eval $(call BuildPackage,mjpg-streamer-output-rtsp))
|
|
$(eval $(call BuildPackage,mjpg-streamer-output-file))
|
|
$(eval $(call BuildPackage,mjpg-streamer-output-http))
|
|
$(eval $(call BuildPackage,mjpg-streamer-output-zmq))
|
|
$(eval $(call BuildPackage,mjpg-streamer-www))
|
|
$(eval $(call BuildPackage,mjpg-streamer-www-simple))
|