diff options
Diffstat (limited to 'sysdeps/stub')
-rw-r--r-- | sysdeps/stub/getsysstats.c | 68 | ||||
-rw-r--r-- | sysdeps/stub/sysconf.c | 25 |
2 files changed, 93 insertions, 0 deletions
diff --git a/sysdeps/stub/getsysstats.c b/sysdeps/stub/getsysstats.c new file mode 100644 index 0000000000..c8fe700ded --- /dev/null +++ b/sysdeps/stub/getsysstats.c @@ -0,0 +1,68 @@ +/* getsysstats - Determine various system internal values, stub version. +Copyright (C) 1996 Free Software Foundation, Inc. +This file is part of the GNU C Library. +Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. + +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., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +#include <errno.h> +#include <sys/sysinfo.h> + +int +__get_nprocs_conf () +{ + /* We don't know how to determine the number. Simply return always 1. */ + return 1; +} +weak_alias (__get_nprocs_conf, get_nprocs_conf) + +link_warning (get_nprocs_conf, "warning: get_nprocs_conf will always return 1") + + + +int +__get_nprocs () +{ + /* We don't know how to determine the number. Simply return always 1. */ + return 1; +} +weak_alias (__get_nprocs, get_nprocs) + +link_warning (get_nprocs, "warning: get_nprocs will always return 1") + + +int +__get_phys_pages () +{ + /* We have no general way to determine this value. */ + errno = ENOSYS; + return -1; +} +weak_alias (__get_phys_pages, get_phys_pages) + +link_warning (get_phys_pages, "warning: get_phys_pages will always fail") + + +int +__get_avphys_pages () +{ + /* We have no general way to determine this value. */ + errno = ENOSYS; + return -1; +} +weak_alias (__get_avphys_pages, get_avphys_pages) + +link_warning (get_avphys_pages, "warning: get_avphys_pages will always fail") diff --git a/sysdeps/stub/sysconf.c b/sysdeps/stub/sysconf.c index 613ef674b8..1351b48fe0 100644 --- a/sysdeps/stub/sysconf.c +++ b/sysdeps/stub/sysconf.c @@ -17,9 +17,11 @@ not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include <errno.h> +#include <stdio.h> #include <unistd.h> #include <time.h> #include <limits.h> +#include <sys/sysinfo.h> /* Get the value of the system variable NAME. */ @@ -64,6 +66,27 @@ __sysconf (name) return -1; #endif + case _SC_NPROCESSORS_CONF: + return __get_nprocs_conf (); + + case _SC_NPROCESSORS_ONLN: + return __get_nprocs (); + + case _SC_PHYS_PAGES: + return __get_phys_pages (); + + case _SC_AVPHYS_PAGES: + return __get_avphys_pages (); + + case _SC_ATEXIT_MAX: + /* We have no limit since we use lists. */ + return INT_MAX; + + case _SC_PASS_MAX: + /* We have no limit but since the return value might be used to + allocate a buffer we restrict the value. */ + return BUFSIZ; + case _SC_ARG_MAX: case _SC_CHILD_MAX: case _SC_CLK_TCK: @@ -145,6 +168,8 @@ __sysconf (name) case _SC_THREAD_PRIO_PROTECT: case _SC_THREAD_PROCESS_SHARED: + case _SC_XOPEN_VERSION: + break; } |