Merge pull request #16194 from miska/snort3-master
[feed/packages.git] / net / transmission / Makefile
1 #
2 # Copyright (C) 2009-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=transmission
11 PKG_VERSION:=3.00
12 PKG_RELEASE:=13
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@GITHUB/transmission/transmission-releases/master
16 PKG_HASH:=9144652fe742f7f7dd6657716e378da60b751aaeda8bef8344b3eefc4db255f2
17
18 PKG_LICENSE:=GPL-2.0-or-later
19 PKG_LICENSE_FILES:=COPYING
20 PKG_CPE_ID:=cpe:/a:transmissionbt:transmission
21
22 PKG_FIXUP:=autoreconf
23 PKG_INSTALL:=1
24 PKG_BUILD_PARALLEL:=1
25 PKG_CONFIG_DEPENDS:= \
26 CONFIG_LIBCURL_GNUTLS \
27 CONFIG_LIBCURL_MBEDTLS \
28 CONFIG_LIBCURL_OPENSSL \
29 CONFIG_LIBCURL_WOLFSSL \
30 CONFIG_LIBCURL_NOSSL
31
32 include $(INCLUDE_DIR)/package.mk
33 include $(INCLUDE_DIR)/package-seccomp.mk
34 include $(INCLUDE_DIR)/nls.mk
35
36 define Package/transmission/template
37 SUBMENU:=BitTorrent
38 SECTION:=net
39 CATEGORY:=Network
40 TITLE:=BitTorrent client
41 URL:=https://www.transmissionbt.com
42 DEPENDS:=+libcurl +libevent2 +libminiupnpc +libnatpmp +libpthread +librt +zlib +LIBCURL_NOSSL:libmbedtls +LIBCURL_GNUTLS:libmbedtls +LIBCURL_WOLFSSL:libmbedtls $(ICONV_DEPENDS)
43 endef
44
45 define Package/transmission-daemon
46 $(call Package/transmission/template)
47 USERID:=transmission=224:transmission=224
48 endef
49
50 define Package/transmission-cli
51 $(call Package/transmission/template)
52 TITLE+= (utilities)
53 endef
54
55 define Package/transmission-remote
56 $(call Package/transmission/template)
57 TITLE+= (remote)
58 endef
59
60 define Package/transmission-web
61 $(call Package/transmission/template)
62 TITLE+= (webinterface)
63 DEPENDS:=+transmission-daemon
64 PKGARCH:=all
65 endef
66
67 define Package/transmission-daemon/description
68 Transmission is a simple BitTorrent client.
69 It features a very simple, intuitive interface
70 on top on an efficient, cross-platform back-end.
71 This package contains the daemon itself.
72 endef
73
74 define Package/transmission-cli/description
75 CLI utilities for transmission.
76 endef
77
78 define Package/transmission-remote/description
79 CLI remote interface for transmission.
80 endef
81
82 define Package/transmission-web/description
83 Webinterface resources for transmission.
84 endef
85
86 define Package/transmission-daemon/conffiles
87 /etc/config/transmission
88 endef
89
90 TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto
91 TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed -liconv
92
93 CONFIGURE_ARGS += \
94 --enable-cli \
95 --enable-daemon \
96 --enable-external-natpmp \
97 --enable-largefile \
98 --enable-lightweight \
99 --without-gtk \
100 --without-kqueue \
101 --without-systemd-daemon \
102 $(if $(CONFIG_LIBCURL_NOSSL),--with-crypto=polarssl) \
103 $(if $(CONFIG_LIBCURL_GNUTLS),--with-crypto=polarssl) \
104 $(if $(CONFIG_LIBCURL_MBEDTLS),--with-crypto=polarssl) \
105 $(if $(CONFIG_LIBCURL_OPENSSL),--with-crypto=openssl) \
106 $(if $(CONFIG_LIBCURL_WOLFSSL),--with-crypto=polarssl)
107
108 define Package/transmission-daemon/install
109 $(INSTALL_DIR) $(1)/usr/bin
110 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-daemon $(1)/usr/bin/
111 $(INSTALL_DIR) $(1)/etc/init.d/
112 $(INSTALL_BIN) files/transmission.init $(1)/etc/init.d/transmission
113 $(INSTALL_DIR) $(1)/etc/config
114 $(INSTALL_CONF) files/transmission.config $(1)/etc/config/transmission
115 $(INSTALL_DIR) $(1)/etc/sysctl.d/
116 $(INSTALL_CONF) files/transmission.sysctl $(1)/etc/sysctl.d/20-transmission.conf
117 $(call InstallSeccomp,$(1),./files/transmission-daemon.json)
118 endef
119
120 define Package/transmission-cli/install
121 $(INSTALL_DIR) $(1)/usr/bin
122 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-cli \
123 $(PKG_INSTALL_DIR)/usr/bin/transmission-create \
124 $(PKG_INSTALL_DIR)/usr/bin/transmission-edit \
125 $(PKG_INSTALL_DIR)/usr/bin/transmission-show \
126 $(1)/usr/bin/
127 endef
128
129 define Package/transmission-remote/install
130 $(INSTALL_DIR) $(1)/usr/bin
131 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-remote $(1)/usr/bin/
132 endef
133
134 define Package/transmission-web/install
135 $(INSTALL_DIR) $(1)/usr/share/transmission
136 $(CP) $(PKG_INSTALL_DIR)/usr/share/transmission/web $(1)/usr/share/transmission/
137 endef
138
139 $(eval $(call BuildPackage,transmission-daemon))
140 $(eval $(call BuildPackage,transmission-cli))
141 $(eval $(call BuildPackage,transmission-remote))
142 $(eval $(call BuildPackage,transmission-web))