about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2012-08-17 09:55:17 -0700
committerRoland McGrath <roland@hack.frob.com>2012-08-17 09:55:17 -0700
commite66a42f57fd20d1c7bbdc5f7937831d13bcf709b (patch)
tree6aba9ac56780e910339abe7a18ccb80f466ee3d0 /sysdeps
parentb7c08a66f6b8855ce93743a0f4587667301fa8f9 (diff)
downloadglibc-e66a42f57fd20d1c7bbdc5f7937831d13bcf709b.tar.gz
glibc-e66a42f57fd20d1c7bbdc5f7937831d13bcf709b.tar.xz
glibc-e66a42f57fd20d1c7bbdc5f7937831d13bcf709b.zip
Split sys/param.h out into common file and sysdeps bits/param.h file.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/sys/param.h78
-rw-r--r--sysdeps/mach/hurd/bits/param.h (renamed from sysdeps/mach/hurd/sys/param.h)59
-rw-r--r--sysdeps/unix/sysv/linux/bits/param.h42
-rw-r--r--sysdeps/unix/sysv/linux/sys/param.h82
4 files changed, 48 insertions, 213 deletions
diff --git a/sysdeps/generic/sys/param.h b/sysdeps/generic/sys/param.h
deleted file mode 100644
index c829e9767a..0000000000
--- a/sysdeps/generic/sys/param.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Compatibility header for old-style Unix parameters and limits.  Stub version.
-   Copyright (C) 2012 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 Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 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
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#ifndef _SYS_PARAM_H
-
-#define _SYS_PARAM_H    1
-#include <features.h>
-
-#define __need_NULL
-#include <stddef.h>
-
-#include <sys/types.h>
-#include <errno.h>
-#include <signal.h>
-#include <endian.h>
-#include <limits.h>
-
-
-/* BSD names for some <limits.h> values.  We do not define the BSD names
-   for the values which are not statically limited, such as NOFILE.  */
-
-#define NBBY            CHAR_BIT
-#ifdef NGROUPS_MAX
-# define NGROUPS         NGROUPS_MAX
-#endif
-#ifdef SYMLOOP_MAX
-# define MAXSYMLINKS     SYMLOOP_MAX
-#endif
-#define CANBSIZ         MAX_CANON /* XXX ? */
-
-/* ARG_MAX is unlimited, but we define NCARGS for BSD programs that want to
-   compare against some fixed limit.  */
-#define NCARGS          INT_MAX
-
-
-/* Magical constants.  */
-#define NOGROUP 65535           /* Marker for empty group set member.  */
-#define NODEV   ((dev_t) -1)    /* Non-existent device.  */
-
-
-/* Bit map related macros.  */
-#define setbit(a,i)     ((a)[(i)/NBBY] |= 1<<((i)%NBBY))
-#define clrbit(a,i)     ((a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
-#define isset(a,i)      ((a)[(i)/NBBY] & (1<<((i)%NBBY)))
-#define isclr(a,i)      (((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)
-
-/* Macros for counting and rounding.  */
-#ifndef howmany
-# define howmany(x, y)  (((x)+((y)-1))/(y))
-#endif
-#define roundup(x, y)   ((((x)+((y)-1))/(y))*(y))
-#define powerof2(x)     ((((x)-1)&(x))==0)
-
-/* Macros for min/max.  */
-#define MIN(a,b) (((a)<(b))?(a):(b))
-#define MAX(a,b) (((a)>(b))?(a):(b))
-
-
-/* Unit of `st_blocks'.  */
-#define DEV_BSIZE       512
-
-
-#endif   /* sys/param.h */
diff --git a/sysdeps/mach/hurd/sys/param.h b/sysdeps/mach/hurd/bits/param.h
index e58d5175bd..d52c1edcb6 100644
--- a/sysdeps/mach/hurd/sys/param.h
+++ b/sysdeps/mach/hurd/bits/param.h
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993-2012 Free Software Foundation, Inc.
+/* Old-style Unix parameters and limits.  Hurd version.
+   Copyright (C) 1993-2012 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
@@ -15,6 +16,10 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#ifndef _SYS_PARAM_H
+# error "Never use <bits/param.h> directly; include <sys/param.h> instead."
+#endif
+
 /* This file is deprecated and is provided only for compatibility with
    Unix systems.  It is unwise to include this file on programs which
    are intended only for GNU systems.
@@ -52,24 +57,6 @@
  */
 
 
-#ifndef	_SYS_PARAM_H
-
-#define	_SYS_PARAM_H	1
-#include <features.h>
-
-#define __need_NULL
-#include <stddef.h>
-
-#include <sys/types.h>
-#include <errno.h>
-#include <signal.h>
-#include <endian.h>
-#include <limits.h>
-#ifdef notyet
-# include <ufs/param.h>
-#endif
-
-
 /* What versions of BSD we are compatible with.  */
 #define	BSD	199306		/* System version (year & month). */
 #define BSD4_3	1
@@ -81,46 +68,12 @@
 /* BSD names for some <limits.h> values.  We do not define the BSD names
    for the values which are not statically limited, such as NOFILE.  */
 
