summaryrefslogtreecommitdiff
path: root/pkg/ncurses/gen.lua
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/ncurses/gen.lua')
-rw-r--r--pkg/ncurses/gen.lua31
1 files changed, 21 insertions, 10 deletions
diff --git a/pkg/ncurses/gen.lua b/pkg/ncurses/gen.lua
index 8bb204a6..dbf81761 100644
--- a/pkg/ncurses/gen.lua
+++ b/pkg/ncurses/gen.lua
@@ -16,11 +16,16 @@ sub('tools.ninja', function()
exe('make_hash', {'ncurses/tinfo/make_hash.c'}, {'$gendir/headers', '$outdir/hashsize.h'})
end)
+local caps = {
+ '$srcdir/include/Caps',
+ '$srcdir/include/Caps-ncurses',
+}
+
build('sed', '$outdir/curses.head', {'$srcdir/include/curses.h.in', '|', '$dir/subst.sed'}, {
expr='-f $dir/subst.sed',
})
rule('mkkeydefs', '{ cat $outdir/curses.head && sh $srcdir/include/MKkey_defs.sh $in && cat $srcdir/include/curses.wide $srcdir/include/curses.tail; } >$out')
-build('mkkeydefs', '$outdir/include/curses.h', {'$srcdir/include/Caps', '|',
+build('mkkeydefs', '$outdir/include/curses.h', {caps, '|',
'$outdir/curses.head',
'$srcdir/include/curses.wide',
'$srcdir/include/curses.tail',
@@ -28,10 +33,10 @@ build('mkkeydefs', '$outdir/include/curses.h', {'$srcdir/include/Caps', '|',
})
rule('mkhashsize', 'sh $srcdir/include/MKhashsize.sh $in >$out')
-build('mkhashsize', '$outdir/hashsize.h', {'$srcdir/include/Caps', '|', '$srcdir/include/MKhashsize.sh'})
+build('mkhashsize', '$outdir/hashsize.h', {caps, '|', '$srcdir/include/MKhashsize.sh'})
rule('mkkeyslist', 'sh $srcdir/ncurses/tinfo/MKkeys_list.sh $in | LC_ALL=C sort >$out')
-build('mkkeyslist', '$outdir/keys.list', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/tinfo/MKkeys_list.sh'})
+build('mkkeyslist', '$outdir/keys.list', {caps, '|', '$srcdir/ncurses/tinfo/MKkeys_list.sh'})
rule('mkkeys', '$outdir/make_keys $in >$out')
build('mkkeys', '$outdir/init_keytry.h', {'$outdir/keys.list', '|', '$outdir/make_keys'})
@@ -40,7 +45,7 @@ rule('mkdefs', 'sh $srcdir/include/MKncurses_def.sh $in >$out')
build('mkdefs', '$outdir/ncurses_def.h', {'$srcdir/include/ncurses_defs', '|', '$srcdir/include/MKncurses_def.sh'})
rule('mkparam', '$srcdir/include/MKparametrized.sh $in >$out')
-build('mkparam', '$outdir/parametrized.h', {'$srcdir/include/Caps', '|', '$srcdir/include/MKparametrized.sh'})
+build('mkparam', '$outdir/parametrized.h', {caps, '|', '$srcdir/include/MKparametrized.sh'})
build('sed', '$outdir/MKterm.h.awk', {'$srcdir/include/MKterm.h.awk.in', '|', '$dir/subst.sed'}, {
expr='-f $dir/subst.sed',
@@ -53,27 +58,33 @@ for _, f in ipairs{'ncurses_dll.h', 'termcap.h', 'unctrl.h'} do
end
rule('mkterm', 'awk -f $outdir/MKterm.h.awk $in >$out')
-build('mkterm', '$outdir/include/term.h', {'$srcdir/include/Caps', '|', '$outdir/MKterm.h.awk'})
+build('mkterm', '$outdir/include/term.h', {caps, '|', '$outdir/MKterm.h.awk'})
-build('awk', '$outdir/codes.c', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/tinfo/MKcodes.awk'}, {
+build('awk', '$outdir/codes.c', {caps, '|', '$srcdir/ncurses/tinfo/MKcodes.awk'}, {
expr='-f $srcdir/ncurses/tinfo/MKcodes.awk bigstrings=1',
})
-rule('mkcaptab', '(cd $outdir && $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.sh awk 1 $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.awk $$OLDPWD/$in) >$out')
-build('mkcaptab', '$outdir/comp_captab.c', {'$srcdir/include/Caps', '|',
+rule('mkcaptab', 'MAKE_HASH=$outdir/make_hash sh -e $srcdir/ncurses/tinfo/MKcaptab.sh awk 1 $srcdir/ncurses/tinfo/MKcaptab.awk $in >$out')
+build('mkcaptab', '$outdir/comp_captab.c', {caps, '|',
'$outdir/make_hash',
'$srcdir/tinfo/MKcaptab.awk',
'$srcdir/tinfo/MKcaptab.sh',
})
-rule('mkfallback', 'sh $srcdir/ncurses/tinfo/MKfallback.sh /dev/null /dev/null /dev/null >$out')
+rule('mkuserdefs', 'MAKE_HASH=$outdir/make_hash sh -e $srcdir/ncurses/tinfo/MKuserdefs.sh awk 1 $in >$out')
+build('mkuserdefs', '$outdir/comp_userdefs.c', {caps, '|',
+ '$outdir/make_hash',
+ '$srcdir/tinfo/MKuserdefs.sh',
+})
+
+rule('mkfallback', 'sh $srcdir/ncurses/tinfo/MKfallback.sh /dev/null /dev/null /dev/null /dev/null >$out')
build('mkfallback', '$outdir/fallback.c', {'|', '$srcdir/ncurses/tinfo/MKfallback.sh'})
build('awk', '$outdir/lib_keyname.c', '$outdir/keys.list', {
expr='-f $srcdir/ncurses/base/MKkeyname.awk bigstrings=1',
})
-build('awk', '$outdir/names.c', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/tinfo/MKnames.awk'}, {
+build('awk', '$outdir/names.c', {caps, '|', '$srcdir/ncurses/tinfo/MKnames.awk'}, {
expr='-f $srcdir/ncurses/tinfo/MKnames.awk bigstrings=1',
})