summaryrefslogtreecommitdiff
path: root/pkg/zstd/gen.lua
blob: 1d41abab5172f891767148681b99a6c5abb8fb6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
cflags{
	'-Wall', '-Wextra', '-Wpedantic',
	'-D ZSTD_LEGACY_SUPPORT=0',
	'-D ZSTD_NO_UNUSED_FUNCTIONS',
	'-D ZSTD_MULTITHREAD',
	'-D XXH_NAMESPACE=ZSTD_',
	'-D ZSTD_NOBENCH',
	'-D ZSTD_NODICT',
	'-D ZSTD_NOTRACE',
	'-D ZSTD_TRACE=0',
}
set('ldflags', '-static')

pkg.hdrs = {
	copy('$outdir/include', '$srcdir/lib', {'zstd.h', 'zdict.h', 'zstd_errors.h'}),
}
pkg.deps = {
	'$gendir/headers',
}

lib('libzstd.a', [[lib/(
	common/(
		debug.c
		entropy_common.c
		error_private.c
		fse_decompress.c
		pool.c
		threading.c
		xxhash.c
		zstd_common.c
	)
	compress/(
		fse_compress.c
		hist.c
		huf_compress.c
		zstd_compress.c
		zstd_compress_literals.c
		zstd_compress_sequences.c
		zstd_compress_superblock.c
		zstd_double_fast.c
		zstd_fast.c
		zstd_lazy.c
		zstd_ldm.c
		zstd_opt.c
		zstdmt_compress.c
	)
	decompress/(
		huf_decompress.c
		zstd_ddict.c
		zstd_decompress.c
		zstd_decompress_block.c
	)
)]])

exe('zstd', [[
	programs/(zstdcli.c util.c timefn.c fileio.c)
	libzstd.a
]])
file('bin/zstd', '755', '$outdir/zstd')
sym('bin/unzstd', 'zstd')
sym('bin/zstdcat', 'zstd')

man{'programs/zstd.1'}

fetch 'git'