master hovercats/oakiss / pkg / curl / gen.lua
  1cflags{
  2	'-std=c99', '-Wall', '-Wpedantic', '-Wno-maybe-uninitialized',
  3	'-D _GNU_SOURCE',
  4	'-D HAVE_CONFIG_H',
  5	'-D BUILDING_LIBCURL',
  6	'-D CURL_STATICLIB',
  7	'-I $outdir',
  8	'-I $outdir/include/curl',
  9	'-I $outdir/include',
 10	'-I $srcdir/lib',
 11	'-I $srcdir/lib/curlx',
 12	'-I $srcdir/src',
 13	'-isystem $builddir/pkg/bearssl/include',
 14	'-isystem $builddir/pkg/linux-headers/include',
 15	'-isystem $builddir/pkg/zlib/include',
 16}
 17
 18build('cat', '$outdir/curl_config.h', {
 19	'$dir/curl_config.h',
 20	'$builddir/probe/SIZEOF_LONG',
 21	'$builddir/probe/SIZEOF_SIZE_T',
 22	'$builddir/probe/SIZEOF_TIME_T',
 23})
 24
 25-- src/include/curl/Makefile.am:/^pkginclude_HEADERS
 26pkg.hdrs = copy('$outdir/include/curl', '$srcdir/include/curl', {
 27	'curl.h', 'curlver.h', 'easy.h', 'mprintf.h', 'stdcheaders.h', 'multi.h',
 28	'typecheck-gcc.h', 'system.h', 'urlapi.h', 'options.h', 'header.h', 'websockets.h',
 29})
 30pkg.deps = {
 31	'$outdir/curl_config.h',
 32	'$gendir/headers',
 33	'pkg/bearssl/headers',
 34	'pkg/linux-headers/headers',
 35	'pkg/zlib/headers',
 36}
 37
 38-- src/lib/Makefile.inc:/^CSOURCES
 39lib('libcurl.a', [[
 40	lib/(
 41		altsvc.c
 42		amigaos.c
 43		asyn-ares.c
 44		asyn-base.c
 45		asyn-thrdd.c
 46		bufq.c
 47		bufref.c
 48		cf-dns.c
 49		cf-h1-proxy.c
 50		cf-h2-proxy.c
 51		cf-haproxy.c
 52		cf-https-connect.c
 53		cf-ip-happy.c
 54		cf-socket.c
 55		cfilters.c
 56		conncache.c
 57		connect.c
 58		content_encoding.c
 59		cookie.c
 60		cshutdn.c
 61		curl_addrinfo.c
 62		curl_endian.c
 63		curl_fnmatch.c
 64		curl_fopen.c
 65		curl_get_line.c
 66		curl_gethostname.c
 67		curl_gssapi.c
 68		curl_memrchr.c
 69		curl_ntlm_core.c
 70		curl_range.c
 71		curl_sasl.c
 72		curl_sha512_256.c
 73		curl_share.c
 74		curl_sspi.c
 75		curl_threads.c
 76		curl_trc.c
 77		cw-out.c
 78		cw-pause.c
 79		dict.c
 80		dnscache.c
 81		doh.c
 82		dynhds.c
 83		easy.c
 84		easygetopt.c
 85		easyoptions.c
 86		escape.c
 87		fake_addrinfo.c
 88		file.c
 89		fileinfo.c
 90		formdata.c
 91		ftp.c
 92		ftplistparser.c
 93		getenv.c
 94		getinfo.c
 95		gopher.c
 96		hash.c
 97		headers.c
 98		hmac.c
 99		hostip.c
100		hostip4.c
101		hostip6.c
102		hsts.c
103		http.c
104		http1.c
105		http2.c
106		http_aws_sigv4.c
107		http_chunks.c
108		http_digest.c
109		http_negotiate.c
110		http_ntlm.c
111		http_proxy.c
112		httpsrr.c
113		idn.c
114		if2ip.c
115		imap.c
116		ldap.c
117		llist.c
118		macos.c
119		md4.c
120		md5.c
121		memdebug.c
122		mime.c
123		mprintf.c
124		mqtt.c
125		multi.c
126		multi_ev.c
127		multi_ntfy.c
128		netrc.c
129		noproxy.c
130		openldap.c
131		parsedate.c
132		pingpong.c
133		pop3.c
134		progress.c
135		protocol.c
136		psl.c
137		rand.c
138		ratelimit.c
139		request.c
140		rtsp.c
141		select.c
142		sendf.c
143		setopt.c
144		sha256.c
145		slist.c
146		smb.c
147		smtp.c
148		socketpair.c
149		socks.c
150		socks_gssapi.c
151		socks_sspi.c
152		splay.c
153		strcase.c
154		strequal.c
155		strerror.c
156		system_win32.c
157		telnet.c
158		tftp.c
159		thrdpool.c
160		thrdqueue.c
161		transfer.c
162		uint-bset.c
163		uint-hash.c
164		uint-spbset.c
165		uint-table.c
166		url.c
167		urlapi.c
168		version.c
169		ws.c
170		curlx/(
171			base64.c
172			basename.c
173			dynbuf.c
174			fopen.c
175			inet_ntop.c
176			inet_pton.c
177			multibyte.c
178			nonblock.c
179			snprintf.c
180			strcopy.c
181			strdup.c
182			strerr.c
183			strparse.c
184			timediff.c
185			timeval.c
186			version_win32.c
187			wait.c
188			warnless.c
189			winapi.c
190		)
191		vauth/(
192			cleartext.c
193			cram.c
194			digest.c
195			digest_sspi.c
196			gsasl.c
197			krb5_gssapi.c
198			krb5_sspi.c
199			ntlm.c
200			ntlm_sspi.c
201			oauth2.c
202			spnego_gssapi.c
203			spnego_sspi.c
204			vauth.c
205		)
206		vtls/(
207			apple.c
208			bearssl.c
209			cipher_suite.c
210			gtls.c
211			hostcheck.c
212			keylog.c
213			mbedtls.c
214			openssl.c
215			rustls.c
216			schannel.c
217			schannel_verify.c
218			vtls.c
219			vtls_scache.c
220			vtls_spack.c
221			wolfssl.c
222			x509asn1.c
223		)
224		vquic/(
225			curl_ngtcp2.c
226			curl_quiche.c
227			vquic.c
228			vquic-tls.c
229		)
230		vssh/(
231			libssh.c
232			libssh2.c
233			vssh.c
234		)
235	)
236	$builddir/pkg/bearssl/libbearssl.a
237	$builddir/pkg/zlib/libz.a
238]])
239
240-- src/src/Makefile.inc:/^CURL_CFILES
241exe('curl', [[
242	src/(
243		config2setopts.c
244		slist_wc.c
245		terminal.c
246		tool_cb_dbg.c
247		tool_cb_hdr.c
248		tool_cb_prg.c
249		tool_cb_rea.c
250		tool_cb_see.c
251		tool_cb_soc.c
252		tool_cb_wrt.c
253		tool_cfgable.c
254		tool_dirhie.c
255		tool_doswin.c
256		tool_easysrc.c
257		tool_filetime.c
258		tool_findfile.c
259		tool_formparse.c
260		tool_getparam.c
261		tool_getpass.c
262		tool_help.c
263		tool_helpers.c
264		tool_ipfs.c
265		tool_libinfo.c
266		tool_listhelp.c
267		tool_main.c
268		tool_msgs.c
269		tool_operate.c
270		tool_operhlp.c
271		tool_paramhlp.c
272		tool_parsecfg.c
273		tool_progress.c
274		tool_setopt.c
275		tool_ssls.c
276		tool_stderr.c
277		tool_urlglob.c
278		tool_util.c
279		tool_vms.c
280		tool_writeout.c
281		tool_writeout_json.c
282		tool_xattr.c
283		var.c
284		toolx/(tool_time.c)
285	)
286	libcurl.a.d
287]])
288
289file('bin/curl', '755', '$outdir/curl')
290man{'docs/cmdline-opts/curl.1'}
291
292fetch 'git'