Ravenports generated: 10 May 2024 12:41
[ravenports.git] / bucket_23 / shadowsocks-libev
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               shadowsocks-libev
4 VERSION=                3.3.5
5 REVISION=               3
6 KEYWORDS=               net
7 VARIANTS=               standard
8 SDESC[standard]=        Secure socks5 proxy
9 HOMEPAGE=               https://github.com/shadowsocks/shadowsocks-libev/blob/master/README.md
10 CONTACT=                nobody
11
12 DOWNLOAD_GROUPS=        main bloom cork ipset
13 SITES[main]=            GITHUB/shadowsocks:shadowsocks-libev:v3.3.5
14 SITES[bloom]=           GITHUB/shadowsocks:libbloom:437e1ad:libbloom
15 SITES[cork]=            GITHUB/shadowsocks:libcork:074e074:libcork
16 SITES[ipset]=           GITHUB/shadowsocks:ipset:3ea7fe3:libipset
17 DISTFILE[1]=            generated:main
18 DISTFILE[2]=            generated:bloom
19 DISTFILE[3]=            generated:cork
20 DISTFILE[4]=            generated:ipset
21 DF_INDEX=               1 2 3 4
22 SPKGS[standard]=        complete
23                         primary
24                         man
25                         docs
26
27 OPTIONS_AVAILABLE=      none
28 OPTIONS_STANDARD=       none
29
30 BUILD_DEPENDS=          asciidoc:single:standard
31                         libev:dev:standard
32                         libsodium:dev:standard
33                         xmlto:single:standard
34                         c-ares:dev:standard
35                         mbedtls13:dev:standard
36 BUILDRUN_DEPENDS=       libev:primary:standard
37                         mbedtls13:primary:standard
38                         libsodium:primary:standard
39                         c-ares:primary:standard
40
41 USES=                   autoreconf cpe gmake libtool pcre
42
43 LICENSE=                GPLv3+:primary
44 LICENSE_TERMS=          primary:{{WRKSRC}}/COPYING
45 LICENSE_FILE=           GPLv3+:stock
46 LICENSE_SCHEME=         solo
47
48 CPE_VENDOR=             shadowsocks
49 FPC_EQUIVALENT=         net/shadowsocks-libev
50
51 MUST_CONFIGURE=         gnu
52 CONFIGURE_ARGS=         --enable-shared
53
54 INSTALL_TARGET=         install-strip
55 SOVERSION=              2.0.0
56 RC_SUBR=                shadowsocks_libev:primary
57
58 post-install:
59         ${MKDIR} ${STAGEDIR}${PREFIX}/etc/shadowsocks-libev
60         ${INSTALL_DATA} ${WRKSRC}/debian/config.json \
61                 ${STAGEDIR}${PREFIX}/etc/shadowsocks-libev/config.json.sample
62         # bash support
63         ${MKDIR} ${STAGEDIR}${PREFIX}/share/bash-completion/completions
64 .for c in ss-local ss-manager ss-redir ss-server ss-tunnel
65         ${INSTALL_DATA} ${WRKSRC}/completions/bash/${c} \
66                 ${STAGEDIR}${PREFIX}/share/bash-completion/completions/${c}
67 .endfor
68         # zsh support
69         ${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions
70 .for c in _ss-local _ss-manager _ss-redir _ss-server _ss-tunnel
71         ${INSTALL_DATA} ${WRKSRC}/completions/zsh/${c} \
72                 ${STAGEDIR}${PREFIX}/share/zsh/site-functions/${c}
73 .endfor
74
75 [FILE:879:descriptions/desc.primary]
76 Shadowsocks: A secure SOCKS5 proxy
77
78 Shadowsocks is a secure split proxy loosely based on SOCKS5.
79
80  client <---> ss-local <--[encrypted]--> ss-remote <---> target
81
82 The Shadowsocks local component (ss-local) acts like a traditional SOCKS5
83 server and provides proxy service to clients. It encrypts and forwards data
84 streams and packets from the client to the Shadowsocks remote component
85 (ss-remote), which decrypts and forwards to the target. Replies from target
86 are similarly encrypted and relayed by ss-remote back to ss-local, which
87 decrypts and eventually returns to the original client.
88
89 Shadowsocks-libev is a lightweight secured SOCKS5 proxy for embedded
90 devices and low-end boxes.
91
92 Shadowsocks-libev is written in pure C and depends on libev. It's designed
93 to be a very simple implementation of shadowsocks protocol, in order to
94 keep the resource usage as low as possible.
95
96
97 [FILE:459:distinfo]
98 cca6f46d9ac51c290cd50b8c26286a347bfd189d686340f32e8b264b630a166a       303368 shadowsocks-shadowsocks-libev-3.3.5.tar.gz
99 bc10f87b9f06711e2d2783dc53b04dceca7eed952fe0a89a35794952afa495d5      1208176 shadowsocks-libbloom-437e1ad.tar.gz
100 6bb33c93dcbb7fbbeb7d82994e769bb05cdd168d8ebf5c0e1921bd22327fe54e       186531 shadowsocks-libcork-074e074.tar.gz
101 e7b487c21a5352a3c9faef3256ed1a539f7ee46f38bf57922340c125c720da61        64895 shadowsocks-ipset-3ea7fe3.tar.gz
102
103
104 [FILE:472:manifests/plist.primary]
105 @sample etc/shadowsocks-libev/config.json.sample
106 %%ONLY-LINUX%%bin/
107  ss-nat
108  ss-redir
109 bin/
110  ss-local
111  ss-manager
112  ss-server
113  ss-tunnel
114 include/shadowsocks.h
115 lib/
116  libshadowsocks-libev.so
117  libshadowsocks-libev.so.%%SOMAJOR%%
118  libshadowsocks-libev.so.%%SOVERSION%%
119 lib/pkgconfig/shadowsocks-libev.pc
120 share/bash-completion/completions/
121  ss-local
122  ss-manager
123  ss-redir
124  ss-server
125  ss-tunnel
126 share/zsh/site-functions/
127  _ss-local
128  _ss-manager
129  _ss-redir
130  _ss-server
131  _ss-tunnel
132
133
134 [FILE:146:manifests/plist.man]
135 share/man/man1/
136  ss-local.1.gz
137  ss-manager.1.gz
138  ss-nat.1.gz
139  ss-redir.1.gz
140  ss-server.1.gz
141  ss-tunnel.1.gz
142 share/man/man8/shadowsocks-libev.8.gz
143
144
145 [FILE:145:manifests/plist.docs]
146 share/doc/shadowsocks-libev/
147  shadowsocks-libev.html
148  ss-local.html
149  ss-manager.html
150  ss-nat.html
151  ss-redir.html
152  ss-server.html
153  ss-tunnel.html
154
155
156 [FILE:284:patches/patch-libcork_include_libcork_config_bsd.h]
157 --- libcork/include/libcork/config/bsd.h.orig   2019-07-24 14:01:14 UTC
158 +++ libcork/include/libcork/config/bsd.h
159 @@ -27,7 +27,9 @@
160  #error "Cannot determine system endianness"
161  #endif
162  
163 +#if !defined(__NetBSD__)
164  #define CORK_HAVE_REALLOCF  1
165 +#endif
166  #define CORK_HAVE_PTHREADS  1
167  
168  
169
170
171 [FILE:656:patches/patch-libcork_src_libcork_posix_env.c]
172 --- libcork/src/libcork/posix/env.c.orig        2019-07-24 14:01:14 UTC
173 +++ libcork/src/libcork/posix/env.c
174 @@ -194,12 +194,19 @@ cork_env_set_vars(void *user_data, struc
175   *
176   * [1] http://www.gnu.org/software/gnulib/manual/html_node/clearenv.html
177   */
178 +
179 +#if (defined(__FreeBSD__) && (__FreeBSD__ < 14) && !defined(__MidnightBSD__)) || defined(__NetBSD__)
180 +/* Since FreeBSD 14.0-CURRENT, the clearenv(3) function was added to stdlib.
181 + * See https://reviews.freebsd.org/R10:597b02675751e48dd04777f1e91fee382bf3a966
182 + */
183 +
184  static void
185  clearenv(void)
186  {
187      *environ = NULL;
188  }
189  
190 +#endif
191  #else
192  /* Otherwise assume that we have clearenv available. */
193  #endif
194
195
196 [FILE:807:files/shadowsocks_libev.in]
197 #!/bin/sh
198 #
199 # PROVIDE: shadowsocks-libev
200 # REQUIRE: LOGIN cleanvar
201 # KEYWORD: shutdown
202 #
203 # Add the following lines to /etc/rc.conf to enable shadowsocks-libev:
204 # shadowsocks_libev_enable (bool):  Set to "NO" by default.
205 #      Set to "YES" to enable shadowsocks-libev.
206 # shadowsocks_libev_config (path): Shadowsocks config file.
207 #      Defaults to "%%PREFIX%%/etc/shadowsocks-libev/config.json"
208
209
210 . /etc/rc.subr
211
212 name="shadowsocks_libev"
213 rcvar=shadowsocks_libev_enable
214
215
216 load_rc_config $name
217
218 : ${shadowsocks_libev_enable:="NO"}
219 : ${shadowsocks_libev_config="%%PREFIX%%/etc/shadowsocks-libev/config.json"}
220
221 command="%%PREFIX%%/bin/ss-server" 
222 pidfile="/var/run/shadowsocks-libev.pid"
223 required_files="${shadowsocks_libev_config}"
224
225 command_args="-f $pidfile -c $shadowsocks_libev_config"
226
227 run_rc_command "$1"
228