diff options
| author | Michael Forney <mforney@mforney.org> | 2016-12-11 16:04:20 -0800 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2016-12-13 23:10:30 -0800 |
| commit | 293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch) | |
| tree | 6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/ncurses/gen.rc | |
| parent | 9a506a6834df01a26795cea222b410f206efa9fa (diff) | |
Move to flat package hierarchy
Note to self: never try to move submodules again
To migrate your existing submodules (more or less):
set -x
set -e
mkdir .git/modules/pkg
for old in */*/src ; do
new="pkg/${old#*/}"
if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then
continue
fi
git -C ".git/modules/$old" config core.worktree "../../../../../$new"
rmdir "$new"
mv "$old" "$new"
sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp"
mv "$new/.git.tmp" "$new/.git"
mkdir ".git/modules/${new%/src}"
mv ".git/modules/$old" ".git/modules/$new"
rm "${old%/src}"/*.ninja
mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/"
rmdir "${old%/src}" || true
done
sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp
mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/ncurses/gen.rc')
| -rw-r--r-- | pkg/ncurses/gen.rc | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/pkg/ncurses/gen.rc b/pkg/ncurses/gen.rc new file mode 100644 index 00000000..f8e7dea6 --- /dev/null +++ b/pkg/ncurses/gen.rc @@ -0,0 +1,128 @@ +set common_cflags\ + -D NDEBUG\ + -I include\ + -I '$dir' \ + -I '$outdir' \ + -I '$outdir'/include\ + -I '$srcdir'/include\ + -I '$srcdir'/ncurses\ + -I '$srcdir'/progs +cflags '$common_cflags' + +{ + include 'toolchain/$host_toolchain.ninja' + cflags '$common_cflags' -D USE_BUILD_CC + exe make_keys -d '$outdir/names.c $outdir/include/curses.h $outdir/include/ncurses_dll.h' ncurses/tinfo/make_keys.c + exe make_hash -d '$outdir/hashsize.h $outdir/include/curses.h' ncurses/tinfo/make_hash.c +} >tools.ninja ; subninja tools.ninja + +build '$outdir'/curses.head sed '$srcdir'/include/curses.h.in '|' '$dir'/subst.sed ; with\ + expr '-f $dir/subst.sed' +rule mkkeydefs '{ cat $outdir/curses.head && sh $srcdir/include/MKkey_defs.sh $in && cat $srcdir/include/curses.{wide,tail}; } >$out.tmp && mv $out.tmp $out' +build '$outdir'/include/curses.h mkkeydefs '$srcdir'/include/Caps '|' '$outdir'/curses.head '$srcdir'/include/^(curses.^(wide tail) MKkey_defs.sh) + +rule mkhashsize 'sh $srcdir/include/MKhashsize.sh $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/hashsize.h mkhashsize '$srcdir'/include/Caps '|' '$srcdir'/include/MKhashsize.sh + +rule mkkeyslist 'sh $srcdir/ncurses/tinfo/MKkeys_list.sh $in | sort >$out.tmp && mv $out.tmp $out' +build '$outdir'/keys.list mkkeyslist '$srcdir'/include/Caps '|' '$srcdir'/ncurses/tinfo/MKkeys_list.sh + +rule mkkeys '$outdir/make_keys $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/init_keytry.h mkkeys '$outdir'/keys.list '|' '$outdir'/make_keys + +rule mkdefs 'sh $srcdir/include/MKncurses_def.sh $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/ncurses_def.h mkdefs '$srcdir'/include/ncurses_defs '|' '$srcdir'/include/MKncurses_def.sh + +build '$outdir'/include/ncurses_dll.h sed '$srcdir'/include/ncurses_dll.h.in ; with\ + expr s,@NCURSES_WRAP_PREFIX@,_nc_, + +rule mkparam '$srcdir/include/MKparametrized.sh $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/parametrized.h mkparam '$srcdir'/include/Caps '|' '$srcdir'/include/MKparametrized.sh + +build '$outdir'/MKterm.h.awk sed '$srcdir'/include/MKterm.h.awk.in '|' '$dir'/subst.sed ; with\ + expr '-f $dir/subst.sed' + +for(f in termcap.h unctrl.h) { + build '$outdir'/include/$f sed '$srcdir'/include/$f.in '|' '$dir'/subst.sed ; with\ + expr '-f $dir/subst.sed' +} + +rule mkterm 'awk -f $outdir/MKterm.h.awk $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/include/term.h mkterm '$srcdir'/include/Caps '|' '$outdir'/MKterm.h.awk + +build '$outdir'/codes.c awk '$srcdir'/include/Caps '|' '$srcdir'/ncurses/tinfo/MKcodes.awk ; with\ + expr '-f $srcdir/ncurses/tinfo/MKcodes.awk bigstrings=1' + +rule mkcaptab '(wd=$$PWD && cd $outdir && $$wd/$srcdir/ncurses/tinfo/MKcaptab.sh awk 1 $$wd/$srcdir/ncurses/tinfo/MKcaptab.awk $$wd/$in) >$out.tmp && mv $out.tmp $out' +build '$outdir'/comp_captab.c mkcaptab '$srcdir'/include/Caps '|' '$outdir'/make_hash '$srcdir'/tinfo/^(MKcaptab.awk MKcaptab.sh) + +rule mkfallback 'sh $srcdir/ncurses/tinfo/MKfallback.sh /dev/null /dev/null /dev/null >$out.tmp && mv $out.tmp $out' +build '$outdir'/fallback.c mkfallback '|' '$srcdir'/ncurses/tinfo/MKfallback.sh + +build '$outdir'/lib_keyname.c awk '$outdir'/keys.list ; with\ + expr '-f $srcdir/ncurses/base/MKkeyname.awk bigstrings=1' + +build '$outdir'/names.c awk '$srcdir'/include/Caps '|' '$srcdir'/ncurses/tinfo/MKnames.awk ; with\ + expr '-f $srcdir/ncurses/tinfo/MKnames.awk bigstrings=1' + +rule mktermsort 'sh $srcdir/progs/MKtermsort.sh awk $in >$out.tmp && mv $out.tmp $out' +build '$outdir'/termsort.c mktermsort '$srcdir'/include/Caps '|' '$srcdir'/progs/MKtermsort.sh + +build '$outdir'/unctrl.c awk /dev/null '|' '$srcdir'/ncurses/base/MKunctrl.awk ; with\ + expr '-f $srcdir/ncurses/base/MKunctrl.awk bigstrings=1' + +hdrs=include/^(curses.h ncurses_dll.h term.h termcap.h unctrl.h) +for(hdr in $hdrs) file $hdr '$outdir'/$hdr 644 +phony headers '$outdir'/$hdrs + +phony deps '$outdir'/^(\ + hashsize.h init_keytry.h ncurses_def.h parametrized.h termsort.c\ +) '$dir'/headers + +lib libncurses.a -d '$dir'/deps `{grep -v '^#' sources.txt} +file lib/libncurses.a '$outdir'/libncurses.a 644 + +exe tic -d '$dir'/deps\ + progs/^(tic.c dump_entry.c tparm_type.c transform.c)\ + ncurses/^(\ + tinfo/^(\ + alloc_entry.c\ + captoinfo.c\ + comp_expand.c\ + comp_parse.c\ + comp_scan.c\ + parse_entry.c\ + write_entry.c\ + )\ + trace/lib_trace.c\ + )\ + libncurses.a +file bin/tic '$outdir'/tic 755 + +exe tset -d '$dir'/deps progs/^(tset.c transform.c.o) libncurses.a +file bin/tset '$outdir'/tset 755 +sym bin/reset tset + +for(m in tic.1m tset.1) { + build '$outdir'/$m sed '$srcdir'/man/$m '|' '$dir'/subst.sed ; with\ + expr '-f $dir/subst.sed' + file share/man/man1/$m '$outdir'/$m 644 +} +sym share/man/man1/reset.1 tset.1 + +terms=(dumb linux tmux tmux-256color xterm xterm-256color) +terminfo=`{printf %s\n $terms | awk '{print substr($0, 1, 1) "/" $0}'} +termnames=`{printf ,%s $terms | tail -c +1} +terminfo_outs='$outdir'/terminfo/$terminfo + +build $"terminfo_outs tic '$srcdir'/misc/terminfo.src ; ticflags=(\ + -o '$outdir'/terminfo\ + -e $termnames\ + -x\ +) with ticflags $"ticflags +for(f in $terminfo) + file share/terminfo/$f '$outdir'/terminfo/$f 644 + +gen_inputs='$dir'/sources.txt + +fetch curl |
