91 lines
3.2 KiB
Makefile
91 lines
3.2 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Copyright (C) 2017-2020 Yousong Zhou <yszhou4tech@gmail.com>
|
|
# Copyright (C) 2021 ImmortalWrt.org
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=shadowsocks-rust
|
|
PKG_VERSION:=1.19.1
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE_HEADER:=shadowsocks-v$(PKG_VERSION)
|
|
PKG_SOURCE_BODY:=unknown-linux-musl
|
|
PKG_SOURCE_FOOTER:=tar.xz
|
|
|
|
ifeq ($(filter $(ARCH),mips mipsel),)
|
|
PKG_SOURCE_URL:=https://github.com/shadowsocks/shadowsocks-rust/releases/download/v$(PKG_VERSION)/
|
|
else
|
|
PKG_SOURCE_URL:=https://github.com/sbwml/shadowsocks-rust-mips/releases/download/v$(PKG_VERSION)/
|
|
endif
|
|
|
|
ifeq ($(ARCH),aarch64)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).aarch64-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=6bb232bcc968b540739c36e8b23e3f319e5e930f3794ba96a3e18d10331205e1
|
|
else ifeq ($(ARCH),arm)
|
|
# Referred to golang/golang-values.mk
|
|
ARM_CPU_FEATURES:=$(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE))))
|
|
ifeq ($(ARM_CPU_FEATURES),)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).arm-$(PKG_SOURCE_BODY)eabi.$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=39d12cbcb6e3eea792c380dcf0d8fa8b0eeb1633c7d13e59b1c9ea21d1c4419d
|
|
else
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).arm-$(PKG_SOURCE_BODY)eabihf.$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=f32b99ea596e357db2ad3be801b3b00166346dbf9187b6e09f9017da4edb3fa2
|
|
endif
|
|
else ifeq ($(ARCH),i386)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).i686-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=4cea970b5cc2707cbbeb3444cfb707f23805491487a697d9d6661942c61b5702
|
|
else ifeq ($(ARCH),x86_64)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).x86_64-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=8477120a1fccf4e9cff0d98c7846c2e16dcc895b4fb45433811fb3ae399b372f
|
|
else ifeq ($(ARCH),mips)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).mips-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=0ef14188f861da639c5b3318efa42f2fc05b8298cc3ef709e80da132d8db3a01
|
|
else ifeq ($(ARCH),mipsel)
|
|
PKG_SOURCE:=$(PKG_SOURCE_HEADER).mipsel-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER)
|
|
PKG_HASH:=c06f21aaa16f09ff4f94ba2a2bff7d0cae8cccd33857707bf58be1fb9b7ef513
|
|
# Set the default value to make OpenWrt Package Checker happy
|
|
else
|
|
PKG_SOURCE:=dummy
|
|
PKG_HASH:=dummy
|
|
endif
|
|
|
|
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
|
|
PKG_LICENSE:=MIT
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
TAR_CMD:=$(HOST_TAR) -C $(PKG_BUILD_DIR) $(TAR_OPTIONS)
|
|
|
|
define Package/shadowsocks-rust/Default
|
|
define Package/shadowsocks-rust-$(1)
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
SUBMENU:=Web Servers/Proxies
|
|
TITLE:=shadowsocks-rust $(1)
|
|
URL:=https://github.com/shadowsocks/shadowsocks-rust
|
|
DEPENDS:=@(aarch64||arm||i386||mips||mipsel||x86_64) @!(TARGET_x86_geode||TARGET_x86_legacy)
|
|
endef
|
|
|
|
define Package/shadowsocks-rust-$(1)/install
|
|
$$(INSTALL_DIR) $$(1)/usr/bin
|
|
$$(INSTALL_BIN) $$(PKG_BUILD_DIR)/$(1) $$(1)/usr/bin
|
|
endef
|
|
endef
|
|
|
|
SHADOWSOCKS_COMPONENTS:=sslocal ssmanager ssserver ssurl ssservice
|
|
define shadowsocks-rust/templates
|
|
$(foreach component,$(SHADOWSOCKS_COMPONENTS),
|
|
$(call Package/shadowsocks-rust/Default,$(component))
|
|
)
|
|
endef
|
|
$(eval $(call shadowsocks-rust/templates))
|
|
|
|
define Build/Compile
|
|
endef
|
|
|
|
$(foreach component,$(SHADOWSOCKS_COMPONENTS), \
|
|
$(eval $(call BuildPackage,shadowsocks-rust-$(component))) \
|
|
)
|