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