glibc/sysdeps/unix/sysv/linux/sysconf.c

304 lines
5.1 KiB
C
Raw Normal View History

Sun Apr 28 14:14:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/i386/Makefile: New file. Wed Apr 24 17:35:30 Ulrich Drepper <drepper@cygnus.com> * inet/netinet/in.h, socket/sys/socket.h: Move to sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h. * netinet/in.h, sys/socket.h: Remove file. * misc/Makefile (routines): Add fdatasync. * posix/Makefile (headers): Add sched.h. (routines): Add nanosleep, sched_setp, sched_getp, sched_sets, sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi. * posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS, _POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO, _POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE, _POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING, _POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS. * posix/sched.h: New file. Header for POSIX scheduling interface. * posix/unistd.h: Describe options from POSIX.4. Add declaration of fdatasync. * sysdeps/generic/confname.h: Add definition for _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS. * sysdeps/generic/fdatasync.c: New file. Default implementation simply uses fsync. * sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h. * sysdeps/generic/schedbits.h: New file. System dependent defintion for POSIX.4 scheduling interface. * sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h. * sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c, sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c, sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c, sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c, sysdeps/stub/sched_yield.c: New file: Stub implementation for systems missing these POSIX.4 system calls. * sysdeps/unix/sysv/linux/gnu/types.h, sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for data type definitions. * sysdeps/unix/sysv/linux/netinet/in.h: New file. Linux specific version. * sysdeps/unix/sysv/linux/posix_opt.h: New file. Define POSIX options applicable for Linux. * sysdeps/unix/sysv/linux/syscalls.list: Add definitions for fdatasync, nanosleep, sched_setparam, sched_getparam, sched_setscheduler, sched_getscheduler, sched_yield, sched_get_priority_max, sched_get_priority_min, and sched_rr_get_interval. * sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4 options. * sysdeps/unix/sysv/linux/termbits.h: Use kernel headers. * time/sys/time.h: Remove definition of `struct timespec'. * time/time.h (struct timespec): Move definition to here. variable, LUCKY, to use instead of setting D to -1 (which fouls
1996-04-29 02:25:22 +08:00
/* Copyright (C) 1991, 1993, 1995, 1996 Free Software Foundation, Inc.
Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a sec. Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile, time/Makefile: Make `all' the default target. Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * misc/sys/ptrace.h: Moved to ... * sysdeps/generic/sys/ptrace.h: ... here. * sys/ptrace.h: File removed. Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss so that the symbol alias works. * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected. * sysdeps/unix/sysv/linux/resourcebits.h: New file. * sysdeps/unix/sysv/linux/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid, getppid and reboot. * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not use getdtablesize. Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com> * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c, sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c, sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions to `long' where necessary. Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET. * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET to correctly access MPN array depending on architecture.
1996-02-20 07:14:44 +08:00
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. */
#include <ansidecl.h>
#include <errno.h>
#include <limits.h>
#include <unistd.h>
#include <stddef.h>
#include <stdio.h>
#include <time.h>
extern size_t EXFUN(__getpagesize, (NOARGS));
/* Get the value of the system variable NAME. */
long int
DEFUN(__sysconf, (name), int name)
{
switch (name)
{
default:
errno = EINVAL;
return -1;
case _SC_ARG_MAX:
#ifdef ARG_MAX
return ARG_MAX;
#else
return -1;
#endif
case _SC_CHILD_MAX:
#ifdef CHILD_MAX
return CHILD_MAX;
#else
return -1;
#endif
case _SC_CLK_TCK:
#ifdef CLK_TCK
return CLK_TCK;
#else
return 60;
#endif
case _SC_NGROUPS_MAX:
#ifdef NGROUPS_MAX
return NGROUPS_MAX;
#else
return -1;
#endif
case _SC_OPEN_MAX:
return OPEN_MAX;
case _SC_STREAM_MAX:
#ifdef STREAM_MAX
return STREAM_MAX;
#else
return FOPEN_MAX;
#endif
case _SC_TZNAME_MAX:
return __tzname_max ();
case _SC_JOB_CONTROL:
#ifdef _POSIX_JOB_CONTROL
return 1;
#else
return -1;
#endif
Sun Apr 28 14:14:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/i386/Makefile: New file. Wed Apr 24 17:35:30 Ulrich Drepper <drepper@cygnus.com> * inet/netinet/in.h, socket/sys/socket.h: Move to sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h. * netinet/in.h, sys/socket.h: Remove file. * misc/Makefile (routines): Add fdatasync. * posix/Makefile (headers): Add sched.h. (routines): Add nanosleep, sched_setp, sched_getp, sched_sets, sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi. * posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS, _POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO, _POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE, _POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING, _POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS. * posix/sched.h: New file. Header for POSIX scheduling interface. * posix/unistd.h: Describe options from POSIX.4. Add declaration of fdatasync. * sysdeps/generic/confname.h: Add definition for _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS. * sysdeps/generic/fdatasync.c: New file. Default implementation simply uses fsync. * sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h. * sysdeps/generic/schedbits.h: New file. System dependent defintion for POSIX.4 scheduling interface. * sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h. * sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c, sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c, sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c, sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c, sysdeps/stub/sched_yield.c: New file: Stub implementation for systems missing these POSIX.4 system calls. * sysdeps/unix/sysv/linux/gnu/types.h, sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for data type definitions. * sysdeps/unix/sysv/linux/netinet/in.h: New file. Linux specific version. * sysdeps/unix/sysv/linux/posix_opt.h: New file. Define POSIX options applicable for Linux. * sysdeps/unix/sysv/linux/syscalls.list: Add definitions for fdatasync, nanosleep, sched_setparam, sched_getparam, sched_setscheduler, sched_getscheduler, sched_yield, sched_get_priority_max, sched_get_priority_min, and sched_rr_get_interval. * sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4 options. * sysdeps/unix/sysv/linux/termbits.h: Use kernel headers. * time/sys/time.h: Remove definition of `struct timespec'. * time/time.h (struct timespec): Move definition to here. variable, LUCKY, to use instead of setting D to -1 (which fouls
1996-04-29 02:25:22 +08:00
Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a sec. Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile, time/Makefile: Make `all' the default target. Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * misc/sys/ptrace.h: Moved to ... * sysdeps/generic/sys/ptrace.h: ... here. * sys/ptrace.h: File removed. Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss so that the symbol alias works. * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected. * sysdeps/unix/sysv/linux/resourcebits.h: New file. * sysdeps/unix/sysv/linux/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid, getppid and reboot. * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not use getdtablesize. Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com> * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c, sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c, sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions to `long' where necessary. Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET. * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET to correctly access MPN array depending on architecture.
1996-02-20 07:14:44 +08:00
case _SC_SAVED_IDS:
#ifdef _POSIX_SAVED_IDS
return 1;
#else
return -1;
#endif
Sun Apr 28 14:14:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/i386/Makefile: New file. Wed Apr 24 17:35:30 Ulrich Drepper <drepper@cygnus.com> * inet/netinet/in.h, socket/sys/socket.h: Move to sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h. * netinet/in.h, sys/socket.h: Remove file. * misc/Makefile (routines): Add fdatasync. * posix/Makefile (headers): Add sched.h. (routines): Add nanosleep, sched_setp, sched_getp, sched_sets, sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi. * posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS, _POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO, _POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE, _POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING, _POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS. * posix/sched.h: New file. Header for POSIX scheduling interface. * posix/unistd.h: Describe options from POSIX.4. Add declaration of fdatasync. * sysdeps/generic/confname.h: Add definition for _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS. * sysdeps/generic/fdatasync.c: New file. Default implementation simply uses fsync. * sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h. * sysdeps/generic/schedbits.h: New file. System dependent defintion for POSIX.4 scheduling interface. * sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h. * sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c, sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c, sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c, sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c, sysdeps/stub/sched_yield.c: New file: Stub implementation for systems missing these POSIX.4 system calls. * sysdeps/unix/sysv/linux/gnu/types.h, sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for data type definitions. * sysdeps/unix/sysv/linux/netinet/in.h: New file. Linux specific version. * sysdeps/unix/sysv/linux/posix_opt.h: New file. Define POSIX options applicable for Linux. * sysdeps/unix/sysv/linux/syscalls.list: Add definitions for fdatasync, nanosleep, sched_setparam, sched_getparam, sched_setscheduler, sched_getscheduler, sched_yield, sched_get_priority_max, sched_get_priority_min, and sched_rr_get_interval. * sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4 options. * sysdeps/unix/sysv/linux/termbits.h: Use kernel headers. * time/sys/time.h: Remove definition of `struct timespec'. * time/time.h (struct timespec): Move definition to here. variable, LUCKY, to use instead of setting D to -1 (which fouls
1996-04-29 02:25:22 +08:00
case _SC_REALTIME_SIGNALS:
#ifdef _POSIX_REALTIME_SIGNALS
return 1;
#else
return -1;
#endif
case _SC_PRIORITY_SCHEDULING:
#ifdef _POSIX_PRIORITY_SCHEDULING
return 1;
#else
return -1;
#endif
case _SC_TIMERS:
#ifdef _POSIX_TIMERS
return 1;
#else
return -1;
#endif
case _SC_ASYNCHRONOUS_IO:
#ifdef _POSIX_ASYNCHRONOUS_IO
return 1;
#else
return -1;
#endif
case _SC_PRIORITIZED_IO:
#ifdef _POSIX_PRIORITIZED_IO
return 1;
#else
return -1;
#endif
case _SC_SYNCHRONIZED_IO:
#ifdef _POSIX_SYNCHRONIZED_IO
return 1;
#else
return -1;
#endif
case _SC_FSYNC:
#ifdef _POSIX_FSYNC
return 1;
#else
return -1;
#endif
case _SC_MAPPED_FILES:
#ifdef _POSIX_MAPPED_FILES
return 1;
#else
return -1;
#endif
case _SC_MEMLOCK:
#ifdef _POSIX_MEMLOCK
return 1;
#else
return -1;
#endif
case _SC_MEMLOCK_RANGE:
#ifdef _POSIX_MEMLOCK_RANGE
return 1;
#else
return -1;
#endif
case _SC_MEMORY_PROTECTION:
#ifdef _POSIX_MEMORY_PROTECTION
return 1;
#else
return -1;
#endif
case _SC_MESSAGE_PASSING:
#ifdef _POSIX_MESSAGE_PASSING
return 1;
#else
return -1;
#endif
case _SC_SEMAPHORES:
#ifdef _POSIX_SEMAPHORES
return 1;
#else
return -1;
#endif
case _SC_SHARED_MEMORY_OBJECTS:
#ifdef _POSIX_SHARED_MEMORY_OBJECTS
return 1;
#else
return -1;
#endif
Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a sec. Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile, time/Makefile: Make `all' the default target. Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * misc/sys/ptrace.h: Moved to ... * sysdeps/generic/sys/ptrace.h: ... here. * sys/ptrace.h: File removed. Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss so that the symbol alias works. * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected. * sysdeps/unix/sysv/linux/resourcebits.h: New file. * sysdeps/unix/sysv/linux/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid, getppid and reboot. * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not use getdtablesize. Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com> * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c, sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c, sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions to `long' where necessary. Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET. * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET to correctly access MPN array depending on architecture.
1996-02-20 07:14:44 +08:00
case _SC_VERSION:
return _POSIX_VERSION;
case _SC_PAGESIZE:
return __getpagesize ();
case _SC_BC_BASE_MAX:
#ifdef BC_BASE_MAX
return BC_BASE_MAX;
#else
return -1;
#endif
case _SC_BC_DIM_MAX:
#ifdef BC_DIM_MAX
return BC_DIM_MAX;
#else
return -1;
#endif
case _SC_BC_SCALE_MAX:
#ifdef BC_SCALE_MAX
return BC_SCALE_MAX;
#else
return -1;
#endif
case _SC_BC_STRING_MAX:
#ifdef BC_STRING_MAX
return BC_STRING_MAX;
#else
return -1;
#endif
case _SC_EQUIV_CLASS_MAX:
#ifdef EQUIV_CLASS_MAX
return EQUIV_CLASS_MAX;
#else
return -1;
#endif
case _SC_EXPR_NEST_MAX:
#ifdef EXPR_NEST_MAX
return EXPR_NEST_MAX;
#else
return -1;
#endif
case _SC_LINE_MAX:
#ifdef LINE_MAX
return LINE_MAX;
#else
return -1;
#endif
case _SC_RE_DUP_MAX:
#ifdef RE_DUP_MAX
return RE_DUP_MAX;
#else
return -1;
#endif
Wed May 1 09:10:04 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h include. Mon Apr 29 02:48:26 1996 Ulrich Drepper <drepper@cygnus.com> * ctype/ctype-info.c: (__ctype_width): New variable. (__ctype_names): Initialize correctly without offset. * locale/C-collate.c, locale/C-ctype.c, locale/C-messages.c, locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c: Change copyright. * locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct endianess for initialization value. * locale/lc-ctype.c (current): Add parameter for offset. (__ctype32_b, __ctype_width): Add initialization for these variables. * locale/programs/charmap.c: Finish support for WIDTH information. (new_width): New function. * locale/programs/charset.h (width_rule): new data structure. (charset_t): Add elements for width information. * locale/programs/ld-ctype.c (locale_ctype_t): Add element for width information. (allocate_arrays): Add new argument for charset. (ctype_finish): Make sure all characters named in charset width table are known to name table. (ctype_output): Correct handling of class and map name information and write out width information. (find_idx): Prepare for being called with NULL pointer as TABLE argument. This means only allocate name entry. (allocate_arrays): Correct handling of array element -1. Because EOF == -1 the value of element 127 must *not* be mirrored here. Fill width information from charset tables. * locale/programs/localedef.c (main): Correct loop over all categories after change of order from Thu Mar 28 14:22:51 1996. Add new charset argument to call of `write_all_categories'. * locale/programs/locales.h (ctype_finish, ctype_output): New charset argument. * locale/programs/locfile.c (write_all_categories): Call `ctype_output' with additional argument charset. * posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO, and _POSIX_PRIO_IO definitions. * posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX and CHARCLASS_NAME_MAX. * posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO, and _POSIX_PRIO_IO. * stdlib/grouping.h: Prepare for use in wide string functions. * stdlib/stdlib.h: Correct prototypes for __strto*_internal functions. * stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'. * stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'. * string/strcoll.c: Extend for use as `wcscoll'. * string/strxfrm.c: Extend for use as `wcsxfrm'. * sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO, _PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX. * sysdeps/generic/stpncpy.c: Correct return value. * sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO, _PC_ASYNC_IO, and _PC_PRIO_IO. * sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX. * sysdeps/stub/sysconf.c: Ditto. * sysdeps/unix/sysv/sysv4/sysconf.c: Ditto. * sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h. * sysdeps/unix/sysv/linux/Makefile [subdir == misc] (sysdep_routines): Add s_sysctl and sysctl. * sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap. * sysdeps/unix/sysv/linux/sys/socket.h: New file. Wrapper around kernel header. * sysdeps/unix/sysv/linux/sys/sysctl.h: New file. Define interface to `sysctl' function. * sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl. * sysdeps/unix/sysv/linux/sysconf.c: Add handling of _SC_CHARCLASS_NAME_MAX. * sysdeps/unix/sysv/linux/sysctl.c: new file. Implement caller of _sysctl system call. * sysvipc/Makefile (routines): Add ftok. * sysvipc/ftok.c: use variable `proj_id' not `id'. Patch by David Mosberger-Tang. * wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol, wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll, wcsxfrm, wcwidth, and wcswidth. * wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol, wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll, wcsxfrm, wcwidth, and wcswidth. Declare internal interfaces for wcsto* functions. [OPTIMIZE]: Define inline functions for wcsto* functions to call internal interface functions. * wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files. Implement non- standard function equivalent to stpcpy/stpncpy. * wcsmbs/wcscoll.c: Implement `wcscoll' function by using `strcoll' implementation. * wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of wchar_t. * wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod' implementation. * wcsmbs/wcstof.c: Same for `wcstof'. * wcsmbs/wcstold.c: Same for `strtold'. * wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol' implementation. * wcsmbs/wcstoq.c: Same for `wcstoq'. * wcsmbs/wcstoul.c: Same for `wcstoul'. * wcsmbs/wcstouq.c: Same for `wcstouq'. * wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open CAE. * wcsmbs/wcwidth.c: Ditto for `wcwidth'. * wcsmbs/wcwidth.h: Common function for definitions of above two functions. * wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using `strxfrm implementation. * wctype/wctype.c: Remove case for `wctype_t' being 16 bit type. * wctype/wctype.h (wint_t): Protect against multiple definition. (wctype_t): Always define as `unsigned long int'. * wctype.h: New file. Wrapper around wctype/wctype.h. * hurd/hurdstartup.c (_hurd_split_args): Function removed. (_hurd_startup): Use argz functions. * hurd/hurdexec.c: Use argz functions.
1996-05-01 21:55:18 +08:00
case _SC_CHARCLASS_NAME_MAX:
#ifdef CHARCLASS_NAME_MAX
return CHARCLASS_NAME_MAX;
#else
return -1;
#endif
Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a sec. Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile, time/Makefile: Make `all' the default target. Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * misc/sys/ptrace.h: Moved to ... * sysdeps/generic/sys/ptrace.h: ... here. * sys/ptrace.h: File removed. Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss so that the symbol alias works. * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected. * sysdeps/unix/sysv/linux/resourcebits.h: New file. * sysdeps/unix/sysv/linux/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid, getppid and reboot. * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not use getdtablesize. Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com> * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c, sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c, sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions to `long' where necessary. Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET. * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET to correctly access MPN array depending on architecture.
1996-02-20 07:14:44 +08:00
case _SC_2_VERSION:
/* This is actually supposed to return the version
of the 1003.2 utilities on the system {POSIX2_VERSION}. */
return _POSIX2_C_VERSION;
case _SC_2_C_BIND:
#ifdef _POSIX2_C_BIND
return _POSIX2_C_BIND;
#else
return -1;
#endif
case _SC_2_C_DEV:
#ifdef _POSIX2_C_DEV
return _POSIX2_C_DEV;
#else
return -1;
#endif
case _SC_2_FORT_DEV:
#ifdef _POSIX2_FORT_DEV
return _POSIX2_FORT_DEV;
#else
return -1;
#endif
case _SC_2_LOCALEDEF:
#ifdef _POSIX2_LOCALEDEF
return _POSIX2_LOCALEDEF;
#else
return -1;
#endif
case _SC_2_SW_DEV:
#ifdef _POSIX2_SW_DEV
return _POSIX2_SW_DEV;
#else
return -1;
#endif
}
}
weak_alias (__sysconf, sysconf)