packages/utils/syncthing/Makefile
Marc Benoit 6f6877460a syncthing: enable via config, lower priority, cleanup
Added the ability to enable/disable via a config file;
the default is enabled for backwards compatibility.

This is an additional service, so running it the
same priority as dnsmasq, etc does not make sense.

Added USE_PROCD=1

"done" starts at "START=95", so this should start earlier

Added STOP=10 to stop syncthing early

Compile-tested on: ipq806x, ipq40xx
Runtime-tested on: ipq806x, ipq40xx

Signed-off-by: Marc Benoit <marcb62185@gmail.com>
2020-03-01 18:53:27 -05:00

66 lines
1.7 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_NAME:=syncthing
PKG_VERSION:=1.3.4
PKG_RELEASE:=2
PKG_SOURCE:=syncthing-source-v$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/syncthing/syncthing/releases/download/v$(PKG_VERSION)
PKG_HASH:=e40227f67b4317419900353be3f49f381ed36e41044df5d168b850f6b183ae08
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/$(PKG_NAME)
PKG_MAINTAINER:=Paul Spooren <mail@aparcar.org>
PKG_LICENSE:=MPL-2.0
PKG_LICENSE_FILES:=LICENSE
PKG_CPE_ID:=cpe:/a:syncthing:syncthing
PKG_BUILD_DEPENDS:=golang/host
PKG_BUILD_PARALLEL:=1
PKG_USE_MIPS16:=0
GO_PKG:=github.com/syncthing/syncthing/
GO_PKG_BUILD_PKG:=github.com/syncthing/syncthing/cmd/syncthing/
GO_PKG_INSTALL_EXTRA:=^gui/
include $(INCLUDE_DIR)/package.mk
include ../../lang/golang/golang-package.mk
define Package/syncthing
TITLE:=Continuous file synchronization program
URL:=https://syncthing.net
DEPENDS:=$(GO_ARCH_DEPENDS)
SECTION:=utils
CATEGORY:=Utilities
endef
GO_PKG_LDFLAGS_X:=\
main.Version=v$(PKG_VERSION) \
main.BuildUser=openwrt \
main.BuildHost=openwrt \
main.BuildStamp=$(SOURCE_DATE_EPOCH)
define Build/Compile
$(call GoPackage/Build/Compile,-tags noupgrade)
endef
define Package/syncthing/conffiles
/etc/config/syncthing
/etc/syncthing
endef
define Package/syncthing/description
Syncthing replaces proprietary sync and cloud services with something
open, trustworthy and decentralized. Your data is your data alone and
you deserve to choose where it is stored, if it is shared with some
third party and how it's transmitted over the Internet.
endef
define Package/syncthing/install
$(call GoPackage/Package/Install/Bin,$(1))
$(CP) ./files/* $(1)/
endef
$(eval $(call GoBinPackage,syncthing))
$(eval $(call BuildPackage,syncthing))