Makefile 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2017-2020 Yousong Zhou <[email protected]>
  4. # Copyright (C) 2021 ImmortalWrt.org
  5. include $(TOPDIR)/rules.mk
  6. PKG_NAME:=tuic-client
  7. PKG_VERSION:=1.0.0
  8. PKG_RELEASE:=1
  9. PKG_LICENSE_FILES:=LICENSE
  10. PKG_MAINTAINER:=Tianling Shen <[email protected]>
  11. include $(INCLUDE_DIR)/package.mk
  12. TUIC_TYPE:=tuic-client-$(PKG_VERSION)
  13. TUIC_FOOT:=unknown-linux-musl
  14. ifeq ($(ARCH),aarch64)
  15. TUIC_ARCH:=$(TUIC_TYPE)-aarch64-$(TUIC_FOOT)
  16. PKG_HASH:=c29eaaf3bc05115acc7453ac26bacf9aff65211b1e8ca7f771b818248bec8601
  17. else ifeq ($ARCH),arm64)
  18. ARM_CPU_FEATURES:=$(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE))))
  19. ifeq ($(ARM_CPU_FEATURES),)
  20. TUIC_ARCH:=$(TUIC_TYPE)-armv7-$(TUIC_FOOT)eabi
  21. PKG_HASH:=33a83ab05dc1a598552bf1f27114502b12c94b6e5333c6ac2def3739c00a4daf
  22. else
  23. TUIC_ARCH:=$(TUIC_TYPE)-armv7-$(TUIC_FOOT)eabihf
  24. PKG_HASH:=e2cc1d81ac376ff2a94976e78c861f5cd21ad809ff5b587ae967e2a63e4c35e4
  25. endif
  26. else ifeq ($(ARCH),i686)
  27. TUIC_ARCH:=$(TUIC_TYPE)-i686-$(TUIC_FOOT)
  28. PKG_HASH:=67d930b4381a8848bf98acbccb538c73b72ca9dde0aed3705f73e62a9922f758
  29. else ifeq ($(ARCH),x86_64)
  30. TUIC_ARCH:=$(TUIC_TYPE)-x86_64-$(TUIC_FOOT)
  31. PKG_HASH:=180c562691247a7feddf553706bc8fd5b5b9de3027154f94a767ea907a45e2de
  32. endif
  33. define Download/tuic-client
  34. URL:=https://github.com/EAimTY/tuic/releases/download/$(TUIC_TYPE)/
  35. URL_FILE:=$(TUIC_ARCH)
  36. FILE:=$(TUIC_ARCH)
  37. HASH:=$(PKG_HASH)
  38. endef
  39. define Package/tuic-client
  40. SECTION:=net
  41. CATEGORY:=Network
  42. SUBMENU:=Web Servers/Proxies
  43. TITLE:=Delicately-TUICed 0-RTT proxy protocol
  44. URL:=https://github.com/EAimTY/tuic/
  45. DEPENDS:=@USE_MUSL @(aarch64||arm||i686||x86_64) @!(TARGET_x86_geode||TARGET_x86_legacy)
  46. #PKGARCH:=all aarch64 arm i686 x86_64
  47. endef
  48. define Build/Prepare
  49. $(call Build/Prepare/Default)
  50. ifneq ($(CONFIG_PACKAGE_tuic-client),)
  51. $(call Download,tuic-client)
  52. endif
  53. endef
  54. define Build/Compile
  55. endef
  56. define Package/tuic-client/install
  57. $(INSTALL_DIR) $(1)/usr/bin
  58. $(INSTALL_BIN) $(DL_DIR)/$(TUIC_ARCH) $(1)/usr/bin/tuic-client
  59. chmod +x $(1)/usr/bin/tuic-client
  60. endef
  61. $(eval $(call BuildPackage,tuic-client))