rclone: Update to 1.64.0
[feed/packages.git] / net / rclone / Makefile
1 # SPDX-Identifier-License: GPL-3.0-or-later
2 #
3 # Copyright (C) 2019 Elon Huang <elonhhuang@gmail.com>
4 # Copyright (C) 2021 ImmortalWrt.org
5
6 include $(TOPDIR)/rules.mk
7
8 PKG_NAME:=rclone
9 PKG_VERSION:=1.64.0
10 PKG_RELEASE:=1
11
12 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
13 PKG_SOURCE_URL:=https://codeload.github.com/rclone/rclone/tar.gz/v$(PKG_VERSION)?
14 PKG_HASH:=3297838fdcf611a5ad605835f41c0e51031ce9f220c77a4ad0af6283b7805329
15
16 PKG_LICENSE:=MIT
17 PKG_LICENSE_FILES:=LICENSE
18 PKG_MAINTAINER:=Elon Huang <elonhhuang@gmail.com> \
19 Tianling Shen <cnsztl@immortalwrt.org>
20
21 PKG_BUILD_DEPENDS:=golang/host
22 PKG_BUILD_PARALLEL:=1
23 PKG_BUILD_FLAGS:=no-mips16
24
25 GO_PKG:=github.com/rclone/rclone
26 GO_PKG_EXCLUDES:=test
27 GO_PKG_LDFLAGS_X:= \
28 github.com/rclone/rclone/fs.Version=v$(PKG_VERSION) \
29 main.Version=v$(PKG_VERSION) \
30 main.BuildUser=openwrt \
31 main.BuildHost=openwrt
32
33 include $(INCLUDE_DIR)/package.mk
34 include ../../lang/golang/golang-package.mk
35
36 define Package/rclone/Default
37 SECTION:=net
38 CATEGORY:=Network
39 SUBMENU:=File Transfer
40 TITLE:=rsync for cloud storage
41 URL:=https://rclone.org
42 endef
43
44 define Package/rclone
45 $(call Package/rclone/Default)
46 DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +fuse-utils
47 USERID:=rclone:rclone
48 endef
49
50 define Package/rclone-config
51 $(call Package/rclone/Default)
52 TITLE+= (Config Scripts)
53 DEPENDS:=+rclone
54 endef
55
56 define Package/rclone/description
57 Rclone ("rsync for cloud storage") is a command line program to sync
58 files and directories to and from different cloud storage providers.
59 endef
60
61 define Package/rclone-config/conffiles
62 /etc/config/rclone
63 endef
64
65 define Package/rclone/install
66 $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
67 $(INSTALL_DIR) $(1)/usr/bin/
68 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/rclone $(1)/usr/bin/
69 endef
70
71 define Package/rclone-config/install
72 $(INSTALL_DIR) $(1)/etc/config/
73 $(INSTALL_CONF) $(CURDIR)/files/rclone.config $(1)/etc/config/rclone
74 $(INSTALL_DIR) $(1)/etc/init.d/
75 $(INSTALL_BIN) $(CURDIR)/files/rclone.init $(1)/etc/init.d/rclone
76 endef
77
78 $(eval $(call GoBinPackage,rclone))
79 $(eval $(call BuildPackage,rclone))
80 $(eval $(call BuildPackage,rclone-config))