From 2efbc2a7dfa35d14c29c5c66837dc09f07c949ac Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Sat, 9 Dec 2000 01:20:32 +0000 Subject: 2000-12-08 Werner Almesberger * configure.host: Added x86 linux target. * libc/unix/getpass.c (_PATH_PASSWD, _PASSWORD_LEN): Default definitions provided if not already defined. * libc/sys/linux/crt0.c: New file. * libc/sys/linux/Makefile.am: Ditto. * libc/sys/linux/Makefile.in: Ditto. * libc/sys/linux/aclocal.m4: Ditto. * libc/sys/linux/brk.c: Ditto. * libc/sys/linux/configure: Ditto. * libc/sys/linux/configure.in: Ditto. * libc/sys/linux/getoptlong.c: Ditto. * libc/sys/linux/ids.c: Ditto. * libc/sys/linux/inode.c: Ditto. * libc/sys/linux/io.c: Ditto. * libc/sys/linux/linux.c: Ditto. * libc/sys/linux/process.c: Ditto. * libc/sys/linux/realpath.c: Ditto. * libc/sys/linux/select.c: Ditto. * libc/sys/linux/signal.c: Ditto. * libc/sys/linux/systat.c: Ditto. * libc/sys/linux/termios.c: Ditto. * libc/sys/linux/time.c: Ditto. * libc/sys/linux/wait.c: Ditto. * libc/sys/linux/include/alloca.h: Ditto. * libc/sys/linux/include/getopt.h: Ditto. * libc/sys/linux/include/stdint.h: Ditto. * libc/sys/linux/include/unistd.h: Ditto. * libc/sys/linux/sys/cdefs.h: Ditto. * libc/sys/linux/sys/dirent.h: Ditto. * libc/sys/linux/sys/errno.h: Ditto. * libc/sys/linux/sys/fcntl.h: Ditto. * libc/sys/linux/sys/file.h: Ditto. * libc/sys/linux/sys/ioctl.h: Ditto. * libc/sys/linux/sys/resource.h: Ditto. * libc/sys/linux/sys/signal.h: Ditto. * libc/sys/linux/sys/stat.h: Ditto. * libc/sys/linux/sys/syscall.h: Ditto. * libc/sys/linux/sys/termios.h: Ditto. * libc/sys/linux/sys/time.h: Ditto. * libc/sys/linux/sys/types.h: Ditto. * libc/sys/linux/sys/utmp.h: Ditto. * libc/sys/linux/sys/utsname.h: Ditto. * libc/sys/linux/sys/wait.h: Ditto. --- newlib/libc/sys/linux/include/alloca.h | 13 +++++++++++++ newlib/libc/sys/linux/include/getopt.h | 27 +++++++++++++++++++++++++++ newlib/libc/sys/linux/include/stdint.h | 18 ++++++++++++++++++ newlib/libc/sys/linux/include/unistd.h | 20 ++++++++++++++++++++ 4 files changed, 78 insertions(+) create mode 100644 newlib/libc/sys/linux/include/alloca.h create mode 100644 newlib/libc/sys/linux/include/getopt.h create mode 100644 newlib/libc/sys/linux/include/stdint.h create mode 100644 newlib/libc/sys/linux/include/unistd.h (limited to 'newlib/libc/sys/linux/include') diff --git a/newlib/libc/sys/linux/include/alloca.h b/newlib/libc/sys/linux/include/alloca.h new file mode 100644 index 000000000..ba542627d --- /dev/null +++ b/newlib/libc/sys/linux/include/alloca.h @@ -0,0 +1,13 @@ +/* libc/sys/linux/include/alloca.h - Allocate memory on stack */ + +/* Written 2000 by Werner Almesberger */ + + +#ifndef _NEWLIB_ALLOCA_H +#define _NEWLIB_ALLOCA_H + +/* Simple, since we know that we use gcc */ + +#define alloca(size) __builtin_alloca(size) + +#endif diff --git a/newlib/libc/sys/linux/include/getopt.h b/newlib/libc/sys/linux/include/getopt.h new file mode 100644 index 000000000..994f86001 --- /dev/null +++ b/newlib/libc/sys/linux/include/getopt.h @@ -0,0 +1,27 @@ +/* libc/sys/linux/include/getopt.h - Extended command line parsing */ + +/* Written 2000 by Werner Almesberger */ + + +#ifndef _NEWLIB_GETOPT_H +#define _NEWLIB_GETOPT_H + +#include + + +enum { no_argument, required_argument, optional_argument }; + +struct option { + const char *name; + int has_arg; + int *flag; + int val; +}; + +int getopt_long(int argc,char *const argv[],const char *optstring, + const struct option *longopts,int *longindex); + +int getopt_long_only(int argc,char *const argv[],const char *optstring, + const struct option *longopts,int *longindex); + +#endif diff --git a/newlib/libc/sys/linux/include/stdint.h b/newlib/libc/sys/linux/include/stdint.h new file mode 100644 index 000000000..5c89acd22 --- /dev/null +++ b/newlib/libc/sys/linux/include/stdint.h @@ -0,0 +1,18 @@ +/* libc/sys/linux/include/stdint.h - Standard integer types */ + +/* Written 2000 by Werner Almesberger */ + + +#ifndef _NEWLIB_STDINT_H +#define _NEWLIB_STDINT_H + +/* + * FIXME: linux/types.h defines various types that rightfully belong into + * stdint.h. So we have no choice but to include linux/types.h directly, even + * if this causes name space pollution. Note: we have to go via sys/types.h + * in order to resolve some other compatibility issues. + */ + +#include + +#endif diff --git a/newlib/libc/sys/linux/include/unistd.h b/newlib/libc/sys/linux/include/unistd.h new file mode 100644 index 000000000..e2f562a3a --- /dev/null +++ b/newlib/libc/sys/linux/include/unistd.h @@ -0,0 +1,20 @@ +/* libc/sys/linux/include/unistd.h - Various standard functions */ + +/* Written 2000 by Werner Almesberger */ + + +#ifndef _NEWLIB_UNISTD_H +#define _NEWLIB_UNISTD_H + +#include +#include + +/* Declare some missing goodies */ + +extern char *optarg; +extern int optind, opterr, optopt; + + +int readlink(const char *path, char *buf, size_t bufsiz); + +#endif -- cgit v1.2.3