From 293f5a93b77d92fd65db7f3d0df654f102e46cfb Mon Sep 17 00:00:00 2001 From: Michael Forney Date: Sun, 11 Dec 2016 16:04:20 -0800 Subject: 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 --- pkg/ncurses/.gitignore | 3 + pkg/ncurses/gen.rc | 128 ++++++++++++++++++++++++++++++++++++ pkg/ncurses/gensources.awk | 29 +++++++++ pkg/ncurses/ncurses_cfg.h | 86 ++++++++++++++++++++++++ pkg/ncurses/rev | 1 + pkg/ncurses/sha256 | 1 + pkg/ncurses/sources.txt | 158 +++++++++++++++++++++++++++++++++++++++++++++ pkg/ncurses/subst.sed | 51 +++++++++++++++ pkg/ncurses/transform.h | 9 +++ pkg/ncurses/url | 1 + 10 files changed, 467 insertions(+) create mode 100644 pkg/ncurses/.gitignore create mode 100644 pkg/ncurses/gen.rc create mode 100644 pkg/ncurses/gensources.awk create mode 100644 pkg/ncurses/ncurses_cfg.h create mode 100644 pkg/ncurses/rev create mode 100644 pkg/ncurses/sha256 create mode 100644 pkg/ncurses/sources.txt create mode 100644 pkg/ncurses/subst.sed create mode 100644 pkg/ncurses/transform.h create mode 100644 pkg/ncurses/url (limited to 'pkg/ncurses') diff --git a/pkg/ncurses/.gitignore b/pkg/ncurses/.gitignore new file mode 100644 index 00000000..fbcf6c54 --- /dev/null +++ b/pkg/ncurses/.gitignore @@ -0,0 +1,3 @@ +/ncurses-6.0.tar.gz +/src +/tools.ninja 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 diff --git a/pkg/ncurses/gensources.awk b/pkg/ncurses/gensources.awk new file mode 100644 index 00000000..b4b45838 --- /dev/null +++ b/pkg/ncurses/gensources.awk @@ -0,0 +1,29 @@ +BEGIN { + dirs["$(base)"] = "ncurses/base" + dirs["$(serial)"] = "ncurses/tty" + dirs["$(trace)"] = "ncurses/trace" + dirs["$(tinfo)"] = "ncurses/tinfo" + dirs["$(wide)"] = "ncurses/widechar" + dirs["."] = "$outdir" + + skip["expanded"] = 1 + skip["lib_gen"] = 1 + skip["link_test"] = 1 + + split(subsets, a, "+") + for (k in a) + sets[a[k]] = 1 +} + +/^(#|$)/ { next } + +/^@/ { + set = $2 + next +} + +set in sets { + if ($1 ~ /trace/ || $1 in skip) + next + print dirs[$3] "/" $1 ".c" +} diff --git a/pkg/ncurses/ncurses_cfg.h b/pkg/ncurses/ncurses_cfg.h new file mode 100644 index 00000000..fb432d09 --- /dev/null +++ b/pkg/ncurses/ncurses_cfg.h @@ -0,0 +1,86 @@ +#ifndef NC_CONFIG_H +#define NC_CONFIG_H + +#include + +#define PACKAGE "ncurses" +#define NCURSES_VERSION "6.0" +#define NCURSES_PATCHDATE 20150808 +#define SYSTEM_NAME "linux-musl" +#define HAVE_LONG_FILE_NAMES 1 +#define MIXEDCASE_FILENAMES 1 +#define TERMINFO_DIRS "/share/terminfo" +#define TERMINFO "/share/terminfo" +#define HAVE_BIG_CORE 1 +#define PURE_TERMINFO 1 +#define USE_HOME_TERMINFO 1 +#define USE_ROOT_ENVIRON 1 +#define USE_LINKS 1 +#define HAVE_LANGINFO_CODESET 1 +#define USE_WIDEC_SUPPORT 1 +#define NCURSES_WIDECHAR 1 +#define NEED_WCHAR_H 1 +#define HAVE_ASSUME_DEFAULT_COLORS 1 +#define HAVE_CURSES_VERSION 1 +#define HAVE_HAS_KEY 1 +#define HAVE_RESIZETERM 1 +#define HAVE_RESIZE_TERM 1 +#define HAVE_TERM_ENTRY_H 1 +#define HAVE_USE_DEFAULT_COLORS 1 +#define HAVE_USE_SCREEN 1 +#define HAVE_USE_WINDOW 1 +#define HAVE_WRESIZE 1 +#define NCURSES_EXT_FUNCS 1 +#define NCURSES_SP_FUNCS 1 +#define NCURSES_EXT_COLORS 1 +#define NCURSES_EXT_PUTWIN 1 +#define NCURSES_NO_PADDING 1 +#define HAVE_MEMORY_H 1 +#define SIZEOF_SIGNED_CHAR 1 +#define USE_SIGWINCH 1 +#define USE_ASSUMED_COLOR 1 +#define USE_HASHMAP 1 +#define NCURSES_WRAP_PREFIX "_nc_" +#define GCC_SCANF 1 +#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) +#define GCC_PRINTF 1 +#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) +#define GCC_UNUSED __attribute__((unused)) +#define GCC_NORETURN __attribute__((noreturn)) +#define HAVE_NC_ALLOC_H 1 +#define TIME_WITH_SYS_TIME 1 +#define HAVE_REGEX_H_FUNCS 1 +#define HAVE_GETOPT_H 1 +#define HAVE_SYS_IOCTL_H 1 +#define HAVE_SYS_PARAM_H 1 +#define HAVE_SYS_POLL_H 1 +#define HAVE_GETOPT_H 1 +#define HAVE_GETOPT_HEADER 1 +#define HAVE_SYS_TIME_SELECT 1 +#define SIG_ATOMIC_T volatile sig_atomic_t +#define HAVE_ISSETUGID 1 +#define HAVE_SETBUFFER 1 +#define SETVBUF_REVERSED 1 +#define HAVE_SIZECHANGE 1 +#define HAVE_WORKING_POLL 1 +#define USE_OPENPTY_HEADER +#define USE_XTERM_PTY 1 +#define HAVE_TYPEINFO 1 +#define HAVE_IOSTREAM 1 +#define IOSTREAM_NAMESPACE 1 +#define CPP_HAS_STATIC_CAST 1 +#define SIZEOF_WCHAR_T 4 +#define HAVE_SLK_COLOR 1 +#define HAVE_PANEL_H 1 +#define HAVE_LIBPANEL 1 +#define HAVE_MENU_H 1 +#define HAVE_LIBMENU 1 +#define HAVE_FORM_H 1 +#define HAVE_LIBFORM 1 +#define NCURSES_PATHSEP ':' +#define NCURSES_VERSION_STRING "6.0.20150808" +#define NCURSES_OSPEED_COMPAT 1 + +#include + +#endif /* NC_CONFIG_H */ diff --git a/pkg/ncurses/rev b/pkg/ncurses/rev new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/pkg/ncurses/rev @@ -0,0 +1 @@ +1 diff --git a/pkg/ncurses/sha256 b/pkg/ncurses/sha256 new file mode 100644 index 00000000..1434e95c --- /dev/null +++ b/pkg/ncurses/sha256 @@ -0,0 +1 @@ +f551c24b30ce8bfb6e96d9f59b42fbea30fa3a6123384172f9e7284bcf647260 ncurses-6.0.tar.gz diff --git a/pkg/ncurses/sources.txt b/pkg/ncurses/sources.txt new file mode 100644 index 00000000..3a213917 --- /dev/null +++ b/pkg/ncurses/sources.txt @@ -0,0 +1,158 @@ +# 2,$ +extern bool same_program(const char *, const char *); +#define PROG_CAPTOINFO "captoinfo" +#define PROG_INFOTOCAP "infotocap" +#define PROG_RESET "reset" +#define PROG_INIT "init" +#endif /* __TRANSFORM_H */ diff --git a/pkg/ncurses/url b/pkg/ncurses/url new file mode 100644 index 00000000..40dd7fac --- /dev/null +++ b/pkg/ncurses/url @@ -0,0 +1 @@ +url = "http://invisible-mirror.net/archives/ncurses/ncurses-6.0.tar.gz" -- cgit v1.2.3