Makefile 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. # SPDX-License-Identifier: GPL-3.0-only
  2. #
  3. # Copyright (C) 2021 ImmortalWrt.org
  4. include $(TOPDIR)/rules.mk
  5. PKG_NAME:=v2rayA
  6. PKG_VERSION:=2.2.7.1
  7. PKG_RELEASE:=1
  8. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  9. PKG_SOURCE_URL:=https://codeload.github.com/v2rayA/v2rayA/tar.gz/v$(PKG_VERSION)?
  10. PKG_HASH:=8996ce3ac42f4998a433ab4f8968c7da656baae40b34c154705ecba4274f012d
  11. PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/service
  12. PKG_LICENSE:=AGPL-3.0-only
  13. PKG_LICENSE_FILES:=LICENSE
  14. PKG_MAINTAINER:=Tianling Shen <[email protected]>
  15. PKG_BUILD_DEPENDS:=golang/host
  16. PKG_BUILD_PARALLEL:=1
  17. PKG_USE_MIPS16:=0
  18. PKG_BUILD_FLAGS:=no-mips16
  19. GO_PKG:=github.com/v2rayA/v2rayA
  20. GO_PKG_LDFLAGS_X:= \
  21. $(GO_PKG)/conf.Version=$(PKG_VERSION) \
  22. $(GO_PKG)/core/iptables.TproxyNotSkipBr=true
  23. include $(INCLUDE_DIR)/package.mk
  24. include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
  25. TAR_OPTIONS+= --strip-components 1
  26. TAR_CMD=$(HOST_TAR) -C $(1)/.. $(TAR_OPTIONS)
  27. define Package/v2raya
  28. TITLE:=A Linux web GUI client of Project V
  29. SECTION:=net
  30. CATEGORY:=Network
  31. SUBMENU:=Web Servers/Proxies
  32. DEPENDS:=$(GO_ARCH_DEPENDS) \
  33. +ca-bundle \
  34. +kmod-nft-tproxy \
  35. +xray-core
  36. URL:=https://v2raya.org
  37. endef
  38. define Package/v2raya/description
  39. v2rayA is a V2Ray Linux client supporting global transparent proxy,
  40. compatible with SS, SSR, Trojan(trojan-go), PingTunnel protocols.
  41. endef
  42. define Package/v2raya/conffiles
  43. /etc/v2raya/
  44. /etc/config/v2raya
  45. endef
  46. WEB_FILE:=$(PKG_NAME)-web-$(PKG_VERSION).tar.gz
  47. define Download/v2raya-web
  48. URL:=https://github.com/v2rayA/v2rayA/releases/download/v$(PKG_VERSION)/
  49. URL_FILE:=web.tar.gz
  50. FILE:=$(WEB_FILE)
  51. HASH:=26eaea7b367b36b844c98c0b537fb05482595329ac5fe0ea2293f77bc9d1aac9
  52. endef
  53. define Build/Prepare
  54. $(call Build/Prepare/Default)
  55. ( \
  56. mkdir -p $(PKG_BUILD_DIR)/server/router/web ; \
  57. gzip -dc $(DL_DIR)/$(WEB_FILE) | $(HOST_TAR) -C $(PKG_BUILD_DIR)/server/router/web $(TAR_OPTIONS) ; \
  58. )
  59. endef
  60. define Package/v2raya/install
  61. $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
  62. $(INSTALL_DIR) $(1)/usr/bin/
  63. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/v2rayA $(1)/usr/bin/v2raya
  64. $(INSTALL_DIR) $(1)/etc/config/
  65. $(INSTALL_CONF) $(CURDIR)/files/v2raya.config $(1)/etc/config/v2raya
  66. $(INSTALL_DIR) $(1)/etc/init.d/
  67. $(INSTALL_BIN) $(CURDIR)/files/v2raya.init $(1)/etc/init.d/v2raya
  68. endef
  69. $(eval $(call Download,v2raya-web))
  70. $(eval $(call GoBinPackage,v2raya))
  71. $(eval $(call BuildPackage,v2raya))