summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-04-10 02:58:52 -0700
committerMichael Forney <mforney@mforney.org>2016-04-15 02:10:08 -0700
commitdbb513d4572e2eed5e540b7b7fb7e9c8f544cb04 (patch)
tree2260140732591d6ca455e493305884c21f063b3f /core
parent5f753e71fa37011b9bf7bcec482fe4a4a904dc9e (diff)
Add some initial packages
Diffstat (limited to 'core')
-rw-r--r--core/cparser/gen.rc15
m---------core/cparser/src0
-rw-r--r--core/file/gen.rc114
m---------core/file/src0
-rw-r--r--core/libfirm/gen.rc60
m---------core/libfirm/src0
-rw-r--r--core/loksh/gen.rc31
m---------core/loksh/src0
-rw-r--r--core/plan9port/gen.rc97
-rw-r--r--core/plan9port/patches/0001-Fix-build-with-musl.patch62
m---------core/plan9port/src0
-rw-r--r--core/sbase/gen.rc127
m---------core/sbase/src0
-rw-r--r--core/skeleton/gen.rc18
-rw-r--r--core/tz/gen.rc25
m---------core/tz/src0
-rw-r--r--core/ubase/gen.rc90
m---------core/ubase/src0
-rw-r--r--core/zlib/gen.rc25
m---------core/zlib/src0
20 files changed, 664 insertions, 0 deletions
diff --git a/core/cparser/gen.rc b/core/cparser/gen.rc
new file mode 100644
index 00000000..ada89217
--- /dev/null
+++ b/core/cparser/gen.rc
@@ -0,0 +1,15 @@
+cflags\
+ -I '$root_srcdir'/core/libfirm/src/include\
+ -I '$root_outdir'/core/libfirm\
+ -I '$srcdir'/src/src\
+ -I '$outdir'
+
+rule revision_hdr 'echo ''#define cparser_REVISION ""'' >$out.tmp && mv $out.tmp $out'
+build '$outdir'/revision.h revision_hdr
+
+cd src
+srcs=src/^( main.c */*.c )
+for(src in $srcs) cc $src '|' '$outdir'/revision.h '||' '$root_outdir/core/libfirm/stamp'
+link cparser $srcs.o '$root_outdir'/core/libfirm/libfirm.a
+file bin/cparser '$outdir'/cparser 755
+file share/man/man1/cparser.1 '$srcdir'/src/cparser.1 644
diff --git a/core/cparser/src b/core/cparser/src
new file mode 160000
+Subproject d2a926c5f3b2c475650cb6d66eeed45ab7e31bd
diff --git a/core/file/gen.rc b/core/file/gen.rc
new file mode 100644
index 00000000..b5c16c8b
--- /dev/null
+++ b/core/file/gen.rc
@@ -0,0 +1,114 @@
+version=5.25
+cflags\
+ -DHAVE_ASCTIME_R'='1\
+ -DHAVE_CTIME_R'='1\
+ -DHAVE_FORK'='1\
+ -DHAVE_FREELOCALE'='1\
+ -DHAVE_GETLINE'='1\
+ -DHAVE_GETOPT_H'='1\
+ -DHAVE_GMTIME_R'='1\
+ -DHAVE_INTTYPES_H'='1\
+ -DHAVE_LIMITS_H'='1\
+ -DHAVE_LOCALE_H'='1\
+ -DHAVE_LOCALTIME_R'='1\
+ -DHAVE_MBRTOWC'='1\
+ -DHAVE_MBSTATE_T'='1\
+ -DHAVE_MKOSTEMP'='1\
+ -DHAVE_MKSTEMP'='1\
+ -DHAVE_MMAP'='1\
+ -DHAVE_NEWLOCALE'='1\
+ -DHAVE_PREAD'='1\
+ -DHAVE_SIGNAL_H'='1\
+ -DHAVE_STDDEF_H'='1\
+ -DHAVE_STDINT_H'='1\
+ -DHAVE_STDLIB_H'='1\
+ -DHAVE_STRERROR'='1\
+ -DHAVE_STRINGS_H'='1\
+ -DHAVE_STRING_H'='1\
+ -DHAVE_STRNDUP'='1\
+ -DHAVE_STRTOF'='1\
+ -DHAVE_STRTOUL'='1\
+ -DHAVE_STRUCT_OPTION'='1\
+ -DHAVE_STRUCT_STAT_ST_RDEV'='1\
+ -DHAVE_STRUCT_TM_TM_GMTOFF'='1\
+ -DHAVE_STRUCT_TM_TM_ZONE'='1\
+ -DHAVE_SYS_MMAN_H'='1\
+ -DHAVE_SYS_TIME_H'='1\
+ -DHAVE_SYS_WAIT_H'='1\
+ -DHAVE_UNISTD_H'='1\
+ -DHAVE_USELOCALE'='1\
+ -DHAVE_UTIME'='1\
+ -DHAVE_UTIMES'='1\
+ -DHAVE_UTIME_H'='1\
+ -DHAVE_WCHAR_H'='1\
+ -DHAVE_WCTYPE_H'='1\
+ -DHAVE_WCWIDTH'='1\
+ -DHAVE_ZLIB_H'='1\
+ \
+ -DHAVE_ASPRINTF'='1\
+ -DHAVE_GETOPT_LONG'='1\
+ -DHAVE_MEMORY_H'='1\
+ -DHAVE_SIG_T'='1\
+ -DHAVE_STRCASESTR'='1\
+ -DHAVE_STRLCAT'='1\
+ -DHAVE_STRLCPY'='1\
+ -DHAVE_VASPRINTF'='1\
+ -DHAVE_VISIBILITY'='1\
+ \
+ -DBUILTIN_ELF'='1\
+ -DELFCORE'='1\
+ -DVERSION'='\"$version\"\
+ -DMAGIC'='\"/share/file/magic\"\
+ -D_GNU_SOURCE\
+ -Wall\
+ -I core/zlib/include\
+ -I '$outdir'/include
+
+# TODO: check for visibility, xlocale.h, memory.h, vasprintf, asprintf,
+# strlcpy, strlcat, strcasestr, fmtcheck, getopt_long, sig_t, tm_zone,
+# tm_gmtoff
+
+cd src/magic
+magic_outs=magic/^( Header Localstuff )
+for(src in Header Localstuff) build '$outdir'/magic/$src copy '$srcdir'/src/magic/$src
+cd Magdir
+srcs=*
+magic_outs=( $magic_outs magic/$srcs )
+for(src in $srcs) build '$outdir'/magic/$src copy '$srcdir'/src/magic/Magdir/$src
+
+rule magic 'cd $outdir && file -C -m magic'
+build '$outdir'/magic.mgc magic '|' '$outdir'/$magic_outs
+
+ninja_vars='expr = s@X.YY@'`{echo $version | tr -d .}^@ \
+ build '$outdir'/include/magic.h sed '$srcdir'/src/src/magic.h.in
+ninja_vars='expr = -e s@__CSECTION__@1@g -e s@__FSECTION__@5@g -e s@__VERSION__@'$version'@g -e s@__MAGIC__@/share/file/magic@g' \
+ build '$outdir'/file.1 sed '$srcdir'/src/doc/file.man
+
+srcs=(\
+ src/magic.c\
+ src/apprentice.c\
+ src/softmagic.c\
+ src/ascmagic.c\
+ src/encoding.c\
+ src/compress.c\
+ src/is_tar.c\
+ src/readelf.c\
+ src/print.c\
+ src/fsmagic.c\
+ src/funcs.c\
+ src/apptype.c\
+ src/cdf.c\
+ src/cdf_time.c\
+ src/readcdf.c\
+ \
+ src/fmtcheck.c\
+) {
+ for(src in $srcs) cc $src '|' '$outdir/include/magic.h' '||' core/zlib/stamp
+ ar libmagic.a $srcs.o
+}
+
+exe file src/file.c libmagic.a
+
+file bin/file '$outdir'/file 755
+file share/man/man1/file.1 '$outdir'/file.1 644
+file share/file/magic.mgc '$outdir'/magic.mgc 644
diff --git a/core/file/src b/core/file/src
new file mode 160000
+Subproject f45db89ddc91692b662fffbabbdafc7bc4c00f5
diff --git a/core/libfirm/gen.rc b/core/libfirm/gen.rc
new file mode 100644
index 00000000..bbfcbee4
--- /dev/null
+++ b/core/libfirm/gen.rc
@@ -0,0 +1,60 @@
+cflags\
+ -I '$outdir' \
+ -I '$srcdir'/src/include/libfirm/adt\
+ -I '$srcdir'/src/include/libfirm\
+ -I '$srcdir'/src/ir/adt\
+ -I '$srcdir'/src/ir/ana\
+ -I '$srcdir'/src/ir/be/ia32\
+ -I '$srcdir'/src/ir/be\
+ -I '$srcdir'/src/ir/common\
+ -I '$srcdir'/src/ir/ident\
+ -I '$srcdir'/src/ir/ir\
+ -I '$srcdir'/src/ir/kaps\
+ -I '$srcdir'/src/ir/libcore\
+ -I '$srcdir'/src/ir/lower\
+ -I '$srcdir'/src/ir/lpp\
+ -I '$srcdir'/src/ir/opt\
+ -I '$srcdir'/src/ir/stat\
+ -I '$srcdir'/src/ir/tr\
+ -I '$srcdir'/src/ir/tv
+
+backends=( amd64 arm ia32 sparc TEMPLATE )
+
+rule irspec '$python $srcdir/src/scripts/gen_ir.py $srcdir/src/scripts/ir_spec.py $in >$out.tmp && mv $out.tmp $out'
+rule new_nodes '$perl $srcdir/src/ir/be/scripts/generate_new_opcodes.pl $in $outdir'
+rule regalloc_if '$perl $srcdir/src/ir/be/scripts/generate_regalloc_if.pl $in $outdir'
+rule emitter '$perl $srcdir/src/ir/be/scripts/generate_emitter.pl $in $outdir'
+
+cd src
+
+genhdrs=( nodes.h gen_irnode.h gen_proj_names.h )
+gensrcs=( gen_irnode.c gen_irio.c )
+for(gensrc in $genhdrs $gensrcs) {
+ build '$outdir'/$gensrc irspec '$srcdir'/src/scripts/templates/$gensrc
+}
+
+srcs=( ir/*/*.c '$outdir'/$gensrcs )
+objs=$srcs.o
+for(src in $srcs) cc $src '||' '$outdir/stamp'
+
+stampdeps=( $genhdrs )
+
+for(backend in $backends) {
+ types=( emitter regalloc_if new_nodes )
+ srcs=( ir/be/$backend/*.c '$outdir'/gen_$backend^_$types.c )
+ objs=( $objs $srcs.o )
+ stampdeps=( $stampdeps gen_$backend^_$types.h )
+ {
+ cflags -I '$srcdir'/src/ir/be/$backend
+ for(type in $types) {
+ outs=( '$outdir'/gen_$backend^_$type.^(c h) )\
+ build $"outs $type '$srcdir'/src/ir/be/$backend/$backend^_spec.pl
+ }
+ for(src in $srcs) cc $src '||' '$outdir/stamp'
+ } >$outdir/$backend.ninja
+ echo 'subninja $outdir'/$backend.ninja
+}
+
+ar libfirm.a $objs
+
+stamp $stampdeps
diff --git a/core/libfirm/src b/core/libfirm/src
new file mode 160000
+Subproject 03dcab7e4809422fd8c7ccf1802cd715242ef0b
diff --git a/core/loksh/gen.rc b/core/loksh/gen.rc
new file mode 100644
index 00000000..59e52b07
--- /dev/null
+++ b/core/loksh/gen.rc
@@ -0,0 +1,31 @@
+cflags -I '$root_srcdir/include' -D_GNU_SOURCE
+exe ksh\
+ alloc.c\
+ c_ksh.c\
+ c_sh.c\
+ c_test.c\
+ c_ulimit.c\
+ edit.c\
+ emacs.c\
+ eval.c \
+ exec.c\
+ expr.c\
+ history.c\
+ io.c\
+ jobs.c\
+ lex.c\
+ mail.c\
+ main.c\
+ misc.c\
+ path.c\
+ shf.c\
+ syn.c\
+ table.c\
+ trap.c\
+ tree.c\
+ tty.c\
+ var.c\
+ version.c\
+ vi.c
+file bin/ksh '$outdir'/ksh 755
+sym bin/sh ksh
diff --git a/core/loksh/src b/core/loksh/src
new file mode 160000
+Subproject d1eafa7917e3f109e4f69ceb8ab8ccc9754b2db
diff --git a/core/plan9port/gen.rc b/core/plan9port/gen.rc
new file mode 100644
index 00000000..635c6b9e
--- /dev/null
+++ b/core/plan9port/gen.rc
@@ -0,0 +1,97 @@
+cflags\
+ -I '$srcdir'/src/include\
+ -I '$srcdir'/src/src/cmd/rc\
+ -I '$srcdir'/src/src/lib9/fmt\
+ -I '$outdir'
+
+ninja_vars='yaccflags = -b x -d' outs=( '$outdir'/x.tab.^( c h ) )\
+ build $"outs yacc '$srcdir'/src/src/cmd/rc/syn.y
+
+static_lib lib9.a src/lib9/^(\
+ argv0.c\
+ atexit.c\
+ atoi.c\
+ await.c\
+ create.c\
+ dirfstat.c\
+ dirread.c\
+ dirstat.c\
+ dup.c\
+ errstr.c\
+ fmt/dofmt.c\
+ fmt/fltfmt.c\
+ fmt/fmt.c\
+ fmt/fmtfd.c\
+ fmt/fmtfdflush.c\
+ fmt/fmtlocale.c\
+ fmt/fmtstr.c\
+ fmt/fprint.c\
+ fmtlock2.c\
+ fmt/nan64.c\
+ fmt/runefmtstr.c\
+ fmt/smprint.c\
+ fmt/snprint.c\
+ fmt/sprint.c\
+ fmt/strtod.c\
+ fmt/vfprint.c\
+ fmt/vseprint.c\
+ fmt/vsmprint.c\
+ fmt/vsnprint.c\
+ get9root.c\
+ getcallerpc-x86_64.c\
+ getenv.c\
+ jmp.c\
+ main.c\
+ malloc.c\
+ mallocz.c\
+ notify.c\
+ open.c\
+ _p9dir.c\
+ pipe.c\
+ postnote.c\
+ qlock.c\
+ readn.c\
+ rfork.c\
+ seek.c\
+ strdup.c\
+ strecpy.c\
+ sysfatal.c\
+ tokenize.c\
+ unsharp.c\
+ utf/rune.c\
+ utf/utflen.c\
+ utf/utfnlen.c\
+ utf/utfrune.c\
+ wait.c\
+ write.c\
+)
+
+srcs=(\
+ code.c\
+ exec.c\
+ getflags.c\
+ glob.c\
+ here.c\
+ io.c\
+ lex.c\
+ pcmd.c\
+ pfnc.c\
+ simple.c\
+ subr.c\
+ trap.c\
+ tree.c\
+ unixcrap.c\
+ var.c\
+ plan9ish.c\
+ havefork.c\
+) {
+ for(src in $srcs) cc src/cmd/rc/$src '||' '$outdir/stamp'
+ cc '$outdir'/x.tab.c
+ link rc src/cmd/rc/$srcs.o x.tab.c.o lib9.a
+}
+
+file bin/rc '$outdir'/rc 755
+file share/man/man1/rc.1 '$srcdir'/src/man/man1/rc.1 644
+file lib/rcmain '$srcdir'/src/rcmain 644
+
+stamp x.tab.h
diff --git a/core/plan9port/patches/0001-Fix-build-with-musl.patch b/core/plan9port/patches/0001-Fix-build-with-musl.patch
new file mode 100644
index 00000000..2aff4071
--- /dev/null
+++ b/core/plan9port/patches/0001-Fix-build-with-musl.patch
@@ -0,0 +1,62 @@
+From 51ab047274d90b1c6b7a26b2b41992b176543d05 Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Sun, 10 Apr 2016 02:50:03 -0700
+Subject: [PATCH] Fix build with musl
+
+---
+ src/lib9/dirread.c | 34 ----------------------------------
+ 1 file changed, 34 deletions(-)
+
+diff --git a/src/lib9/dirread.c b/src/lib9/dirread.c
+index 40fbe3c..345f49c 100644
+--- a/src/lib9/dirread.c
++++ b/src/lib9/dirread.c
+@@ -6,45 +6,11 @@
+
+ extern int _p9dir(struct stat*, struct stat*, char*, Dir*, char**, char*);
+
+-#if defined(__linux__)
+-static int
+-mygetdents(int fd, struct dirent *buf, int n)
+-{
+- off_t off;
+- int nn;
+-
+- /* This doesn't match the man page, but it works in Debian with a 2.2 kernel */
+- off = p9seek(fd, 0, 1);
+- nn = getdirentries(fd, (void*)buf, n, &off);
+- return nn;
+-}
+-#elif defined(__APPLE__)
+-static int
+-mygetdents(int fd, struct dirent *buf, int n)
+-{
+- long off;
+- return getdirentries(fd, (void*)buf, n, &off);
+-}
+-#elif defined(__FreeBSD__) || defined(__DragonFly__)
+-static int
+-mygetdents(int fd, struct dirent *buf, int n)
+-{
+- off_t off;
+- return getdirentries(fd, (void*)buf, n, &off);
+-}
+-#elif defined(__sun__) || defined(__NetBSD__) || defined(__OpenBSD__)
+ static int
+ mygetdents(int fd, struct dirent *buf, int n)
+ {
+ return getdents(fd, (void*)buf, n);
+ }
+-#elif defined(__AIX__)
+-static int
+-mygetdents(int fd, struct dirent *buf, int n)
+-{
+- return getdirent(fd, (void*)buf, n);
+-}
+-#endif
+
+ #if defined(__DragonFly__)
+ static inline int d_reclen(struct dirent *de) { return _DIRENT_DIRSIZ(de); }
+--
+2.8.0
+
diff --git a/core/plan9port/src b/core/plan9port/src
new file mode 160000
+Subproject 51ab047274d90b1c6b7a26b2b41992b176543d0
diff --git a/core/sbase/gen.rc b/core/sbase/gen.rc
new file mode 100644
index 00000000..38b6ae36
--- /dev/null
+++ b/core/sbase/gen.rc
@@ -0,0 +1,127 @@
+cflags\
+ -D_DEFAULT_SOURCE\
+ -D_BSD_SOURCE\
+ -D_XOPEN_SOURCE'='700\
+ -D_FILE_OFFSET_BITS'='64\
+ -std'='c99 -Wall -pedantic\
+ -I '$outdir'
+
+cd src
+
+static_lib libutil.a libutil/*.c
+static_lib libutf.a libutf/*.c
+
+executables=(\
+ basename\
+ cal\
+ cat\
+ chgrp\
+ chmod\
+ chown\
+ chroot\
+ cksum\
+ cmp\
+ cols\
+ comm\
+ cp\
+ cron\
+ cut\
+ date\
+ dirname\
+ du\
+ echo\
+ ed\
+ env\
+ expand\
+ expr\
+ false\
+ find\
+ flock\
+ fold\
+ getconf\
+ grep\
+ head\
+ join\
+ hostname\
+ kill\
+ link\
+ ln\
+ logger\
+ logname\
+ ls\
+ md5sum\
+ mkdir\
+ mkfifo\
+ mktemp\
+ mv\
+ nice\
+ nl\
+ nohup\
+ od\
+ pathchk\
+ paste\
+ printenv\
+ printf\
+ pwd\
+ readlink\
+ renice\
+ rm\
+ rmdir\
+ sed\
+ seq\
+ setsid\
+ sha1sum\
+ sha224sum\
+ sha256sum\
+ sha384sum\
+ sha512sum\
+ sha512-224sum\
+ sha512-256sum\
+ sleep\
+ sort\
+ split\
+ sponge\
+ strings\
+ sync\
+ tail\
+ tar\
+ tee\
+ test\
+ tftp\
+ time\
+ touch\
+ tr\
+ true\
+ tsort\
+ tty\
+ uname\
+ unexpand\
+ uniq\
+ unlink\
+ uudecode\
+ uuencode\
+ wc\
+ which\
+ whoami\
+ xargs\
+ install\
+ yes\
+)
+
+getconf_hdrs=( confstr limits sysconf pathconf )^_l.h
+getconf_outs='$outdir'/$getconf_hdrs
+rule getconf_headers 'getconf=$$PWD/$srcdir/src/getconf.sh && cd $outdir && $$getconf'
+build $"getconf_outs getconf_headers '| $srcdir/src/getconf.sh'
+
+for(exe in $executables) {
+ if(~ $exe install) src=x$exe
+ if not src=$exe
+
+ cc $src.c '||' '$outdir/stamp'
+ link $exe $src.c.o libutil.a libutf.a
+
+ file bin/$exe '$outdir'/$exe 755
+ file share/man/man1/$exe.1 '$srcdir'/src/$src.1 644
+}
+
+stamp $getconf_hdrs
diff --git a/core/sbase/src b/core/sbase/src
new file mode 160000
+Subproject d89cd4811898a183f629323b855d1b5623c2da5
diff --git a/core/skeleton/gen.rc b/core/skeleton/gen.rc
new file mode 100644
index 00000000..05652d3e
--- /dev/null
+++ b/core/skeleton/gen.rc
@@ -0,0 +1,18 @@
+dir bin 755
+dir boot 755
+dir dev 755
+dir etc 755
+dir home 755
+dir lib 755
+dir libexec 755
+dir mnt 755
+dir proc 755
+dir root 755
+dir share 755
+dir share/man 755
+dir share/man/man1 755
+dir share/man/man8 755
+dir sys 755
+dir tmp 755
+dir var 755
+sym usr .
diff --git a/core/tz/gen.rc b/core/tz/gen.rc
new file mode 100644
index 00000000..59cb34d5
--- /dev/null
+++ b/core/tz/gen.rc
@@ -0,0 +1,25 @@
+tzdata=(\
+ africa\
+ antarctica\
+ asia\
+ australasia\
+ europe\
+ northamerica\
+ southamerica\
+ pacificnew\
+ etcetera\
+ backward\
+ systemv\
+ factory\
+)
+
+rule zic '$zic -d $outdir/zoneinfo $in'
+
+for(data in $tzdata) {
+ zones=`{awk '{if ($1 == "Zone") print $2}' src/$data}
+ if(! ~ $#zones 0) {
+ outs='$outdir'/zoneinfo/$zones
+ build $"outs zic $srcdir/src/$data
+ for(zone in $zones) file share/zoneinfo/$zone '$outdir'/zoneinfo/$zone 644
+ }
+}
diff --git a/core/tz/src b/core/tz/src
new file mode 160000
+Subproject 1284afb4bdc70f97f265ac2f49188217778413e
diff --git a/core/ubase/gen.rc b/core/ubase/gen.rc
new file mode 100644
index 00000000..43b0c50c
--- /dev/null
+++ b/core/ubase/gen.rc
@@ -0,0 +1,90 @@
+cflags\
+ -D_GNU_SOURCE\
+ -D_XOPEN_SOURCE'='700\
+ -D_FILE_OFFSET_BITS'='64\
+ -std'='c99 -Wall -Wextra\
+ -I '$outdir'
+
+build '$outdir/config.h' copy '$srcdir/src/config.def.h'
+
+static_lib libutil.a\
+ libutil/agetcwd.c\
+ libutil/agetline.c\
+ libutil/apathmax.c\
+ libutil/concat.c\
+ libutil/ealloc.c\
+ libutil/eprintf.c\
+ libutil/estrtol.c\
+ libutil/estrtoul.c\
+ libutil/explicit_bzero.c\
+ libutil/passwd.c\
+ libutil/proc.c\
+ libutil/putword.c\
+ libutil/recurse.c\
+ libutil/strlcat.c\
+ libutil/strlcpy.c\
+ libutil/strtonum.c\
+ libutil/tty.c
+
+fn myexe {
+ exe=$1
+ shift 1
+ cc $exe.c '||' '$outdir/stamp'
+ exe $exe '$outdir'/$exe.c.o '$outdir/libutil.a'
+ file bin/$exe '$outdir'/$exe 755
+ if(~ $#* 1) file share/man/man$1/$exe.$1 '$srcdir'/src/$exe.$1 644
+ true
+}
+
+myexe chvt 1
+myexe clear 1
+myexe ctrlaltdel 8
+myexe dd 1
+myexe df 1
+myexe dmesg 1
+myexe eject 1
+myexe fallocate 1
+myexe free 1
+myexe freeramdisk 8
+myexe fsfreeze 8
+myexe getty 8
+myexe halt 8
+myexe hwclock 8
+myexe id 1
+myexe insmod 8
+myexe killall5 8
+myexe last
+myexe lastlog 8
+myexe login 1
+myexe lsmod 8
+myexe lsusb 8
+myexe mesg 1
+myexe mknod 1
+myexe mkswap 8
+myexe mount 8
+myexe mountpoint 1
+myexe nologin 8
+myexe pagesize 1
+myexe passwd 1
+myexe pidof 1
+myexe pivot_root 8
+myexe ps 1
+myexe readahead 8
+myexe respawn 1
+myexe rmmod 8
+myexe stat 1
+myexe su 1
+myexe swaplabel 8
+myexe swapoff 8
+myexe swapon 8
+myexe switch_root 8
+myexe sysctl 8
+myexe truncate 1
+myexe umount 8
+myexe unshare 1
+myexe uptime 1
+myexe vtallow 1
+myexe watch 1
+myexe who 1
+
+stamp config.h
diff --git a/core/ubase/src b/core/ubase/src
new file mode 160000
+Subproject 28795cffe22ee6a645e4763f6b9bd0e422dddb2
diff --git a/core/zlib/gen.rc b/core/zlib/gen.rc
new file mode 100644
index 00000000..0cd8d1b6
--- /dev/null
+++ b/core/zlib/gen.rc
@@ -0,0 +1,25 @@
+cflags\
+ -DHAVE_HIDDEN\
+ -DHAVE_STDARG_H\
+ -DHAVE_UNISTD_H\
+ -D_LARGEFILE64_SOURCE
+
+static_lib libz.a\
+ adler32.c\
+ crc32.c\
+ deflate.c\
+ infback.c\
+ inffast.c\
+ inflate.c\
+ inftrees.c\
+ zutil.c\
+ \
+ compress.c\
+ uncompr.c\
+ gzclose.c\
+ gzlib.c\
+ gzread.c\
+ gzwrite.c
+
+build '$outdir'/include/zlib.h copy '$srcdir'/src/zlib.h
+stamp include/zlib.h
diff --git a/core/zlib/src b/core/zlib/src
new file mode 160000
+Subproject 50893291621658f355bc5b4d450a8d06a563053