master hovercats/oakiss / pkg / vis / gen.lua
 1set('version', 'v0.9')
 2cflags{
 3	'-std=c99',
 4	'-D CONFIG_HELP=1',
 5	'-D CONFIG_CURSES=1',
 6	'-D CONFIG_LUA=1',
 7	'-D CONFIG_LPEG=1',
 8	'-D CONFIG_TRE=0',
 9	'-D CONFIG_SELINUX=0',
10	'-D CONFIG_ACL=0',
11	'-D HAVE_MEMRCHR=1',
12	'-D LUA_COMPAT_APIINTCASTS',
13	'-D _XOPEN_SOURCE=700',
14	[[-D 'VERSION="$version"']],
15	string.format([[-D 'VIS_PATH="%s/share/vis"']], config.prefix),
16	'-D NDEBUG',
17	'-I $outdir',
18	'-isystem $builddir/pkg/libtermkey/include',
19	'-isystem $builddir/pkg/lua/include',
20	'-isystem $builddir/pkg/netbsd-curses/include',
21}
22
23build('copy', '$outdir/config.h', '$srcdir/config.def.h')
24
25pkg.deps = {
26	'$outdir/config.h',
27	'pkg/libtermkey/headers',
28	'pkg/lua/headers',
29	'pkg/netbsd-curses/headers',
30}
31
32exe('vis', [[
33	array.c
34	buffer.c
35	libutf.c
36	main.c
37	map.c
38	sam.c
39	text.c
40	text-common.c
41	text-io.c
42	text-iterator.c
43	text-motions.c
44	text-objects.c
45	text-util.c
46	ui-terminal.c
47	view.c
48	vis.c
49	vis-lua.c
50	vis-marks.c
51	vis-modes.c
52	vis-motions.c
53	vis-operators.c
54	vis-prompt.c
55	vis-registers.c
56	vis-text-objects.c
57	vis-subprocess.c
58	text-regex.c
59	$builddir/pkg/libtermkey/libtermkey.a.d
60	$builddir/pkg/lpeg/liblpeg.a
61	$builddir/pkg/lua/liblua.a
62	$builddir/pkg/netbsd-curses/libcurses.a.d
63]])
64file('bin/vis', '755', '$outdir/vis')
65
66exe('vis-digraph', {'vis-digraph.c'})
67file('bin/vis-digraph', '755', '$outdir/vis-digraph')
68
69exe('vis-menu', {'vis-menu.c'})
70file('bin/vis-menu', '755', '$outdir/vis-menu')
71
72file('bin/vis-open', '755', '$srcdir/vis-open')
73
74for _, f in ipairs{'vis.1', 'vis-digraph.1', 'vis-menu.1', 'vis-open.1'} do
75	build('sed', '$outdir/'..f, '$srcdir/man/'..f, {expr='s,VERSION,$version,'})
76	man{'$outdir/'..f}
77end
78
79for f in iterlines('lua.txt') do
80	file('share/vis/'..f, '644', '$srcdir/lua/'..f)
81end
82sym('share/vis/lexer.lua', 'lexers/lexer.lua')
83sym('share/vis/themes/default.lua', 'base-16.lua')
84
85fetch 'git'