From dc1855d93adf60411190ee590aafcf903a616d31 Mon Sep 17 00:00:00 2001 From: Tianling Shen Date: Mon, 6 Jun 2022 18:56:06 +0800 Subject: [PATCH] sagernet-core: initial package Signed-off-by: Tianling Shen --- sagernet-core/Makefile | 86 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 sagernet-core/Makefile diff --git a/sagernet-core/Makefile b/sagernet-core/Makefile new file mode 100644 index 000000000..cb7e4bf45 --- /dev/null +++ b/sagernet-core/Makefile @@ -0,0 +1,86 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=sagernet-core +BASE_VERSION:=5.0.12 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/SagerNet/v2ray-core.git +PKG_SOURCE_DATE:=2022-06-05 +PKG_SOURCE_VERSION:=3853bd929f8d9acf6b2138127c7250ca217336bc +PKG_MIRROR_HASH:=7a9751e6dd362d4db9762ee93519cb5aac374348c5366e15038ef5f3dfc5fede +PKG_VERSION:=$(BASE_VERSION)-$(PKG_SOURCE_DATE)-$(call version_abbrev,$(PKG_SOURCE_VERSION)) + +PKG_LICENSE:=GPL-3.0-or-later +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/v2fly/v2ray-core/v5 +GO_PKG_BUILD_PKG:=$(GO_PKG)/main +GO_PKG_LDFLAGS_X:= \ + $(GO_PKG).build=OpenWrt \ + $(GO_PKG).version=$(BASE_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/sagernet/template + TITLE:=An enhanced v2ray edition for SagerNet + SECTION:=net + CATEGORY:=Network + URL:=https://sagernet.org +endef + +define Package/sagernet-core + $(call Package/sagernet/template) + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle + CONFLICTS:=v2ray-core xray-core +endef + +define Package/sagernet-extra + $(call Package/sagernet/template) + TITLE+= (extra resources) + DEPENDS:=sagernet-core + CONFLICTS:=v2ray-extra + PKGARCH:=all +endef + +define Package/sagernet/description + Project V is a set of network tools that help you to build your own computer network. + It secures your network connections and thus protects your privacy. +endef + +define Package/sagernet-core/description + $(call Package/sagernet/description) + + This is a v2ray-core fork for SagerNet. +endef + +define Package/sagernet-extra/description + $(call Package/sagernet/description) + + This includes extra resources for sagernet-core. +endef + +define Package/sagernet-core/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/main $(1)/usr/bin/v2ray + $(LN) v2ray $(1)/usr/bin/xray +endef + +define Package/sagernet-extra/install + $(INSTALL_DIR) $(1)/usr/share/v2ray/ + $(CP) $(PKG_BUILD_DIR)/release/extra/* $(1)/usr/share/v2ray/ +endef + +$(eval $(call BuildPackage,sagernet-core)) +$(eval $(call BuildPackage,sagernet-extra))