add directory gnu

This commit is contained in:
gohigh
2024-02-19 00:24:47 -05:00
parent 32616db5a4
commit a40f4cadb0
5086 changed files with 1860970 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
/* Copyright (C) 1991 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
/*
* POSIX Standard: 4.5.2 Process Times <sys/times.h>
*/
#ifndef _SYS_TIMES_H
#define _SYS_TIMES_H 1
#include <features.h>
#define __need_clock_t
#include <time.h>
/* Structure describing CPU time used by a process and its children. */
struct tms
{
clock_t tms_utime; /* User CPU time. */
clock_t tms_stime; /* System CPU time. */
clock_t tms_cutime; /* User CPU time of dead children. */
clock_t tms_cstime; /* System CPU time of dead children. */
};
/* Store the CPU time used by this process and all its
dead children (and their dead children) in BUFFER.
Return the elapsed real time, or (clock_t) -1 for errors.
All times are in CLK_TCKths of a second. */
extern clock_t EXFUN(__times, (struct tms *buffer));
extern clock_t EXFUN(times, (struct tms *buffer));
#ifdef __OPTIMIZE__
#define times(buffer) __times(buffer)
#endif /* Optimizing. */
#endif /* sys/times.h */

View File

@@ -0,0 +1,88 @@
/* Copyright (C) 1991 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
/*
* POSIX Standard: 2.6 Primitive System Data Types <sys/types.h>
*/
#ifndef _SYS_TYPES_H
#define _SYS_TYPES_H 1
#include <features.h>
#include <gnu/types.h>
#ifdef __USE_BSD
#define u_char __u_char
#define u_short __u_short
#define u_int __u_int
#define u_long __u_long
#define quad __quad
#define u_quad __u_quad
#endif
#define dev_t __dev_t
#define gid_t __gid_t
#define ino_t __ino_t
#define mode_t __mode_t
#define nlink_t __nlink_t
#define off_t __off_t
#define pid_t __pid_t
#define uid_t __uid_t
#ifndef ssize_t
#define ssize_t __ssize_t
#endif
#ifdef __USE_BSD
#define daddr_t __daddr_t
#define caddr_t __caddr_t
#endif
#define __need_time_t
#include <time.h>
#define __need_size_t
#include <stddef.h>
#ifdef __USE_BSD
#define FD_SETSIZE __FD_SETSIZE
#define fd_set __fd_set
#define FD_ZERO(set) __FD_ZERO(set)
#define FD_SET(d, set) __FD_SET((d), (set))
#define FD_CLR(d, set) __FD_CLR((d), (set))
#define FD_ISSET(d, set)__FD_ISSET((d), (set))
#endif
#include <gnu/time.h>
/* Check the first NFDS descriptors each in READFDS (if not NULL) for read
readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS
(if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out
after waiting the interval specified therein. Returns the number of ready
descriptors, or -1 for errors. */
extern int EXFUN(__select, (int __nfds, __fd_set *__readfds,
__fd_set *__writefds, __fd_set *__exceptfds,
struct __timeval *__timeout));
#ifdef __USE_BSD
#define select __select
#endif /* Use BSD. */
#endif /* sys/types.h */

View File

@@ -0,0 +1,61 @@
/* Copyright (C) 1991 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
/*
* POSIX Standard: 4.4 System Identification <sys/utsname.h>
*/
#ifndef _SYS_UTSNAME_H
#define _SYS_UTSNAME_H 1
#include <features.h>
/* The size of the character arrays used to hold the information
in a `struct utsname'. Enlarge this as necessary. */
#define _UTSNAME_LENGTH 100
/* Structure describing the system and machine. */
struct utsname
{
/* Name of the implementation of the operating system. */
char sysname[_UTSNAME_LENGTH];
/* Name of this node on the network. */
char nodename[_UTSNAME_LENGTH];
/* Current release level of this implementation. */
char release[_UTSNAME_LENGTH];
/* Current version level of this release. */
char version[_UTSNAME_LENGTH];
/* Name of the hardware type the system is running on. */
char machine[_UTSNAME_LENGTH];
};
/* Put information about the system in NAME. */
extern int EXFUN(uname, (struct utsname *__name));
/* Store the nodename in NAME, writing no more than LEN characters. */
extern int EXFUN(__uname_getnode, (char *__name, unsigned int __len));
#endif /* sys/utsname.h */

View File

