2021-09-08 22:53:45 +08:00
# Copyright (C) 2021 xiaorouji
#
# This is free software, licensed under the GNU General Public License v3.
#
i n c l u d e $( TOPDIR ) / r u l e s . m k
PKG_NAME := hysteria
PKG_VERSION := 0.8.5
PKG_RELEASE := 1
PKG_SOURCE := $( PKG_NAME) -$( PKG_VERSION) .tar.gz
PKG_SOURCE_URL := https://codeload.github.com/HyNetwork/hysteria/tar.gz/v$( PKG_VERSION) ?
2021-09-24 19:49:47 +08:00
PKG_HASH := skip
2021-09-08 22:53:45 +08:00
PKG_CONFIG_DEPENDS := \
CONFIG_HYSTERIA_COMPRESS_GOPROXY \
CONFIG_HYSTERIA_COMPRESS_UPX
PKG_BUILD_DEPENDS := golang/host
PKG_BUILD_PARALLEL := 1
PKG_USE_MIPS16 := 0
GO_PKG := github.com/tobyxdd/hysteria
GO_PKG_BUILD_PKG := $( GO_PKG) /cmd
GO_PKG_LDFLAGS := -s -w
GO_PKG_LDFLAGS_X := \
main.appVersion= $( PKG_VERSION)
i n c l u d e $( INCLUDE_DIR ) / p a c k a g e . m k
i n c l u d e $( TOPDIR ) / f e e d s / p a c k a g e s / l a n g / g o l a n g / g o l a n g - p a c k a g e . m k
d e f i n e P a c k a g e / $( PKG_NAME )
SECTION:= net
CATEGORY:= Network
SUBMENU:= Web Servers/Proxies
DEPENDS:= $$ ( GO_ARCH_DEPENDS)
TITLE:= Hysteria is a feature-packed network utility optimized for networks of poor quality ( e.g. satellite connections, congested public Wi-Fi, connecting from China to servers abroad)
URL:= https://github.com/HyNetwork/hysteria
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) / c o n f i g
m e n u "Configuration"
depends on PACKAGE_$( PKG_NAME)
c o n f i g H Y S T E R I A _ C O M P R E S S _ G O P R O X Y
bool "Compiling with GOPROXY proxy"
default n
c o n f i g H Y S T E R I A _ C O M P R E S S _ U P X
bool "Compress executable files with UPX"
2021-10-25 18:05:09 +08:00
depends on !mips64
2021-09-08 22:53:45 +08:00
default y
e n d m e n u
e n d e f
i f e q ( $( CONFIG_HYSTERIA_COMPRESS_GOPROXY ) , y )
export GO111MODULE = on
export GOPROXY = https://goproxy.io
e n d i f
d e f i n e B u i l d / C o m p i l e
$( call GoPackage/Build/Compile)
i f e q ( $( CONFIG_HYSTERIA_COMPRESS_UPX ) , y )
$( STAGING_DIR_HOST) /bin/upx --lzma --best $( GO_PKG_BUILD_BIN_DIR) /cmd
e n d i f
e n d e f
d e f i n e P a c k a g e / $( PKG_NAME ) / i n s t a l l
$( call GoPackage/Package/Install/Bin,$( PKG_INSTALL_DIR) )
$( INSTALL_DIR) $( 1) /usr/bin/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/cmd $( 1) /usr/bin/hysteria
e n d e f
$( eval $ ( call GoBinPackage ,$ ( PKG_NAME ) ) )
$( eval $ ( call BuildPackage ,$ ( PKG_NAME ) ) )