summaryrefslogtreecommitdiffstats
path: root/newlib/libc/include/sys
Commit message (Collapse)AuthorAgeFilesLines
* Remove inclusion of sys/select.h in sys/types.h for backward compatCorinna Vinschen2015-12-171-2/+0
| | | | | | * libc/include/sys/types.h: Remove including <sys/select.h>. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add _REENT_INIT_PTR_ZEROED()Sebastian Huber2015-12-141-6/+9
| | | | | | | | Provide a _REENT_INIT_PTR_ZEROED() macro to initialize an already zero-initialized struct _reent. * libc/include/sys/reent.h (_REENT_INIT_PTR_ZEROED): New. (_REENT_INIT_PTR): Define only once and use _REENT_INIT_PTR_ZEROED().
* FreeBSD compatibility for <sys/select.h>Sebastian Huber2015-12-145-15/+58
| | | | | | | | | | | | * libc/include/sys/_sigset.h: New. * libc/include/sys/select.h: Do not include <sys/types.h> and <sys/time.h> to avoid cyclic header file dependencies. Include specialized header files instead. (sigset_t): Conditionally define. * libc/include/sys/signal.h (sigset_t): Likewise. * libc/include/sys/time.h: Include <sys/select.h> if __BSD_VISIBLE. * libc/include/sys/types.h: Likewise.
* Move fd_stuff from sys/types.h to sys/select.hCorinna Vinschen2015-12-073-46/+94
| | | | | | | | | | | | | | | | | | * libc/include/sys/types.h: Move definitions of NBBY and howmany to sys/param.h. Move definitions of select(2) macros to sys/select.h. * libc/include/sys/param.h: See above. * libc/include/sys/select.h: Move Cygwin's sys/select.h here. * include/sys/select.h: Move select(2) macros from newlib's sys/types.h here. Rename howmany to _howmany to unclutter namespace. Move file to newlib. * libc/rexex.cc: Add declaration for cygwin_gethostname. * poll.cc: Include sys/param.h and locale select.h. * select.h (cygwin_select): Declare. * uname.cc: Declare cygwin_gethostname. * winsup.h: Drop declarations of cygwin_select and cygwin_gethostname. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Extend _intsup.h to support 16-bit and 20-bit pointers.Nick Clifton2015-10-191-1/+10
| | | | | * libc/include/sys/_intsup.h: Add support for 16-bit and 20-bit pointers.
* Synchronize with FreeBSD.Jeff Johnston2015-10-131-22/+138
| | | | | * libc/include/sys/cdefs.h: Synchronize with latest FreeBSD version.
* Add FreeBSD style changes to sys/cdefs.hJeff Johnston2015-10-131-32/+32
| | | | | * libc/include/sys/cdefs.h: Add style changes of latest FreeBSD version.
* Allow sysconf to return CPU cache informationCorinna Vinschen2015-08-291-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/sys/unistd.h (_SC_LEVEL*): Add cache-related variables as on Linux. * fhandler_proc.cc (format_proc_cpuinfo): Fetch cache information from new cache functions in sysconf.cc, get_cpu_cache_intel and get_cpu_cache_amd. * sysconf.cc (__nt_query_system): New local helper. (get_nproc_values): Utilize __nt_query_system on pre-Windows 7 systems. Use GetLogicalProcessorInformationEx otherwise to handle more than 64 CPUs. Only handle _SC_NPROCESSORS_CONF and _SC_NPROCESSORS_ONLN. (get_phys_pages): New helper to handle _SC_PHYS_PAGES. (cpuid2_cache_descriptor): New array to map Intel CPUID 2 descriptor values to cache type, cache size, associativity and linesize. (cpuid2_cache_desc_compar): Comparision function for bsearch over cpuid2_cache_descriptor. (get_cpu_cache_intel_cpuid2): New function to fetch cache info from Intel CPUID 2. (get_cpu_cache_intel_cpuid4): Ditto from Intel CPUID 4. (get_cpu_cache_intel): New function as CPU-specific entry point. (assoc): New array to map associativity values from AMD CPUID 0x80000006. (get_cpu_cache_amd): New function to fetch cache info from AMD CPUIDs 0x80000005 and 0x80000006. (get_cpu_cache): New function to fetch cache info. (sca): Call get_phys_pages if _SC_PHYS_PAGES is requested. Call get_cpu_cache for new _SC_* cache requests. (SC_MAX): Set to _SC_LEVEL4_CACHE_LINESIZE. (get_phys_pages(void)): Call get_phys_pages(int). * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. * new-features.xml (ov-new2.3): Document sysconf cache addition. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix for pri and scn formatsAndre Simoes Dias Vieira2015-08-271-13/+142
|
* Always declare "kill" in include/sys/signal.hJames Greenhalgh2015-08-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Hi, As I mentioned recently [1], newlib is providing a "kill" symbol to link against, without declaring "kill" in signal.h. This is confusing for the libgfortran build, which tries to link against kill (which succeeds), then tries to use it (which triggers -Werror=implicit-function-declaration). This patch implements my suggestion in that thread - making the declaration of 'kill' in libc/include/sys/signal.h unconditional. I've tested this by building a modified libgfortran on AArch64/ARM to see that the Werror goes away, and the libgfortran build succeeds. Is something like this OK for newlib? If so, can someone please commit it on my behalf, as I have no commit access here. Otherwise, what is your preferred direction for me to take this patch? Thanks, James
* sys/signal.h: include sys/ucontext.h on Cygwin per POSIX.1-2008Yaakov Selkowitz2015-08-181-0/+6
| | | | | | | * libc/include/sys/signal.h [__CYGWIN__]: include <sys/ucontext.h> if compiling for POSIX.1-2008. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* Fix sys/time.h build problem due to inconsistent macro usageCorinna Vinschen2015-07-062-2/+4
| | | | | | | | | | | | | https://sourceware.org/ml/newlib/2015/msg00520.html describes how sys/time.h uses __BSD_VISIBLE while the types used in the affected inline functions are guarded with !_POSIX_SOURCE. Fix that by guarding the type with __BSD_VISIBLE as well. * libc/include/sys/time.h: Explicitely include sys/cdefs.h. * libc/include/sys/types.h: Ditto. Guard BSD convenience base types with __BSD_VISIBLE rather than !_POSIX_SOURCE. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* sys/signal.h requires sys/cdefs.hCorinna Vinschen2015-06-221-0/+1
| | | | | | * libc/include/sys/signal.h: Include forgotten sys/cdefs.h. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Use MINSIGSTKSZ and SIGSTKSZ from newlib for Cygwin as wellCorinna Vinschen2015-06-201-14/+14
| | | | | | | | | | * libc/include/sys/signal.h: Move altstack macros completely outside of rtems block. * include/cygwin/signal.h: Remove definitions of MINSIGSTKSZ and SIGSTKSZ here. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Preliminary infrastructure to implement alternate stackCorinna Vinschen2015-06-191-6/+7
| | | | | | | | | | | | | | | | | | | | | | | * libc/include/sys/signal.h: Define SS_ONSTACK and SS_DISABLE unconditionally. (sigaltstack): Enable prototype on Cygwin. * common.din (sigaltstack): Export. * cygtls.cc (_cygtls::init_thread): Initialize altstack. * cygtls.h (__tlsstack_t): Rename from __stack_t to distinguish more clearly from stack_t. Accommodate throughout. (_cygtls): Add altstack member. * exceptions.cc (exception::handle): Set SIGSEGV handler to SIG_DFL if we encounter a stack overflow, and no alternate stack has been defined. * include/cygwin/signal.h (MINSIGSTKSZ): Define (SIGSTKSZ): Define. (SA_ONSTACK): Define. * signal.cc (sigaltstack): New function. * tlsoffset.h: Regenerate. * tlsoffset64.h: Ditto. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix comment in sys/wait.hCorinna Vinschen2015-05-281-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Revert to exposing sys/select.h from sys/time.h on CygwinCorinna Vinschen2015-05-021-0/+6
| | | | | | * libc/include/sys/time.h: Include sys/select.h on Cygwin. Explain why. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Improve check for int32_t being long or intCorinna Vinschen2015-04-292-26/+35
| | | | | | | | | | | | | | * libc/include/sys/config.h: Move evaluation of _UINTPTR_EQ_ULONG and _UINTPTR_EQ_ULONGLONG from here... * libc/include/sys/_intsup.h: ...to here. Rename to _INTPTR_EQ_LONG and _INTPTR_EQ_LONGLONG to refer to signed base type. Add test for base type of int32_t and set _INT32_EQ_LONG accordingly. * libc/include/stdint.h: Change checks for __have_long32 to checks for _INT32_EQ_LONG. * libc/include/inttypes.h: Ditto. Accommodate aforementioned name change. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add <sys/_stdint.h> for FreeBSD compatibilitySebastian Huber2015-04-233-18/+68
| | | | | | | | | | | | | | | | | | | | * libc/include/sys/_stdint.h: New file. * libc/include/stdint.h (int8_t): Move to <sys/_stdint.h>. (uint8_t): Likewise. (int16_t): Likewise. (uint16_t): Likewise. (int32_t): Likewise. (uint32_t): Likewise. (int64_t): Likewise. (uint64_t): Likewise. (intptr_t): Likewise. (uintptr_t): Likewise. * libc/include/sys/types.h: Include <sys/_stdint.h>. * libc/sys/rtems/machine/_types.h: Remove <stdint.h> include. * libc/sys/time.h>: Replace __uint32_t with uint32_t and __uint64_t with uint64_t. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Make stack_t typedef generally availableJon TURNEY2015-04-231-9/+9
| | | | | | | * libc/include/sys/signal.h (stack_t): Make typedef generally available. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Import <sys/tree.h> from FreeBSDSebastian Huber2015-04-231-0/+801
| | | | * libc/include/sys/tree.h: New file.
* Change from configure time to compile time probe for intptr_t definition.Joel Sherrill2015-04-231-0/+26
| | | | | | | | | | | 2015-03-23 Joel Sherrill <joel.sherrill@oarcorp.com * configure.in: Delete logic to determine _UINTPTR_EQ_ULONGLONG and _UINTPTR_EQ_ULONG at configuration time. *libc/include/sys/config.h: Add logic to determine _UINTPTR_EQ_ULONGLONG and _UINTPTR_EQ_ULONG at compilation time. * libc/include/inttypes.h: Add include of <sys/config.h>. * configure: Regenerated.
* Replace uint32_t/uint64_t type usage with __uint32_t/__uint64_t.Steve Ellcey2015-04-231-18/+18
| | | | | * libc/include/sys/time.h: Replace uint32_t and uint64_t with __uint32_t and __uint64_t.
* Drop including cygwin/sys_time.h on Cygwin.Corinna Vinschen2015-03-131-4/+0
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Merge parts of <sys/time.h> from FreeBSDSebastian Huber2015-03-133-65/+511
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add and use latest <sys/timespec.h> from FreeBSDSebastian Huber2015-03-116-15/+116
| | | | | | | | | | | | | | * libc/include/sys/_timespec.h: Import from FreeBSD. * libc/include/sys/timespec.h: Likewise. * libc/include/time.h: Include <sys/timespec.h>. * libc/include/sys/types.h (timespec): Delete. (itimerspec): Likewise. * libc/include/machine/time.h: Include <sys/_timespec.h>. * libc/include/sys/sched.h: Likewise. * libc/include/sys/signal.h: Likewise. * libc/include/sys/stat.h: Likewise. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* * libc/include/sys/cdefs.h (_GNU_SOURCE): Move check so it has anJon TURNEY2015-02-251-6/+8
| | | | effect when _XOPEN_SOURCE is also defined.
* * libc/include/sys/time.h: #include <sys/cdefs.h> for __BSD_VISIBLE.Corinna Vinschen2015-01-281-0/+1
|
* 2015-01-14 Joel Sherrill <joel.sherrill@oarcorp.com>Jeff Johnston2015-01-141-0/+3
| | | | * libc/include/sys/unistd.h [__BSD_VISIBLE]: Add issetugid() prototype.
* * configure.host: Add extra system for OpenRISC baremetalCorinna Vinschen2015-01-141-0/+4
| | | | | | | | | | | | | * libc/include/sys/config.h: Dynamic reentrancy for or1k sys targets * libc/sys/or1k/: New system for or1k baremetal * libc/sys/or1k/Makefile.am: New file * libc/sys/or1k/Makefile.in: New file * libc/sys/or1k/aclocal.m4: New file * libc/sys/or1k/configure.in: New file * libc/sys/or1k/configure: New file * libc/sys/or1k/getreent.S: New file * libc/sys/or1k/mlock.S: New file * libc/sys/or1k/or1k-asm.S: New file
* 2014-12-26 Freddie Chopin <freddie_chopin@op.pl>Jeff Johnston2015-01-051-2/+2
| | | | * libc/include/sys/features.h: update newlib version and copyright year
* * libc/include/sys/signal.h [__SPU__] (kill): Declare.Corinna Vinschen2014-12-041-2/+5
|
* * libc/include/sys/_default_fcntl.h: Move all Cygwin-specific openCorinna Vinschen2014-11-251-16/+12
| | | | | flags from Cygwin's fcntl.h here. Remove check for WIN32. Remove Windows-specific macros.
* 2014-11-23 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2014-11-241-0/+2
| | | | | * libc/include/sys/resource.h: Add prototype for getrusage() to <sys/resource.h>
* * libc/include/sys/unistd.h (sethostname): Declare ifCorinna Vinschen2014-10-271-0/+3
| | | | requested.
* 2014-10-09 Sebastian Huber <sebastian.huber@embedded-brains.de>Jeff Johnston2014-10-091-0/+36
| | | | | | | | | | | | | | | * libc/include/stdint.h: Include <sys/_intsup.h>. (__STDINT_EXP): Delete. (__have_long32): Likewise. (__have_long64): Likewise. (__have_longlong64): Likewise. * libc/include/sys/_intsup.h: New file. (__STDINT_EXP): Move from libc/include/stdint.h. (__have_long32): Likewise. (__have_long64): Likewise. (__have_longlong64): Likewise. * libc/include/inttypes.h: Include <sys/_intsup.h>. (__INTTYPES_EXP): Delete and use __STDINT_EXP() instead.
* 2014-09-17 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2014-09-171-0/+6
| | | | | * libc/include/sys/features.h: Add __NEWLIB__ and __NEWLIB_MINOR__ macros.
* * libc/include/sys/signal.h: Declare sigaltstack for RTEMS only.Corinna Vinschen2014-08-181-1/+2
|
* 2014-08-18 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2014-08-181-0/+4
| | | | | * libc/include/sys/config.h[__m68k__]: Set _READ_WRITE_RETURN_TYPE to _ssize_t to match underlying code in libgloss.
* 2014-08-18 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2014-08-181-3/+39
| | | | * libc/include/sys/signal.h: Add sigaltstack() support.
* headers: properly decorate attributesEric Blake2014-08-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found by: find -name '*.h' |xargs grep -i 'attribute.*(([a-z]' For an example of the type of bugs this causes, try compiling this valid C11 program (it's valid because 'noreturn' is reserved for use in the user namespace unless you include <stdnoreturn.h>): $ cat foo.c #define noreturn __attribute__((noreturn)) #include <stdlib.h> $ gcc -c -o foo.o -Wall foo.c In file included from /usr/include/stdlib.h:11:0, from foo.c:2: foo.c:1:18: error: expected ')' before '__attribute__' #define noreturn __attribute__((noreturn)) ^ /usr/include/stdlib.h:66:28: error: expected ',' or ';' before ')' token _VOID _EXFUN(abort,(_VOID) _ATTRIBUTE ((noreturn))); ^ * libc/machine/spu/spu_timer_internal.h: Decorate attribute names with __, for namespace safety. * libc/machine/xscale/machine/profile.h: Likewise. * libc/include/stdlib.h: Likewise. * libc/include/_ansi.h: Likewise. * libc/include/sys/unistd.h: Likewise. * libc/sys/linux/linuxthreads/libc-symbols.h: Likewise. * libc/sys/linux/linuxthreads/internals.h: Likewise. * libc/sys/linux/machine/i386/weakalias.h: Likewise. * libc/sys/linux/machine/i386/dl-procinfo.h: Likewise. * libc/sys/linux/machine/i386/dl-machine.h: Likewise. * libc/sys/linux/libc-symbols.h: Likewise. * libc/sys/linux/iconv/gconv_charset.h: Likewise. * libc/sys/linux/include/resolv.h: Likewise. * libc/sys/linux/sys/unistd.h: Likewise. * libc/sys/linux/dl/atomicity.h: Likewise. * libc/sys/linux/dl/dynamic-link.h: Likewise. * libc/sys/linux/dl/ldsodefs.h: Likewise.
* 2014-07-22 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2014-07-221-0/+3
| | | | | * libc/include/sys/time.h: Add prototype for adjtime() and wrap it and settimeofday() prototype with __BSD_VISIBLE.
* * libc/include/sys/errno.h: Fix comments.Corinna Vinschen2014-07-141-19/+19
| | | | | | * libc/string/strerror.c: Fix documentation. (_strerror_r): Handle ENETRESET, EILSEQ, ENODATA, ECONNRESET, EADDRNOTAVAIL, EOVERFLOW. Fix strings for EMFILE and EDOM.
* * libc/include/sys/_default_fcntl.h (LOCK_SH): Define.Corinna Vinschen2014-01-171-1/+11
| | | | | | | (LOCK_EX): Likewise. (LOCK_NB): Likewise. (LOCK_UN): Likewise. (flock): Declare.
* 2014-01-06 Sebastian Huber <sebastian.huber@embedded-brains.de>Jeff Johnston2014-01-063-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | * libc/include/sys/_default_fcntl.h (AT_FDCWD): Define according to POSIX. (AT_EACCESS): Likewise. (AT_SYMLINK_NOFOLLOW): Likewise. (AT_SYMLINK_FOLLOW): Likewise. (AT_REMOVEDIR): Likewise. (openat): Declare according to POSIX. * libc/include/stdio.h (renameat): Likewise. * libc/include/sys/stat.h (fchmodat): Likewise. (fstatat): Likewise. (mkdirat): Likewise. (mkfifoat): Likewise. (mknodat): Likewise. (utimensat): Likewise. (futimens): Likewise. * libc/include/sys/unistd.h (faccessat): Likewise. (fchownat): Likewise. (linkat): Likewise. (readlinkat): Likewise. (symlinkat): Likewise. (unlinkat): Likewise.
* * libc/include/machine/_default_types.h: Move extern "C" afterCorinna Vinschen2013-12-031-4/+4
| | | | | | | | | | | | | | | | | | | | | | | header includes. Include <sys/features.h> for __GNUC_PREREQ__(). (__u?int.*_t): Define via GCC provided __U?INT.*_TYPE__ if available. (__intptr_t): Define. (__uintptr_t): Likewise. * libc/include/stdint.h: Include <machine/_default_types.h> instead of <_ansi.h>. (u?int.*_t): Define via __u?int.*_t provided by <machine/_default_types.h>. (u?int_fast.*_t): Define via GCC provided __U?INT_FAST.*_TYPE__ if available. (U?INT.*(MIN|MAX)): Define via GCC provided __U?INT.*(MIN|MAX)__ if available. (U?INT.*_C): Define via GCC provided __U?INT.*_C if available. * libc/include/sys/cdefs.h: Use <machine/_default_types.h> instead of <stdint.h>. * libc/sys/rtems/sys/cpuset.h: Likewise. * libc/sys/rtems/machine/_types.h: Include <stdint.h> for FreeBSD compatibility.
* 2013-11-29 Jennifer Averett <jennifer.averett@oarcorp.com>Joel Sherrill2013-11-292-2/+16
| | | | | | | | | | | | | * libc/include/pthread.h (pthread_attr_setaffinity_np): Add pthread SMP affinity attributes to methods to RTEMS for compatibility with GNU/Linux. (pthread_attr_getaffinity_np): Likewise. (pthread_setaffinity_np): Likewise. (pthread_getaffinity_np): Likewise. (pthread_getattr_np): Add for GNU/Linux compatibility. * libc/include/sys/types.h: Add cpuset to pthread_attr_t for RTEMS. * libc/include/sys/cdefs.h (_GNU_SOURCE): Defining _GNU_SOURCE turns on all _XXX_VISBLE feature flags.
* 2013-11-22 Bryan Dunsmore <dunsmoreb@gmail.com>Joel Sherrill2013-11-231-3/+4
| | | | | | | * libc/include/sys/time.h (gettimeofday): Add restrict keyword. (setitimer): Likewise. * libc/sys/rdos/gettod.c (gettimeofday): Likewise. * libc/sys/rtems/crt0.c (gettimeofday): Likewise.
* 2013-11-22 Chirayu Desai <chirayudesai1@gmail.com>Joel Sherrill2013-11-221-3/+5
| | | | | | | | * libc/include/sys/unistd.h (readlink): Add restrict keyword. (readlinkat): Ditto. (swab): Ditto. * libc/sys/rdos/readlink.c (readlink): Ditto. * libc/string/swab.c (swab): Ditto.
* 2013-11-21 Daniel Ramirez <javamonn@gmail.com>Joel Sherrill2013-11-211-5/+5
| | | | | | * libc/include/sys/stat.h, libc/sys/linux/sys/stat.h, libc/sys/m88kbug/syscalls.c, libc/sys/rdos/stat.c, libc/sys/sparc64/sys/stat.h: Add restrict keyword.