Files
openwrt-packages/utils/syncthing/Makefile
Paul Spooren b85e387cc2 syncthing: fixup version detection
Since upstream commit dc92994 the LDFLAGS used for settings the version
(and build host and user) changed resulting in "unknown" versions in
syncthing.

Correct version detection is important for syncthing to assure
compatibility with other running instances. The "unknown" version fails
to communicate and sync with correctly compiled instances.

This patch updates the syncthing Makefile to inject the correct
variables and thereby fixes the version detection in syncthing.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-03-23 16:37:36 -10:00

68 lines
1.9 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_NAME:=syncthing
PKG_VERSION:=1.3.4
PKG_RELEASE:=3
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:=\
github.com/syncthing/syncthing/lib/build.Version=v$(PKG_VERSION) \
github.com/syncthing/syncthing/lib/build.Stamp=$(SOURCE_DATE_EPOCH) \
github.com/syncthing/syncthing/lib/build.User=openwrt \
github.com/syncthing/syncthing/lib/build.Host=openwrt \
github.com/syncthing/syncthing/lib/build.Program=syncthing
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))