-#define	NBBY		CHAR_BIT
-#define	NGROUPS		NGROUPS_MAX
-#define	CANBSIZ		MAX_CANON /* XXX ? */
-
-/* ARG_MAX is unlimited, but we define NCARGS for BSD programs that want to
-   compare against some fixed limit.  */
-#define	NCARGS		INT_MAX
 
 /* There is nothing quite equivalent in GNU to Unix "mounts", but there is
    no limit on the number of simultaneously attached filesystems.  */
 #define NMOUNT		INT_MAX
 
 
-/* Magical constants.  */
-#define	NOGROUP	65535		/* Marker for empty group set member.  */
-#define	NODEV	((dev_t) -1)	/* Non-existent device.  */
-
-
-/* Bit map related macros.  */
-#define	setbit(a,i)	((a)[(i)/NBBY] |= 1<<((i)%NBBY))
-#define	clrbit(a,i)	((a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
-#define	isset(a,i)	((a)[(i)/NBBY] & (1<<((i)%NBBY)))
-#define	isclr(a,i)	(((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)
-
-/* Macros for counting and rounding.  */
-#ifndef howmany
-# define howmany(x, y)	(((x)+((y)-1))/(y))
-#endif
-#define	roundup(x, y)	((((x)+((y)-1))/(y))*(y))
-#define powerof2(x)	((((x)-1)&(x))==0)
-
-/* Macros for min/max.  */
-#define	MIN(a,b) (((a)<(b))?(a):(b))
-#define	MAX(a,b) (((a)>(b))?(a):(b))
-
-
-/* Unit of `st_blocks'.  */
-#define DEV_BSIZE       512
-
-
 /* Scale factor for scaled integers used to count %cpu time and load avgs.
 
    The number of CPU `tick's that map to a unique `%age' can be expressed
diff --git a/sysdeps/unix/sysv/linux/bits/param.h b/sysdeps/unix/sysv/linux/bits/param.h
new file mode 100644
index 0000000000..36ca088e5a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/bits/param.h
@@ -0,0 +1,42 @@
+/* Old-style Unix parameters and limits.  Linux version.
+   Copyright (C) 1995-2012 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 Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 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
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#ifndef _SYS_PARAM_H
+# error "Never use <bits/param.h> directly; include <sys/param.h> instead."
+#endif
+
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
+
+#include <linux/limits.h>
+#include <linux/param.h>
+
+/* The kernel headers define ARG_MAX.  The value is wrong, though.  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
+
+#define	MAXSYMLINKS	20
+
+/* The following are not really correct but it is a value we used for a
+   long time and which seems to be usable.  People should not use NOFILE
+   and NCARGS anyway.  */
+#define NOFILE		256
+#define	NCARGS		131072
diff --git a/sysdeps/unix/sysv/linux/sys/param.h b/sysdeps/unix/sysv/linux/sys/param.h
deleted file mode 100644
index c419b86408..0000000000
--- a/sysdeps/unix/sysv/linux/sys/param.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* Copyright (C) 1995-1997,2000,2001,2003,2008,2011
-   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 Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 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
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#ifndef _SYS_PARAM_H
-#define _SYS_PARAM_H	1
-
-#ifndef ARG_MAX
-# define __undef_ARG_MAX
-#endif
-
-#include <limits.h>
-#include <linux/limits.h>
-#include <linux/param.h>
-
-/* The kernel headers defines ARG_MAX.  The value is wrong, though.  */
-#ifdef __undef_ARG_MAX
-# undef ARG_MAX
-# undef __undef_ARG_MAX
-#endif
-
-/* BSD names for some <limits.h> values.  */
-
-#define	NBBY		CHAR_BIT
-#ifndef	NGROUPS
-# define NGROUPS	NGROUPS_MAX
-#endif
-#define	MAXSYMLINKS	20
-#define	CANBSIZ		MAX_CANON
-#define MAXPATHLEN	PATH_MAX
-/* The following are not really correct but it is a value we used for a
-   long time and which seems to be usable.  People should not use NOFILE
-   and NCARGS anyway.  */
-#define NOFILE		256
-#define	NCARGS		131072
-
-
-#include <sys/types.h>
-
-/* Bit map related macros.  */
-#define	setbit(a,i)	((a)[(i)/NBBY] |= 1<<((i)%NBBY))
-#define	clrbit(a,i)	((a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
-#define	isset(a,i)	((a)[(i)/NBBY] & (1<<((i)%NBBY)))
-#define	isclr(a,i)	(((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)
-
-/* Macros for counting and rounding.  */
-#ifndef howmany
-# define howmany(x, y)	(((x) + ((y) - 1)) / (y))
-#endif
-#ifdef __GNUC__
-# define roundup(x, y)	(__builtin_constant_p (y) && powerof2 (y)	      \
-			 ? (((x) + (y) - 1) & ~((y) - 1))		      \
-			 : ((((x) + ((y) - 1)) / (y)) * (y)))
-#else
-# define roundup(x, y)	((((x) + ((y) - 1)) / (y)) * (y))
-#endif
-#define powerof2(x)	((((x) - 1) & (x)) == 0)
-
-/* Macros for min/max.  */
-#define	MIN(a,b) (((a)<(b))?(a):(b))
-#define	MAX(a,b) (((a)>(b))?(a):(b))
-
-
-/* Unit of `st_blocks'.  */
-#define DEV_BSIZE       512
-
-
-#endif	/* sys/param.h */