treewide: add conffiles
[feed/packages.git] / net / aria2 / Makefile
1 #
2 # Copyright (C) 2012-2018 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:=aria2
10 PKG_VERSION:=1.35.0
11 PKG_RELEASE:=3
12
13 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
14 PKG_SOURCE_URL:=https://github.com/aria2/aria2/releases/download/release-$(PKG_VERSION)/
15 PKG_HASH:=1e2b7fd08d6af228856e51c07173cfcf987528f1ac97e04c5af4a47642617dfd
16 PKG_INSTALL:=1
17 PKG_BUILD_PARALLEL:=1
18
19 PKG_MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>, \
20 Hsing-Wang Liao <kuoruan@gmail.com>
21 PKG_LICENSE:=GPLv2
22 PKG_LICENSE_FILES:=COPYING
23 PKG_CPE_ID:=cpe:/a:tatsuhiro_tsujikawa:aria2
24
25 PKG_CONFIG_DEPENDS := \
26 CONFIG_ARIA2_NOSSL \
27 CONFIG_ARIA2_OPENSSL \
28 CONFIG_ARIA2_GNUTLS \
29 CONFIG_ARIA2_NOCRYPTO \
30 CONFIG_ARIA2_NETTLE \
31 CONFIG_ARIA2_LIBGCRYPT \
32 CONFIG_ARIA2_LIBXML2 \
33 CONFIG_ARIA2_EXPAT \
34 CONFIG_ARIA2_GMP \
35 CONFIG_ARIA2_BITTORRENT \
36 CONFIG_ARIA2_METALINK \
37 CONFIG_ARIA2_SFTP \
38 CONFIG_ARIA2_ASYNC_DNS \
39 CONFIG_ARIA2_COOKIE \
40 CONFIG_ARIA2_WEBSOCKET
41
42 include $(INCLUDE_DIR)/package.mk
43
44 define Package/aria2/config
45 source "$(SOURCE)/Config.in"
46 endef
47
48 define Package/aria2
49 SECTION:=net
50 CATEGORY:=Network
51 SUBMENU:=File Transfer
52 TITLE:=lightweight download utility
53 URL:=https://aria2.github.io/
54 DEPENDS:=+zlib +libstdcpp +ARIA2_OPENSSL:libopenssl +ARIA2_GNUTLS:libgnutls \
55 +ARIA2_NETTLE:libnettle +ARIA2_LIBGCRYPT:libgcrypt +ARIA2_GMP:libgmp \
56 +ARIA2_LIBXML2:libxml2 +ARIA2_EXPAT:libexpat +ARIA2_SFTP:libssh2 \
57 +ARIA2_ASYNC_DNS:libcares +ARIA2_COOKIE:libsqlite3
58 USERID:=aria2=6800:aria2=6800
59 endef
60
61 define Package/aria2/description
62 aria2 is a lightweight multi-protocol & multi-source command-line download
63 utility
64 endef
65
66 CONFIGURE_ARGS += \
67 --disable-nls \
68 $(if $(CONFIG_ARIA2_NOSSL),--disable,--enable)-ssl \
69 $(if $(CONFIG_ARIA2_BITTORRENT),--enable,--disable)-bittorrent \
70 $(if $(CONFIG_ARIA2_METALINK),--enable,--disable)-metalink \
71 $(if $(CONFIG_ARIA2_WEBSOCKET),--enable,--disable)-websocket \
72 $(if $(CONFIG_ARIA2_OPENSSL),--with,--without)-openssl \
73 $(if $(CONFIG_ARIA2_GNUTLS),--with,--without)-gnutls \
74 $(if $(CONFIG_ARIA2_NETTLE),--with,--without)-libnettle \
75 $(if $(CONFIG_ARIA2_LIBGCRYPT),--with,--without)-libgcrypt \
76 $(if $(CONFIG_ARIA2_GMP),--with,--without)-libgmp \
77 $(if $(CONFIG_ARIA2_LIBXML2),--with,--without)-libxml2 \
78 $(if $(CONFIG_ARIA2_EXPAT),--with,--without)-libexpat \
79 $(if $(CONFIG_ARIA2_SFTP),--with,--without)-libssh2 \
80 $(if $(CONFIG_ARIA2_ASYNC_DNS),--with,--without)-libcares \
81 $(if $(CONFIG_ARIA2_COOKIE),--with,--without)-sqlite3 \
82 --without-libuv \
83 --with-libz
84
85 TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -flto
86 TARGET_LDFLAGS += -Wl,--gc-sections -flto
87
88 define Package/aria2/conffiles
89 /etc/config/aria2
90 endef
91
92 define Package/aria2/install
93 $(INSTALL_DIR) $(1)/usr/bin
94 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aria2c $(1)/usr/bin
95
96 $(INSTALL_DIR) $(1)/etc/init.d
97 $(INSTALL_BIN) ./files/aria2.init $(1)/etc/init.d/aria2
98
99 $(INSTALL_DIR) $(1)/etc/config
100 $(INSTALL_CONF) ./files/aria2.conf $(1)/etc/config/aria2
101 endef
102
103 $(eval $(call BuildPackage,aria2))