treewide: refactor to use PKG_BUILD_FLAGS:=gc-sections
[feed/packages.git] / multimedia / v4l2rtspserver / Makefile
1 #
2 # Copyright (C) 2017 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6
7 include $(TOPDIR)/rules.mk
8
9 PKG_NAME:=v4l2rtspserver
10 PKG_VERSION:=0.3.7
11 PKG_RELEASE:=$(AUTORELEASE)
12
13 #cannot use codeload as this uses submodules
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL:=https://github.com/mpromonet/v4l2rtspserver
16 PKG_SOURCE_VERSION:=v$(PKG_VERSION)
17 PKG_MIRROR_HASH:=f2eca75c8af9933f4ceb67cab74af488e1e9ec8af9cbef2534fda5b701b1d63d
18
19 PKG_BUILD_FLAGS:=gc-sections
20
21 LIVE555_VERSION:=2022.10.01
22 LIVE555_HASH:=429de73061e3fc6901c4d2f0b7562ae3f6233060ca4b5e182fe555d065cbdd45
23 LIVE555_FILE:=live.$(LIVE555_VERSION).tar.gz
24
25 PKG_MAINTAINER:=Roger Dammit <rogerdammit@gmail.com>
26 PKG_LICENSE:=Unlicense
27 PKG_LICENSE_FILES:=LICENSE
28
29 include $(INCLUDE_DIR)/package.mk
30 include $(INCLUDE_DIR)/cmake.mk
31
32 define Package/v4l2rtspserver
33 SECTION:=multimedia
34 CATEGORY:=Multimedia
35 TITLE:=v4l2rtspserver
36 DEPENDS:=+libstdcpp
37 URL:=https://github.com/mpromonet/v4l2rtspserver
38 endef
39
40 define Package/v4l2rtspserver/description
41 RTSP server for v4L2 video sources
42 endef
43
44 define Package/v4l2rtspserver/conffiles
45 /etc/config/v4l2rtspserver
46 endef
47
48 define Download/live555
49 URL:=https://download.videolan.org/pub/contrib/live555/
50 FILE:=$(LIVE555_FILE)
51 HASH:=$(LIVE555_HASH)
52 endef
53
54 TARGET_CFLAGS += -flto
55 TARGET_LDFLAGS += -Wl,--as-needed
56
57 CMAKE_OPTIONS += \
58 -DALSA=OFF \
59 -DSTATICSTDCPP=OFF \
60 -DLIVE555CFLAGS=" -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED -DNO_SSTREAM=1 -DALLOW_RTSP_SERVER_PORT_REUSE=1 -DNO_OPENSSL"
61
62 define Build/Prepare
63 # download live555
64 $(eval $(call Download,live555))
65 mkdir -p $(PKG_BUILD_DIR)/live
66 $(TAR) -xf $(DL_DIR)/$(LIVE555_FILE) --strip=1 -C $(PKG_BUILD_DIR)/live
67 $(Build/Prepare/Default)
68 endef
69
70 define Package/v4l2rtspserver/install
71 $(INSTALL_DIR) $(1)/usr/bin
72 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/v4l2rtspserver $(1)/usr/bin/
73
74 $(INSTALL_DIR) $(1)/etc/init.d
75 $(INSTALL_BIN) files/v4l2rtspserver.init $(1)/etc/init.d/v4l2rtspserver
76 $(INSTALL_DIR) $(1)/etc/config
77 $(INSTALL_CONF) files/v4l2rtspserver.config $(1)/etc/config/v4l2rtspserver
78 endef
79
80 $(eval $(call BuildPackage,v4l2rtspserver))