From 1013e7cb1dca5c0835ca277a1f80c2f81549be42 Mon Sep 17 00:00:00 2001 From: A-BO <86697442+lwb1978@users.noreply.github.com> Date: Tue, 5 Aug 2025 22:50:16 +0800 Subject: [PATCH] sing-box: update from immortalwrt --- sing-box/Makefile | 149 +++++++++++++++++++++++----------------------- 1 file changed, 76 insertions(+), 73 deletions(-) diff --git a/sing-box/Makefile b/sing-box/Makefile index ca18ca2..03f39c1 100644 --- a/sing-box/Makefile +++ b/sing-box/Makefile @@ -1,7 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-only # -# This is free software, licensed under the GNU General Public License v3. -# See /LICENSE for more information. -# +# Copyright (C) 2022-2023 ImmortalWrt.org include $(TOPDIR)/rules.mk @@ -15,115 +14,119 @@ PKG_HASH:=1093254161d2dac2175a589eb0b43415b89b3e0c10bb2a09ac230f320d974c82 PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_CONFIG_DEPENDS:= \ + CONFIG_SING_BOX_BUILD_ACME \ + CONFIG_SING_BOX_BUILD_CLASH_API \ + CONFIG_SING_BOX_BUILD_DHCP \ + CONFIG_SING_BOX_BUILD_EMBEDDED_TOR \ + CONFIG_SING_BOX_BUILD_GRPC \ + CONFIG_SING_BOX_BUILD_GVISOR \ + CONFIG_SING_BOX_BUILD_QUIC \ + CONFIG_SING_BOX_BUILD_TAILSCALE \ + CONFIG_SING_BOX_BUILD_UTLS \ + CONFIG_SING_BOX_BUILD_V2RAY_API \ + CONFIG_SING_BOX_BUILD_WIREGUARD PKG_BUILD_DEPENDS:=golang/host PKG_BUILD_PARALLEL:=1 -PKG_USE_MIPS16:=0 PKG_BUILD_FLAGS:=no-mips16 GO_PKG:=github.com/sagernet/sing-box GO_PKG_BUILD_PKG:=$(GO_PKG)/cmd/sing-box -GO_PKG_LDFLAGS_X:=$(GO_PKG)/constant.Version=v$(PKG_VERSION) +GO_PKG_LDFLAGS_X:=$(GO_PKG)/constant.Version=$(PKG_VERSION) include $(INCLUDE_DIR)/package.mk include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk -define Package/$(PKG_NAME) +define Package/sing-box SECTION:=net CATEGORY:=Network SUBMENU:=Web Servers/Proxies - TITLE:=The universal proxy platform. - URL:=https://sing-box.sagernet.org + TITLE:=The universal proxy platform + URL:=https://sing-box.sagernet.org/ DEPENDS:=$(GO_ARCH_DEPENDS) \ +ca-bundle \ +kmod-inet-diag \ +kmod-netlink-diag \ - +kmod-tun + +SING_BOX_BUILD_GVISOR:kmod-tun + USERID:=sing-box=5566:sing-box=5566 endef -define Package/$(PKG_NAME)/description - Sing-box is a universal proxy platform which supports hysteria, SOCKS, - Shadowsocks, ShadowTLS, Tor, trojan, VLess, VMess, WireGuard and so on. +define Package/sing-box/description + Sing-box is a universal proxy platform which supports hysteria, SOCKS, Shadowsocks, + ShadowTLS, Tor, trojan, VLess, VMess, WireGuard and so on. endef -GO_PKG_TARGET_VARS:=$(filter-out CGO_ENABLED=%,$(GO_PKG_TARGET_VARS)) CGO_ENABLED=1 +define Package/sing-box/config + if PACKAGE_sing-box + config SING_BOX_BUILD_ACME + bool "Build with ACME TLS certificate issuer support" + default y -define Package/$(PKG_NAME)/config - menu "Customizing build tags" - depends on PACKAGE_sing-box + config SING_BOX_BUILD_CLASH_API + bool "Build with Clash API support" + default y - config SING_BOX_WITH_ACME - bool "Build with ACME TLS certificate issuer support" - default n + config SING_BOX_BUILD_DHCP + bool "Build with DHCP support" - config SING_BOX_WITH_CLASH_API - bool "Build with Clash API support (EXPERIMENTAL!!!)" - default y + config SING_BOX_BUILD_EMBEDDED_TOR + bool "Build with embedded Tor support" + depends on BROKEN - config SING_BOX_WITH_DHCP - bool "Build with DHCP support" - default y + config SING_BOX_BUILD_GRPC + bool "Build with standard gPRC support" + help + Standard gRPC has good compatibility but poor performance. - config SING_BOX_WITH_GRPC - bool "Build with standard gRPC support" - default n - help - sing-box has better performance gun-lite gRPC built-in by default. - This standard gRPC has better compatibility but poor performance. + config SING_BOX_BUILD_GVISOR + bool "Build with gVisor support" + default y - config SING_BOX_WITH_GVISOR - bool "Build with gVisor support" - default y + config SING_BOX_BUILD_QUIC + bool "Build with QUIC support" + default y + help + Required by HTTP3 DNS transports, Naive inbound, + Hysteria inbound / outbound, and v2ray QUIC transport. - config SING_BOX_WITH_QUIC - bool "Build with QUIC support" - default y - help - Required by HTTP3 DNS transports, Naive inbound, - Hysteria inbound / outbound, and v2ray QUIC transport. + config SING_BOX_BUILD_TAILSCALE + bool "Build with Tailscale support" + default y - config SING_BOX_WITH_UTLS - bool "Build with uTLS support" - default y + config SING_BOX_BUILD_UTLS + bool "Build with uTLS support" + default y - config SING_BOX_WITH_V2RAY_API - bool "Build with V2Ray API support (EXPERIMENTAL!!!)" - default n + config SING_BOX_BUILD_V2RAY_API + bool "Build with V2Ray API support" - config SING_BOX_WITH_WIREGUARD - bool "Build with WireGuard support" - default y - - endmenu + config SING_BOX_BUILD_WIREGUARD + bool "Build with WireGuard support" + default y + endif endef -PKG_CONFIG_DEPENDS:= \ - CONFIG_SING_BOX_WITH_ACME \ - CONFIG_SING_BOX_WITH_CLASH_API \ - CONFIG_SING_BOX_WITH_DHCP \ - CONFIG_SING_BOX_WITH_GRPC \ - CONFIG_SING_BOX_WITH_GVISOR \ - CONFIG_SING_BOX_WITH_QUIC \ - CONFIG_SING_BOX_WITH_UTLS \ - CONFIG_SING_BOX_WITH_V2RAY_API \ - CONFIG_SING_BOX_WITH_WIREGUARD - GO_PKG_TAGS:=$(subst $(space),$(comma),$(strip \ - $(if $(CONFIG_SING_BOX_WITH_ACME),with_acme) \ - $(if $(CONFIG_SING_BOX_WITH_CLASH_API),with_clash_api) \ - $(if $(CONFIG_SING_BOX_WITH_DHCP),with_dhcp) \ - $(if $(CONFIG_SING_BOX_WITH_GRPC),with_grpc) \ - $(if $(CONFIG_SING_BOX_WITH_GVISOR),with_gvisor) \ - $(if $(CONFIG_SING_BOX_WITH_QUIC),with_quic) \ - $(if $(CONFIG_SING_BOX_WITH_UTLS),with_utls) \ - $(if $(CONFIG_SING_BOX_WITH_V2RAY_API),with_v2ray_api) \ - $(if $(CONFIG_SING_BOX_WITH_WIREGUARD),with_wireguard) \ + $(if $(CONFIG_SING_BOX_BUILD_ACME),with_acme) \ + $(if $(CONFIG_SING_BOX_BUILD_CLASH_API),with_clash_api) \ + $(if $(CONFIG_SING_BOX_BUILD_DHCP),with_dhcp) \ + $(if $(CONFIG_SING_BOX_BUILD_EMBEDDED_TOR),with_embedded_tor) \ + $(if $(CONFIG_SING_BOX_BUILD_GRPC),with_grpc) \ + $(if $(CONFIG_SING_BOX_BUILD_GVISOR),with_gvisor) \ + $(if $(CONFIG_SING_BOX_BUILD_QUIC),with_quic) \ + $(if $(CONFIG_SING_BOX_BUILD_TAILSCALE),with_tailscale) \ + $(if $(CONFIG_SING_BOX_BUILD_UTLS),with_utls) \ + $(if $(CONFIG_SING_BOX_BUILD_V2RAY_API),with_v2ray_api) \ + $(if $(CONFIG_SING_BOX_BUILD_WIREGUARD),with_wireguard) \ )) -define Package/$(PKG_NAME)/conffiles +define Package/sing-box/conffiles endef -define Package/$(PKG_NAME)/install +define Package/sing-box/install $(call GoPackage/Package/Install/Bin,$(1)) endef