@@ -0,0 +1,148 @@
/* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
/*
* POSIX Standard: 3.2.1 Wait for Process Termination <sys/wait.h>
*/
#ifndef _SYS_WAIT_H
#define _SYS_WAIT_H 1
#include <features.h>
#include <gnu/types.h>
#include <gnu/wait.h>
#define WNOHANG __WNOHANG
#define WUNTRACED __WUNTRACED
/* Encoding of the status word. */
#include <endian.h>
#ifdef __USE_BSD
union __wait
{
#ifdef __LITTLE_ENDIAN
struct
{
unsigned int __w_termsig:7;
unsigned int __w_coredump:1;
unsigned int __w_retcode:8;
unsigned int :16;
} __wait_status;
#else /* Big endian. */
struct
{
unsigned int :16;
unsigned int __w_retcode:8;
unsigned int __w_coredump:1;
unsigned int __w_termsig:7;
} __wait_status;
#endif /* Little endian. */
};
#define w_termsig __wait_status.__w_termsig
#define w_coredump __wait_status.__w_coredump
#define w_retcode __wait_status.__w_retcode
#define w_stopsig w_retcode
#ifdef __GNUC__
#define __WAIT_INT(status) \
(__extension__ ({ union { __typeof(status) __in; int __i; } __u; \
__u.__in = (status); __u.__i; }))
#else
#define __WAIT_INT(status) (*(int *) &(status))
#endif
/* This is the type of the argument to `wait'.
With GCC v2, this will be a strange union. */
/* IGNORE(@This line MUST be split! m4 will not change it otherwise.@) */
#define __WAIT_STATUS \
PTR
#else /* Don't use BSD. */
#define __WAIT_INT(status) (status)
#define __WAIT_STATUS int *
#endif /* Use BSD. */
#define WEXITSTATUS(status) __WEXITSTATUS(__WAIT_INT(status))
#define WTERMSIG(status) __WTERMSIG(__WAIT_INT(status))
#define WSTOPSIG(status) __WSTOPSIG(__WAIT_INT(status))
#define WIFEXITED(status) __WIFEXITED(__WAIT_INT(status))
#define WIFSIGNALED(status) __WIFSIGNALED(__WAIT_INT(status))
#define WIFSTOPPED(status) __WIFSTOPPED(__WAIT_INT(status))
#ifdef __USE_BSD
#define WCOREDUMP(status) __WCOREDUMP(__WAIT_INT(status))
#define W_EXITCODE(ret, sig) __W_EXITCODE(ret, sig)
#define W_STOPCODE(sig) __W_STOPCODE(sig)
#endif
/* Wait for a child to die. When one does, put its status in *STAT_LOC
and return its process ID. For errors, return (pid_t) -1. */
extern __pid_t EXFUN(__wait, (__WAIT_STATUS __stat_loc));
extern __pid_t EXFUN(wait, (__WAIT_STATUS __stat_loc));
#ifdef __USE_BSD
/* Special values for the PID argument to `waitpid' and `wait4'. */
#define WAIT_ANY (-1) /* Any process. */
#define WAIT_MYPGRP 0 /* Any process in my process group. */
#endif
/* Wait for a child matching PID to die.
If PID is greater than 0, match any process whose process ID is PID.
If PID is (pid_t) -1, match any process.
If PID is (pid_t) 0, match any process with the
same process group as the current process.
If PID is less than -1, match any process whose
process group is the absolute value of PID.
If the WNOHANG bit is set in OPTIONS, and that child
is not already dead, return (pid_t) 0. If successful,
return PID and store the dead child's status in STAT_LOC.
Return (pid_t) -1 for errors. If the WUNTRACED bit is
set in OPTIONS, return status for stopped children; otherwise don't. */
extern __pid_t EXFUN(__waitpid, (__pid_t __pid, int *__stat_loc,
int __options));
#ifdef __USE_BSD
/* Wait for a child to exit. When one does, put its status in *STAT_LOC and
return its process ID. For errors return (pid_t) -1. If USAGE is not nil,
store information about the child's resource usage (as a `struct rusage')
there. If the WUNTRACED bit is set in OPTIONS, return status for stopped
children; otherwise don't. */
extern __pid_t EXFUN(__wait3, (union __wait *__stat_loc,
int __options, PTR __usage));
#define wait3 __wait3
/* PID is like waitpid. Other args are like wait3. */
extern __pid_t EXFUN(__wait4, (__pid_t __pid, union __wait *__stat_loc,
int __options, PTR __usage));
#define wait4 __wait4
#endif /* Use BSD. */
#define waitpid __waitpid
#define wait __wait
#endif /* sys/wait.h */