Makefile 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=luci-app-ssr-plus
  3. PKG_VERSION:=188
  4. PKG_RELEASE:=3
  5. PKG_CONFIG_DEPENDS:= \
  6. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_NONE_V2RAY \
  7. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \
  8. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Xray \
  9. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG \
  10. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_MosDNS \
  11. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria \
  12. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Tuic_Client \
  13. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadow_TLS \
  14. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks \
  15. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun \
  16. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy \
  17. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2 \
  18. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_NONE_Client \
  19. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client \
  20. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client \
  21. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_NONE_Server \
  22. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server \
  23. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server \
  24. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Simple_Obfs \
  25. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_V2ray_Plugin \
  26. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client \
  27. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server \
  28. CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan
  29. LUCI_TITLE:=SS/SSR/V2Ray/Trojan/NaiveProxy/Tuic/ShadowTLS/Hysteria/Socks5/Tun LuCI interface
  30. LUCI_PKGARCH:=all
  31. LUCI_DEPENDS:= \
  32. @(PACKAGE_libustream-mbedtls||PACKAGE_libustream-openssl||PACKAGE_libustream-wolfssl) \
  33. +coreutils +coreutils-base64 +dns2socks +dns2tcp +dnsmasq-full +@PACKAGE_dnsmasq_full_ipset +ipset +kmod-ipt-nat \
  34. +ip-full +iptables +iptables-mod-tproxy +lua +lua-neturl +libuci-lua +microsocks \
  35. +tcping +resolveip +shadowsocksr-libev-ssr-check +uclient-fetch \
  36. +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray:curl \
  37. +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray:v2ray-core \
  38. +PACKAGE_$(PKG_NAME)_INCLUDE_Xray:curl \
  39. +PACKAGE_$(PKG_NAME)_INCLUDE_Xray:xray-core \
  40. +PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG:chinadns-ng \
  41. +PACKAGE_$(PKG_NAME)_INCLUDE_MosDNS:mosdns \
  42. +PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria:hysteria \
  43. +PACKAGE_$(PKG_NAME)_INCLUDE_Tuic_Client:tuic-client \
  44. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadow_TLS:shadow-tls \
  45. +PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks:ipt2socks \
  46. +PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun-client \
  47. +PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy:naiveproxy \
  48. +PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2:redsocks2 \
  49. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-local \
  50. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-redir \
  51. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server:shadowsocks-libev-ss-server \
  52. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client:shadowsocks-rust-sslocal \
  53. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server:shadowsocks-rust-ssserver \
  54. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Simple_Obfs:simple-obfs \
  55. +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_V2ray_Plugin:v2ray-plugin \
  56. +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-local \
  57. +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-redir \
  58. +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server:shadowsocksr-libev-ssr-server \
  59. +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:trojan
  60. define Package/$(PKG_NAME)/config
  61. select PACKAGE_luci-lib-ipkg if PACKAGE_$(PKG_NAME)
  62. choice
  63. prompt "Shadowsocks Client Selection"
  64. default PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client if aarch64 || x86_64
  65. default PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client
  66. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_NONE_Client
  67. bool "None"
  68. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client
  69. bool "Shadowsocks-libev"
  70. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client
  71. bool "Shadowsocks-rust"
  72. depends on aarch64||arm||i386||mips||mipsel||x86_64
  73. depends on !(TARGET_x86_geode||TARGET_x86_legacy)
  74. endchoice
  75. choice
  76. prompt "Shadowsocks Server Selection"
  77. default PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server if aarch64
  78. default PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server if i386||x86_64||arm
  79. default PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_NONE_Server
  80. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_NONE_Server
  81. bool "None"
  82. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server
  83. bool "Shadowsocks-libev"
  84. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server
  85. bool "Shadowsocks-rust"
  86. depends on aarch64||arm||i386||mips||mipsel||x86_64
  87. depends on !(TARGET_x86_geode||TARGET_x86_legacy)
  88. endchoice
  89. choice
  90. prompt "V2ray-core Selection"
  91. default PACKAGE_$(PKG_NAME)_INCLUDE_Xray if aarch64||arm||i386||x86_64
  92. default PACKAGE_$(PKG_NAME)_INCLUDE_NONE_V2RAY
  93. config PACKAGE_$(PKG_NAME)_INCLUDE_NONE_V2RAY
  94. bool "None"
  95. config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray
  96. bool "V2ray-core"
  97. config PACKAGE_$(PKG_NAME)_INCLUDE_Xray
  98. bool "Xray-core"
  99. endchoice
  100. config PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG
  101. bool "Include ChinaDNS-NG"
  102. default y
  103. config PACKAGE_$(PKG_NAME)_INCLUDE_MosDNS
  104. bool "Include MosDNS"
  105. default y if i386||x86_64||arm
  106. config PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria
  107. bool "Include Hysteria"
  108. select PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG
  109. default n
  110. config PACKAGE_$(PKG_NAME)_INCLUDE_Tuic_Client
  111. bool "Include Tuic-Client"
  112. select PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG
  113. select PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks
  114. depends on aarch64||arm||i386||x86_64
  115. depends on !(TARGET_x86_geode||TARGET_x86_legacy)
  116. default n
  117. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadow_TLS
  118. bool "Include Shadow-TLS"
  119. select PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG
  120. select PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client
  121. depends on aarch64||arm||x86_64
  122. depends on !(TARGET_x86_geode||TARGET_x86_legacy)
  123. default n
  124. config PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks
  125. bool "Include IPT2Socks"
  126. default n
  127. config PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun
  128. bool "Include Kcptun"
  129. default n
  130. config PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy
  131. bool "Include NaiveProxy"
  132. depends on !(arc||armeb||mips||mips64||powerpc||TARGET_gemini)
  133. default n
  134. config PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2
  135. bool "Include Redsocks2"
  136. default n
  137. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Simple_Obfs
  138. bool "Include Shadowsocks Simple Obfs Plugin"
  139. default y
  140. config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_V2ray_Plugin
  141. bool "Include Shadowsocks V2ray Plugin"
  142. default n
  143. config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client
  144. bool "Include ShadowsocksR Libev Client"
  145. default y
  146. config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server
  147. bool "Include ShadowsocksR Libev Server"
  148. default y if i386||x86_64||arm
  149. config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan
  150. bool "Include Trojan"
  151. select PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks
  152. default n
  153. endef
  154. define Package/$(PKG_NAME)/conffiles
  155. /etc/config/shadowsocksr
  156. /etc/ssrplus/
  157. endef
  158. include $(TOPDIR)/feeds/luci/luci.mk
  159. # call BuildPackage - OpenWrt buildroot signature