noddos: Noddos v0.5.0 with mDNS / DNS-SD support
[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:=2.92+git
12 PKG_RELEASE:=4
13
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL:=https://github.com/transmission/transmission.git
16 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
17 PKG_SOURCE_VERSION:=35fea28d1a37875ef7480ac061754df617805b19
18 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
19 PKG_MIRROR_MD5SUM:=aeeb8dfd918bd2cf4fb6fbdf58bd822e9b509df1ba5ec408888edd161123ef8e
20
21 PKG_FIXUP:=autoreconf
22 PKG_INSTALL:=1
23 PKG_BUILD_PARALLEL:=1
24
25 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
26
27 include $(INCLUDE_DIR)/package.mk
28
29 define Package/transmission/template
30 SUBMENU:=BitTorrent
31 SECTION:=net
32 CATEGORY:=Network
33 TITLE:=BitTorrent client
34 URL:=http://www.transmissionbt.com
35 MAINTAINER:=Cezary Jackiewicz <cezary@eko.one.pl>
36 endef
37
38 define Package/transmission-daemon/Default
39 $(call Package/transmission/template)
40 DEPENDS:=+libcurl +libpthread +libevent2 +librt +zlib
41 USERID:=transmission=224:transmission=224
42 endef
43
44 define Package/transmission-daemon-openssl
45 $(call Package/transmission-daemon/Default)
46 TITLE+= (with OpenSSL)
47 DEPENDS+=+libopenssl
48 VARIANT:=openssl
49 endef
50
51 define Package/transmission-daemon-mbedtls
52 $(call Package/transmission-daemon/Default)
53 TITLE+= (with mbed TLS)
54 DEPENDS+=+libmbedtls
55 VARIANT:=mbedtls
56 endef
57
58 define Package/transmission-cli/Default
59 $(call Package/transmission/template)
60 DEPENDS:=+libcurl +libpthread +libevent2 +librt +zlib
61 endef
62
63 define Package/transmission-cli-openssl
64 $(call Package/transmission-cli/Default)
65 TITLE+= (with OpenSSL)
66 DEPENDS+=+libopenssl
67 VARIANT:=openssl
68 endef
69
70 define Package/transmission-cli-mbedtls
71 $(call Package/transmission-cli/Default)
72 TITLE+= (with mbed TLS)
73 DEPENDS+=+libmbedtls
74 VARIANT:=mbedtls
75 endef
76
77 define Package/transmission-remote/Default
78 $(call Package/transmission/template)
79 DEPENDS:=+libcurl +libpthread +libevent2 +librt +zlib
80 endef
81
82 define Package/transmission-remote-openssl
83 $(call Package/transmission-remote/Default)
84 TITLE+= (with OpenSSL)
85 DEPENDS+=+libopenssl
86 VARIANT:=openssl
87 endef
88
89 define Package/transmission-remote-mbedtls
90 $(call Package/transmission-remote/Default)
91 TITLE+= (with mbed TLS)
92 DEPENDS+=+libmbedtls
93 VARIANT:=mbedtls
94 endef
95
96 define Package/transmission-web
97 $(call Package/transmission/template)
98 TITLE+= (webinterface)
99 DEPENDS:=@(PACKAGE_transmission-daemon-openssl||PACKAGE_transmission-daemon-mbedtls)
100 endef
101
102
103 define Package/transmission-daemon/Default/description
104 Transmission is a simple BitTorrent client.
105 It features a very simple, intuitive interface
106 on top on an efficient, cross-platform back-end.
107 This package contains the daemon itself.
108 endef
109 Package/transmission-daemon-openssl/description = $(Package/transmission-daemon/Default/description)
110 Package/transmission-daemon-mbedtls/description = $(Package/transmission-daemon/Default/description)
111
112 define Package/transmission-cli/Default/description
113 CLI utilities for transmission.
114 endef
115 Package/transmission-cli-openssl/description = $(Package/transmission-cli/Default/description)
116 Package/transmission-cli-mbedtls/description = $(Package/transmission-cli/Default/description)
117
118 define Package/transmission-remote/Default/description
119 CLI remote interface for transmission.
120 endef
121 Package/transmission-remote-openssl/description = $(Package/transmission-remote/Default/description)
122 Package/transmission-remote-mbedtls/description = $(Package/transmission-remote/Default/description)
123
124 define Package/transmission-web/description
125 Webinterface resources for transmission.
126 endef
127
128 define Package/transmission-daemon-openssl/conffiles
129 /etc/config/transmission
130 endef
131 Package/transmission-daemon-mbedtls/conffiles = $(Package/transmission-daemon-openssl/conffiles)
132
133
134 CONFIGURE_VARS += \
135 LIBEVENT_LIBS="$(STAGING_DIR)/usr/lib/libevent-2.0.so.5"
136
137 CONFIGURE_ARGS += \
138 --enable-daemon \
139 --enable-cli \
140 --without-gtk \
141 --enable-largefile \
142 --enable-lightweight
143
144 ifeq ($(BUILD_VARIANT),openssl)
145 CONFIGURE_ARGS += \
146 --with-crypto=openssl
147 endif
148
149 ifeq ($(BUILD_VARIANT),mbedtls)
150 CONFIGURE_ARGS += \
151 --with-crypto=polarssl
152 CONFIGURE_VARS += \
153 MBEDTLS_CFLAGS="-I$(STAGING_DIR)/usr/include/mbedtls" \
154 MBEDTLS_LIBS="-lmbedtls -lmbedcrypto"
155 endif
156
157 MAKE_FLAGS += \
158 CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE"
159
160 TARGET_CFLAGS += -std=gnu99
161
162 define Build/Configure
163 ( cd $(PKG_BUILD_DIR); ./autogen.sh $(CONFIGURE_ARGS))
164 $(call Build/Configure/Default,$CONFIGURE_ARGS)
165 endef
166
167 define Package/transmission-daemon-openssl/install
168 $(INSTALL_DIR) $(1)/usr/bin
169 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-daemon $(1)/usr/bin/
170 $(INSTALL_DIR) $(1)/etc/init.d/
171 $(INSTALL_BIN) files/transmission.init $(1)/etc/init.d/transmission
172 $(INSTALL_DIR) $(1)/etc/config
173 $(INSTALL_CONF) files/transmission.config $(1)/etc/config/transmission
174 endef
175 Package/transmission-daemon-mbedtls/install = $(Package/transmission-daemon-openssl/install)
176
177 define Package/transmission-cli-openssl/install
178 $(INSTALL_DIR) $(1)/usr/bin
179 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-cli \
180 $(PKG_INSTALL_DIR)/usr/bin/transmission-create \
181 $(PKG_INSTALL_DIR)/usr/bin/transmission-edit \
182 $(PKG_INSTALL_DIR)/usr/bin/transmission-show \
183 $(1)/usr/bin/
184 endef
185 Package/transmission-cli-mbedtls/install = $(Package/transmission-cli-openssl/install)
186
187 define Package/transmission-remote-openssl/install
188 $(INSTALL_DIR) $(1)/usr/bin
189 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-remote $(1)/usr/bin/
190 endef
191 Package/transmission-remote-mbedtls/install = $(Package/transmission-remote-openssl/install)
192
193 define Package/transmission-web/install
194 $(INSTALL_DIR) $(1)/usr/share/transmission
195 $(CP) $(PKG_INSTALL_DIR)/usr/share/transmission/web $(1)/usr/share/transmission/
196 endef
197
198 $(eval $(call BuildPackage,transmission-daemon-openssl))
199 $(eval $(call BuildPackage,transmission-daemon-mbedtls))
200 $(eval $(call BuildPackage,transmission-cli-openssl))
201 $(eval $(call BuildPackage,transmission-cli-mbedtls))
202 $(eval $(call BuildPackage,transmission-remote-openssl))
203 $(eval $(call BuildPackage,transmission-remote-mbedtls))
204 $(eval $(call BuildPackage,transmission-web))