| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- # SPDX-License-Identifier: GPL-2.0-only
- #
- # Copyright (C) 2025 ImmortalWrt.org
- #
- include $(TOPDIR)/rules.mk
- PKG_NAME:=tuic-client
- PKG_VERSION:=1.6.7
- PKG_RELEASE:=1
- PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
- PKG_SOURCE_URL:=https://codeload.github.com/Itsusinn/tuic/tar.gz/v$(PKG_VERSION)?
- PKG_HASH:=72991ce379638445c7f840993f7fafa0f391c7d4169ec51fe25a45cb7754c577
- PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
- PKG_MAINTAINER:=Tianling Shen <[email protected]>
- PKG_LICENSE:=GPL-3.0-only
- PKG_LICENSE_FILES:=LICENSE
- PKG_BUILD_DEPENDS:=rust/host
- PKG_BUILD_PARALLEL:=1
- include $(INCLUDE_DIR)/package.mk
- include $(TOPDIR)/feeds/packages/lang/rust/rust-package.mk
- TAR_OPTIONS += --strip-components 1
- TAR_CMD=$(HOST_TAR) -C $(1) $(TAR_OPTIONS)
- define Package/tuic-client
- SECTION:=net
- CATEGORY:=Network
- SUBMENU:=Web Servers/Proxies
- TITLE:=TUIC proxy protocol client
- URL:=https://github.com/EAimTY/tuic
- DEPENDS:=@(aarch64||arm||mips||mipsel||x86_64||i386||i686||riscv64||loongarch64)
- endef
- define Package/tuic-client/description
- Delicately-TUICed 0-RTT proxy protocol client.
- endef
- define Select/Features
- $(strip \
- $(if $(findstring x86_64,$(RUSTC_TARGET_ARCH)),--features jemallocator) \
- $(if $(findstring aarch64,$(RUSTC_TARGET_ARCH)),--features jemallocator) \
- $(if $(or \
- $(findstring arm,$(RUSTC_TARGET_ARCH)), \
- $(findstring mips,$(RUSTC_TARGET_ARCH)), \
- $(findstring mipsel,$(RUSTC_TARGET_ARCH)), \
- $(findstring i686,$(RUSTC_TARGET_ARCH)), \
- $(findstring i386,$(RUSTC_TARGET_ARCH)), \
- $(findstring riscv64,$(RUSTC_TARGET_ARCH)), \
- $(findstring loongarch64,$(RUSTC_TARGET_ARCH)) \
- ),--no-default-features --features ring) \
- )
- endef
- define Build/Compile
- ( \
- pushd $(PKG_BUILD_DIR) ; \
- $(CARGO_PKG_CONFIG_VARS) \
- cargo build --release \
- -p tuic-client \
- --target $(RUSTC_TARGET_ARCH) \
- $(call Select/Features) ; \
- popd ; \
- )
- endef
- define Package/tuic-client/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/target/$(RUSTC_TARGET_ARCH)/release/tuic-client $(1)/usr/bin/
- endef
- $(eval $(call RustBinPackage,tuic-client))
- $(eval $(call BuildPackage,tuic-client))
|