This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Remove common-objdir-compile and related sysdeps/unix/Makefile code


I looked again at creating generic rules to build things for the build
system as suggested for cross-rpcgen in
<http://sourceware.org/ml/libc-alpha/2012-03/msg00358.html> and
<http://sourceware.org/ml/libc-alpha/2012-03/msg00380.html>.

It's still far from clear to me what can usefully go in a common rule
given all the variations between the handful of places building for
the build system.  But one thing that became clear was that having
$(common-objdir-compile) as an additional variation using $(BUILD_CC)
on top of $(native-compile) certainly complicated any such changes
further.

It turns out that $(common-objdir-compile) is only used in code in
sysdeps/unix/Makefile to extract various information from native Unix
system headers - and that the code in question is not used by any
current port.  In fact there is code there to generate five headers
(bits/local_lim.h sys/param.h bits/errno.h bits/ioctls.h
sys/syscall.h; only some of those use $(common-objdir-compile) in
their rules), and all current ports have their own versions of all
five so this code is unused.  That this code was bitrotten is further
evidenced by it checking whether a sysdeps/generic/ version of a
header was used when some of the generic headers in question had
previously moved to toplevel bits/ from sysdeps/generic/.

Since that code is unused, I propose this patch to remove it (and
associated files in sysdeps/unix that were used only by the removed
makefile code) - if a future port has a use for such code, it can
always add it in whatever sysdeps directory seems most appropriate at
the time.  (I suspect there may be other files in sysdeps/unix that
are also unused on all current ports.)

Tested x86_64.

2012-03-19  Joseph Myers  <joseph@codesourcery.com>

	* Makerules (common-objdir-compile): Remove.
	* sysdeps/unix/Makefile (config-generated): Do not add
	$(unix-generated) to variable.
	[generic bits/local_lim.h] (mk-local_lim-CFLAGS): Remove variable.
	[generic bits/local_lim.h] ($(common-objpfx)bits/local_lim.h):
	Remove rule.
	[generic bits/local_lim.h] ($(common-objpfx)mk-local_lim):
	Likewise.
	[generic bits/local_lim.h] (before-compile): Do not append to
	variable.
	[generic bits/local_lim.h] (common-generated): Likewise.
	[generic sys/param.h] (before-compile): Do not append to variable.
	[generic sys/param.h] ($(common-objpfx)sys/param.h): Remove rule.
	[generic sys/param.h] ($(common-objpfx)param.h.c): Likewise.
	[generic sys/param.h] ($(common-objpfx)param.h.dep): Likewise.
	[generic sys/param.h] ($(common-objpfx)param.h.dep): Do not
	include.
	[generic sys/param.h] (sys/param.h-includes): Remove variable.
	[generic sys/param.h] (sys/param.h-includes): Remove rule.
	[generic sys/param.h] ($(addprefix
	$(common-objpfx),$(sys/param.h-includes))): Likewise.
	[generic sys/param.h] (common-generated): Do not append to
	variable.
	[generic sys/param.h] (sysdep_headers): Likewise.
	[generic bits/errno.h] (before-compile): Do not append to
	variable.
	[generic bits/errno.h] ($(common-objpfx)bits/errno.h): Remove
	rule.
	[generic bits/errno.h] ($(common-objpfx)make-errnos): Likewise.
	[generic bits/errno.h] ($(common-objpfx)make-errnos.c): Likewise.
	[generic bits/errno.h] ($(common-objpfx)errnos): Likewise.
	[generic bits/errno.h] (common-generated): Do not append to
	variable.
	[generic bits/ioctls.h] (before-compile): Do not append to
	variable.
	[generic bits/ioctls.h] ($(common-objpfx)bits/ioctls.h): Remove
	rule.
	[generic bits/ioctls.h] (ioctl-includes): Remove variable.
	[generic bits/ioctls.h] (make-ioctls-CFLAGS): Likewise.
	[generic bits/ioctls.h] ($(common-objpfx)make-ioctls): Remove
	rule.
	[generic bits/ioctls.h] ($(common-objpfx)make-ioctls.c): Likewise.
	[generic bits/ioctls.h] (bits_termios.h): Remove variable.
	[generic bits/ioctls.h] ($(common-objpfx)ioctls): Remove rule.
	[generic bits/ioctls.h] (common-generated): Do not append to
	variable.
	[generic sys/syscall.h] (syscall.h): Remove variable.
	[generic sys/syscall.h] ($(common-objpfx)sys/syscall.h): Remove
	rule.
	[generic sys/syscall.h] (before-compile): Do not append to
	variable.
	[generic sys/syscall.h] (common-generated): Likewise.
	* sysdeps/unix/errnos-tmpl.c: Remove file.
	* sysdeps/unix/errnos.awk: Likewise.
	* sysdeps/unix/ioctls-tmpl.c: Likewise.
	* sysdeps/unix/ioctls.awk: Likewise.
	* sysdeps/unix/mk-local_lim.c: Likewise.
	* sysdeps/unix/snarf-ioctls: Likewise.

diff --git a/Makerules b/Makerules
index f1807c2..d184be6 100644
--- a/Makerules
+++ b/Makerules
@@ -1122,14 +1122,6 @@ $(BUILD_CC) $($(basename $(<F))-CFLAGS) $(ALL_BUILD_CFLAGS) \
 	    $(firstword $(filter /%,$< $(shell pwd)/$<)) -o $(@F)
 endef
 
-# Command to compile $< in $(common-objdir) using the native libraries.
-# We must cd to $(objdir) anyway so that $(..)config.h is valid.
-define common-objdir-compile
-$(patsubst %/,cd % &&,$(objpfx)) \
-$(BUILD_CC) $($(basename $(<F))-CFLAGS) $(ALL_BUILD_CFLAGS) \
-	    $(firstword $(filter /%,$< $(shell pwd)/$<)) -o $(..)$(@F)
-endef
-
 # We always want to use configuration definitions.
 # Note that this is only used for commands running in $(objpfx).
 ALL_BUILD_CFLAGS = $(BUILD_CFLAGS) -include $(..)config.h
diff --git a/sysdeps/unix/Makefile b/sysdeps/unix/Makefile
index 4b887a7..c8ef96d 100644
--- a/sysdeps/unix/Makefile
+++ b/sysdeps/unix/Makefile
@@ -1,5 +1,4 @@
-# Copyright (C) 1991,1992,1993,1994,1995,1996,1997,1998,1999,2003,2006,2008,2009
-#	Free Software Foundation, Inc.
+# Copyright (C) 1991-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
@@ -16,243 +15,6 @@
 # License along with the GNU C Library; if not, see
 # <http://www.gnu.org/licenses/>.
 
-# The unix-specific configure fragment writes `unix-generated' in config.make.
-config-generated := $(config-generated) $(unix-generated)
-
-ifeq (,$(filter-out $(sysdep_dir)/generic/ $(common-objpfx),\
-	$(dir $(firstword $(wildcard $(+sysdep_dirs:%=%/bits/local_lim.h))))))
-
-ifneq (,$(wildcard $(sysincludedir)/sys/param.h))
-mk-local_lim-CFLAGS += -DHAVE_SYS_PARAM_H
-endif
-ifneq (,$(wildcard $(sysincludedir)/sys/limits.h))
-mk-local_lim-CFLAGS += -DHAVE_SYS_LIMITS_H
-endif
-ifneq (,$(wildcard $(sysincludedir)/limits.h))
-mk-local_lim-CFLAGS += -DHAVE_LIMITS_H
-endif
-
-$(common-objpfx)bits/local_lim.h: $(common-objpfx)mk-local_lim
-	$(dir $<)$(notdir $<) > $@-t
-	mv -f $@-t $@
-$(common-objpfx)mk-local_lim: $(sysdep_dir)/unix/mk-local_lim.c
-	$(common-objdir-compile)
-
-before-compile += $(common-objpfx)bits/local_lim.h
-common-generated += bits/local_lim.h mk-local_lim
-
-endif
-
-ifeq (,$(filter-out $(sysdep_dir)/generic/ $(common-objpfx),\
-	$(patsubst %/sys/param.h,%/,\
-		   $(firstword $(wildcard $(+sysdep_dirs:%=%/sys/param.h))))))
-
-before-compile := $(before-compile) $(common-objpfx)sys/param.h
-
-$(common-objpfx)sys/param.h: $(sysincludedir)/sys/param.h
-	$(make-target-directory)
-	(echo '#ifndef _SYS_PARAM_H';	\
-	 echo '#define _SYS_PARAM_H 1';	\
-	 echo '#include <endian.h>';		\
-	 $(AWK) < $<			\
-	   '/^#define[ 	]*NULL/ { print "#ifndef NULL";	\
-				  print $$0;		\
-				  print "#endif";	\
-				  was_null = 1 }	\
-	    { if (!was_null) print $$0;			\
-	      was_null = 0 }';		\
-	 echo '#ifndef MAXHOSTNAMELEN'; \
-	 echo '#define MAXHOSTNAMELEN 64 /* XXX */'; \
-	 echo '#endif /* No MAXHOSTNAMELEN.  */'; \
-	 echo '#endif	/* sys/param.h */') > $@-tmp
-	mv $@-tmp $@
-
-$(common-objpfx)param.h.c: $(sysincludedir)/sys/param.h
-	rm -f $@
-	cp $< $@
-$(common-objpfx)param.h.dep: $(common-objpfx)param.h.c \
-			     $(sysdep_dir)/unix/Makefile
-	$(+mkdep) -I$(sysincludedir) $<			\
-	| sed > $@-t					\
-	      -e 's@$(sysincludedir)/sys/param.h@@'	\
-	      -e 's@^.*:@@'				\
-	      -e 's@$<@@g'				\
-	      -e 's@$(sysincludedir)/*@@g'		\
-	      -e 's@\\$$@@'				\
-	      -e 's@^@sys/param.h-includes := $$(sys/param.h-includes) @'
-	mv $@-t $@
-
-# Get the generated definition of sys/param.h-includes.
-ifndef no_deps
--include $(common-objpfx)param.h.dep
-endif
-
-# Don't preempt our own headers.
-sys/param.h-includes := \
-  $(filter-out $(patsubst $(..)%,%,\
-			  $(wildcard $(addprefix $(..),\
-				     $(sys/param.h-includes)))),\
-	       $(sys/param.h-includes))
-
-
-.PHONY: sys/param.h-includes
-sys/param.h-includes: $(addprefix $(common-objpfx),$(sys/param.h-includes))
-
-ifdef sys/param.h-includes
-# Copy the system files to $(common-objdir).
-$(addprefix $(common-objpfx),$(sys/param.h-includes)): $(common-objpfx)%: \
-						       $(sysincludedir)/%
-	$(make-target-directory)
-# Some of these files sometimes contain conflicting declarations for htons,
-# ntohs, etc.  They also often contain definitions of *_ENDIAN and
-# BYTE_ORDER, which we define ourselves in <endian.h>.
-	sed -e '/[ 	]*[hn]to[nh][sl][	 (]*/d' \
-	    -e '/^#define[ 	]*[A-Z]*_ENDIAN/d' \
-	    -e '/^#define[ 	]*BYTE_ORDER/d' \
-	    $< > $@-t
-	mv $@-t $@
-endif
-
-common-generated := $(common-generated) \
-		    sys/param.h $(sys/param.h-includes) param.h.c param.h.dep
-
-
-ifeq ($(subdir),misc)
-
-# Install system headers the system sys/param.h uses.
-
-sysdep_headers := $(sysdep_headers) $(sys/param.h-includes)
-
-endif # misc
-
-endif # No sysdep sys/param.h.
-
-ifeq (,$(filter-out $(sysdep_dir)/generic/ $(common-objpfx),\
-	$(dir $(firstword $(wildcard $(+sysdep_dirs:%=%/bits/errno.h))))))
-
-# These need to exist before any compiling is done,
-# so cpp doesn't instead find the generic versions.
-before-compile := $(before-compile) $(common-objpfx)bits/errno.h
-
-$(common-objpfx)bits/errno.h: $(common-objpfx)make-errnos
-	$(dir $<)$(notdir $<) > $@-tmp
-	mv $@-tmp $@
-
-$(common-objpfx)make-errnos: $(common-objpfx)make-errnos.c
-	$(common-objdir-compile)
-
-$(common-objpfx)make-errnos.c: $(sysdep_dir)/unix/errnos-tmpl.c \
-			$(sysdep_dir)/unix/errnos.awk $(common-objpfx)errnos
-	$(AWK) -f $(word 2,$^) errnos="`tr '\012' ' ' < $(word 3,$^)`" $< > $@T
-	mv $@T $@
-
-$(common-objpfx)errnos: $(wildcard $(sysincludedir)/errno.h	\
-				   $(sysincludedir)/sys/errno.h)
-	sed -n 's/^#define[ 	]*\(E[A-Z0-9][A-Z0-9]*\)[ 	].*$$/\1/p' \
-	    $^ > $@-tmp
-	mv $@-tmp $@
-
-common-generated := $(common-generated) \
-		    errnos.h errnos make-errnos make-errnos.c
-endif
-
-ifeq (,$(filter-out $(sysdep_dir)/generic/ $(common-objpfx),\
-	$(dir $(firstword $(wildcard $(+sysdep_dirs:%=%/bits/ioctls.h))))))
-
-before-compile := $(before-compile) $(common-objpfx)bits/ioctls.h
-
-$(common-objpfx)bits/ioctls.h: $(common-objpfx)make-ioctls
-	$(dir $<)$(notdir $<) > $@-tmp
-	mv $@-tmp $@
-
-ioctl-includes := sys/termios.h net/nit.h
-ioctl-includes := $(wildcard $(addprefix $(sysincludedir)/,$(ioctl-includes)))
-make-ioctls-CFLAGS := $(subst /,_,$(subst .,_,\
-			$(patsubst $(sysincludedir)/%,-DHAVE_%,\
-				   $(ioctl-includes))))
-
-$(common-objpfx)make-ioctls: $(common-objpfx)make-ioctls.c
-	$(common-objdir-compile)
-
-$(common-objpfx)make-ioctls.c: $(sysdep_dir)/unix/ioctls-tmpl.c \
-			       $(sysdep_dir)/unix/ioctls.awk \
-			       $(common-objpfx)ioctls
-	$(AWK) -f $(word 2,$^) requests="`cat $(word 3,$^)`" $< > $@T
-	mv $@T $@
-
-
-bits_termios.h := $(firstword $(wildcard $(+sysdep_dirs:%=%/bits/termios.h)))
-ifeq ($(bits_termios.h),$(sysdep_dir)/generic/bits/termios.h)
-bits_termios.h := # Ignore the generic version.
-endif
-
-# If there is a system-specific <bits/termios.h> file, we want to omit
-# all the symbols it defines from ioctls.  Otherwise, both
-# <bits/ioctls.h> and <bits/termios.h> would define them.  The
-# system-specific <bits/termios.h> file presumably defines them with
-# the same values as we find from the system's headers.  We also want
-# to omit from ioctls the symbols defined in our own
-# <sys/ttydefaults.h>, to avoid multiple definition conflicts.  We use
-# snarf-ioctls on these files to find what symbols we want to omit.
-# fgrep -xv gives all lines which do not match in their entirety;
-# without -x, CSTOP's presence elided TIOCSTOP.
-
-$(common-objpfx)ioctls: $(sysdep_dir)/unix/snarf-ioctls \
-			$(sysincludedir)/sys/ioctl.h $(ioctl-includes)
-	$(dir $<)$(notdir $<) $(filter-out $<,$^) \
-	| fgrep -xv "`($(dir $<)$(notdir $<) $(bits_termios.h) \
-					     $(..)sysdeps/generic/sys/ttydefaults.h; \
-		      echo NULL) \
-		     | sort | uniq`" \
-	| sort | uniq | tr '\012' ' ' > $@-tmp
-	mv $@-tmp $@
-
-common-generated := $(common-generated) \
-		    bits/ioctls.h ioctls make-ioctls make-ioctls.c
-endif
-
-ifeq (,$(filter-out $(sysdep_dir)/generic/ $(common-objpfx),\
-	$(dir $(firstword $(wildcard $(+sysdep_dirs:%=%/sys/syscall.h))))))
-
-# The syscall code assumes a file <sys/syscall.h> that defines macros
-# `SYS_call' for syscall `call'.  Variations on this I have seen include:
-# it's in <sys/syscall.h>;
-# it's in <sys.s>;
-# it defines `CALL' instead of `SYS_call'.
-# Irix has a <syscall.h> which is not what we want, so check for <sys.s> first.
-
-# Find a file that might have these.  NOTE: This list of possibilities is
-# repeated in sysdeps/unix/configure and the two should be kept in sync.
-syscall.h := $(firstword $(wildcard $(addprefix $(sysincludedir)/, \
-						sys.s sys/sys.s \
-						sys.S sys/sys.S \
-						syscall.h sys/syscall.h \
-						)))
-ifdef syscall.h
-
-# Transmogrify any of several formats of the file into the one we want.
-$(common-objpfx)sys/syscall.h: $(syscall.h)
-	$(make-target-directory)
-	tr '[A-Z]' '[a-z]' < $< | \
-	sed -e 's/[ 	]sys_/ /' \
-	    -e 's/^#define[ 	]*\([a-z0-9_]*\)[ 	]*/#define SYS_\1 /' \
-	    -e 's/[ 	]sys_/ SYS_/' \
-	    -e 's/SYS_syscall_basenum/syscall_basenum/g' \
-	    -e 's/SYS_kerncall_basenum/kerncall_basenum/g' \
-	    -e 's/SYS_sysvoffset/sysvoffset/g' \
-	    -e '/^#/!d' \
-	    -e '/^#ident/d' \
-	    -e 's-\(/\*[^*]*\)$$-\1\*/-' \
-	> $@-tmp
-	mv $@-tmp $@
-
-before-compile += $(common-objpfx)sys/syscall.h
-common-generated += sys/syscall.h
-
-endif
-
-endif
-
 ifndef inhibit-unix-syscalls
 
 # Sysdep dirs unix/... can contain a file syscalls.list,
diff --git a/sysdeps/unix/errnos-tmpl.c b/sysdeps/unix/errnos-tmpl.c
deleted file mode 100644
index 3a9793e..0000000
--- a/sysdeps/unix/errnos-tmpl.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Copyright (C) 1991, 1993, 1997 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/>.  */
-
-#include <errno.h>
-
-static char iferrno[] = "#ifdef _ERRNO_H";
-static char endiferrno[] = "#endif /* <errno.h> included.  */";
-static char ifEmath[] = "#if !defined(__Emath_defined) && \
- (defined(_ERRNO_H) || defined(__need_Emath))";
-static char endifEmath[] = "#endif /* Emath not defined and <errno.h> \
-included or need Emath.  */";
-
-static int biggest_value = 0;
-static int done_ENOSYS = 0;
-static int done_ERANGE = 0, done_EDOM = 0;
-
-static void
-DO(name, value)
-     char *name;
-     int value;
-{
-  int is_ERANGE = !done_ERANGE && !strcmp(name, "ERANGE");
-  int is_EDOM = !done_EDOM && !strcmp(name, "EDOM");
-  int is_Emath = is_ERANGE || is_EDOM;
-
-  if (is_Emath)
-    {
-      puts(endiferrno);
-      puts(ifEmath);
-    }
-
-  if (!strcmp (name, "EWOULDBLOCK"))
-    {
-      puts ("#define EWOULDBLOCK EAGAIN /* Translated in glibc. */");
-      name = "EWOULDBLOCK_sys /* Value actually returned by kernel. */";
-    }
-
-  printf ("#define %s %d\n", name, value);
-
-  if (is_Emath)
-    {
-      puts(endifEmath);
-      puts(iferrno);
-    }
-
-  if (value > biggest_value)
-    biggest_value = value;
-
-  if (is_ERANGE)
-    done_ERANGE = 1;
-  else if (is_EDOM)
-    done_EDOM = 1;
-  else if (!done_ENOSYS && !strcmp(name, "ENOSYS"))
-    done_ENOSYS = 1;
-}
-
-int
-main()
-{
-  puts(iferrno);
-
-  ERRNOS;
-
-  if (!done_EDOM || !done_ERANGE)
-    {
-      puts(endiferrno);
-      puts(ifEmath);
-      if (!done_EDOM)
-	printf("#define EDOM %d\n", ++biggest_value);
-      if (!done_ERANGE)
-	printf("#define ERANGE %d\n", ++biggest_value);
-      puts(endifEmath);
-    }
-
-  if (!done_ENOSYS)
-    printf("#define ENOSYS %d\n", ++biggest_value);
-
-  puts(endiferrno);
-
-  puts("#undef __need_Emath");
-  puts("#ifndef __Emath_defined\n#define __Emath_defined 1\n#endif");
-
-  exit(0);
-}
diff --git a/sysdeps/unix/errnos.awk b/sysdeps/unix/errnos.awk
deleted file mode 100644
index 8648f41..0000000
--- a/sysdeps/unix/errnos.awk
+++ /dev/null
@@ -1,12 +0,0 @@
-BEGIN { special = 0 }
-
-/ERRNOS/ { nerrnos = split(errnos, errs)
-	     for (i = 1; i <= nerrnos; ++i)
-	       # Some systems define errno codes inside undefined #ifdefs,
-	       # and then never actually use them.
-	       printf "#ifdef %s\n  DO(\"%s\", %s);\n#endif\n", \
-		 errs[i], errs[i], errs[i]
-	     special = 1 }
-
-
-{ if (special == 0) print $0; special = 0 }
diff --git a/sysdeps/unix/ioctls-tmpl.c b/sysdeps/unix/ioctls-tmpl.c
deleted file mode 100644
index 1c973c9..0000000
--- a/sysdeps/unix/ioctls-tmpl.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/* On SVR4, this #define is necessary to make <sys/ioctl.h> define
-   many of the ioctls.  */
-#define BSD_COMP
-
-#include <sys/types.h>
-#include <sys/param.h>
-
-/* On SunOS 4.1, <sys/ioctl.h> and <sys/termios.h> define some symbols
-   with different values, but <sys/termios.h> defines some ioctl symbols
-   not in <sys/ioctl.h>, so we need it.  Our <sys/ioctl.h> should define
-   them with the values from Sun's <sys/ioctl.h>, not <sys/termios.h>.
-   So we include <sys/termios.h> and let <sys/ioctl.h> redefine things.
-   This produces some spurious warnings.  */
-
-#ifdef HAVE_sys_termios_h
-#include <sys/termios.h>
-#endif
-
-/* This causes <sys/ioctl.h> to define some necessary data structure.  */
-#ifdef sony_news
-#define KANJI
-#endif
-
-#include <sys/ioctl.h>
-
-#ifdef	SIOCGIFCONF
-#include <sys/socket.h>
-#include <sys/time.h>
-#include <net/if.h>
-#include <net/route.h>
-#if	defined(SIOCGARP) && !defined(ARPOP_REQUEST)
-#include <net/if_arp.h>
-#endif
-#ifdef	SIOCGNIT
-#ifdef	HAVE_net_nit_h
-#include <net/nit.h>
-#else	/* No net/nit.h.  */
-#undef SIOCGNIT
-#undef SIOCSNIT
-#endif	/* net/nit.h.  */
-#endif	/* SIOCGNIT.  */
-#endif	/* SIOCGIFCONF.  */
-
-/* These exist on Sequents.  */
-#ifdef SMIOSTATS
-#include <sec/sec.h>
-#include <sec/sm.h>
-#endif
-#ifdef SMIOGETREBOOT0
-#include <i386/cfg.h>
-#endif
-#ifdef ZIOCBCMD
-#include <zdc/zdc.h>
-#endif
-
-/* These exist under Ultrix, but I figured there may be others.  */
-#ifdef DIOCGETPT
-#include <ufs/fs.h>		/* for DIOC* */
-#endif
-#ifdef DEVGETGEOM
-#include <sys/devio.h>
-#endif
-
-#ifdef ultrix
-/* Ultrix has a conditional include that brings these in; we have to force
-   their inclusion when we actually compile them.  */
-#undef TCGETA
-#undef TCSETA
-#undef TCSETAW
-#undef TCSETAF
-#undef TCGETP
-#undef TCSANOW
-#undef TCSADRAIN
-#undef TCSAFLUSH
-#ifdef ELSETPID
-#include <sys/un.h> /* get sockaddr_un for elcsd.h */
-#include <elcsd.h>
-#endif
-#ifdef DKIOCDOP
-#include <sys/dkio.h>
-#endif
-/* Couldn't find the header where the structures used by these are
-   defined; it looks like an unbundled LAT package or something.  */
-#undef LIOCSOL
-#undef LIOCRES
-#undef LIOCCMD
-#undef LIOCINI
-#undef LIOCTTYI
-#undef LIOCCONN
-/* struct mtop hasn't been in sys/mtio.h since 4.1 */
-#undef MTIOCTOP
-#undef MTIOCGET
-#endif
-
-#if defined(__osf__) && defined(__alpha__)
-#include <sys/ioctl_compat.h>	/* To get TIOCGETP, etc.  */
-#include <alpha/pt.h>		/* for DIOC* */
-#include <sys/mtio.h>		/* for MTIOC* */
-/* The binlog_getstatus structure doesn't seem to be defined.  */
-#undef BINLOG_GETSTATUS
-/* Can't find `struct ifdata' anywhere.  */
-#undef SIOCMANREQ
-#undef SIOCGETEVENTS
-/* OSF/1 smells an awful lot like Ultrix.  */
-#undef TCGETA
-#undef TCSETA
-#undef TCSETAF
-#undef TCSETAW
-/* This macro looks screwed in sys/devio.h.  */
-#undef DEV_DISKPART
-/* This is in sys/dkio.h, but we don't need it.  */
-#undef DKIOCACC
-#undef DKIOCDOP
-#undef DKIOCEXCL
-#undef DKIOCGET
-#undef DKIOCHDR
-/* Introduced by OSF/1 2.0.  */
-#undef FIOPIPESTAT
-#undef SIOCSRREQR
-#undef SIOCSRREQW
-#undef SRVC_REQUEST
-#endif
-
-#define	DEFINE(name, value) \
-  printf("#define %s 0x%.8x\n", (name), (value))
-
-int
-main()
-{
-  REQUESTS
-
-  exit(0);
-  return 0;
-}
diff --git a/sysdeps/unix/ioctls.awk b/sysdeps/unix/ioctls.awk
deleted file mode 100644
index b05140a..0000000
--- a/sysdeps/unix/ioctls.awk
+++ /dev/null
@@ -1,10 +0,0 @@
-BEGIN { special = 0 }
-
-/REQUESTS/ { nreqs = split(requests, reqs)
-	     for (i = 1; i <= nreqs; ++i)
-	       printf "#ifdef\t%s\n  DEFINE(\"%s\", %s);\n#endif\n", \
-		      reqs[i], reqs[i], reqs[i]
-	     special = 1 }
-
-
-{ if (special == 0) print $0; special = 0 }
diff --git a/sysdeps/unix/mk-local_lim.c b/sysdeps/unix/mk-local_lim.c
deleted file mode 100644
index 3ed2426..0000000
--- a/sysdeps/unix/mk-local_lim.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright (C) 1993, 1996, 1997 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/>.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
-
-#ifdef HAVE_SYS_LIMITS_H
-#include <sys/limits.h>
-#endif
-
-/* Generate bits/local_lim.h from the values defined in the system's
-   headers.  */
-
-struct param
-  {
-    char *name;
-    int value;
-  };
-
-static struct param params[] =
-  {
-
-#if !defined (ARG_MAX) && defined (NCARGS)
-#define ARG_MAX NCARGS
-#endif
-#ifdef ARG_MAX
-    { "ARG_MAX", ARG_MAX },
-#endif
-
-#if !defined (CHILD_MAX) && defined (MAXUPRC)
-#define CHILD_MAX MAXUPRC
-#endif
-#ifdef CHILD_MAX
-    { "CHILD_MAX", CHILD_MAX },
-#endif
-
-#if !defined (LINK_MAX) && defined (MAXLINK)
-#define LINK_MAX MAXLINK
-#endif
-#ifdef LINK_MAX
-    { "LINK_MAX", LINK_MAX },
-#endif
-
-#if !defined (OPEN_MAX) && defined (NOFILE)
-#define OPEN_MAX NOFILE
-#endif
-#ifdef OPEN_MAX
-    { "OPEN_MAX", OPEN_MAX },
-#endif
-
-#if !defined (MAX_CANON) && defined (CANBSIZ)
-#define MAX_CANON CANBSIZ
-#endif
-#ifdef MAX_CANON
-    { "MAX_CANON", MAX_CANON },
-#endif
-
-#if !defined (NAME_MAX) && defined (MAXNAMLEN)
-#define NAME_MAX MAXNAMLEN
-#endif
-#ifndef NAME_MAX
-#define NAME_MAX	255	/* XXX ? */
-#endif
-    { "NAME_MAX", NAME_MAX },
-
-#if !defined (PATH_MAX) && defined (MAXPATHLEN)
-#define PATH_MAX MAXPATHLEN
-#endif
-#ifdef PATH_MAX
-    { "PATH_MAX", PATH_MAX },
-#endif
-
-#if !defined (SYMLOOP_MAX) && defined (MAXSYMLINKS)
-#define SYMLOOP_MAX MAXSYMLINKS
-#endif
-#ifdef SYMLOOP_MAX
-    { "SYMLOOP_MAX", SYMLOOP_MAX },
-#endif
-
-    { NULL, 0 }
-  };
-
-int
-main()
-{
-  extern char *ctime ();
-  extern time_t time ();
-  time_t now = time ((time_t *) NULL);
-  register struct param *p;
-
-  if (! params[0].name)
-    /* We have no information to give, so let the caller know.  */
-    exit (1);
-
-  printf ("\
-/* Implementation-specific limits.\n\
-   Generated at %.24s.  */\n\n", ctime (&now));
-
-  for (p = params; p->name != NULL; ++p)
-    printf ("#define %s %d\n", p->name, p->value);
-
-  exit (0);
-}
diff --git a/sysdeps/unix/snarf-ioctls b/sysdeps/unix/snarf-ioctls
deleted file mode 100755
index a2fc023..0000000
--- a/sysdeps/unix/snarf-ioctls
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-# Copyright (C) 1991, 1992, 1995, 1997 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/>.
-
-sysincludedir=${sysincludedir-/usr/include}
-
-if [ ! "$snarfexclude" ]; then
-  # Filter out some headers which cause trouble.
-  # Reportedly a bug in sunos4.1.2's sed makes this lose if
-  # the two cmds are in a single sed invocation.
-  snarfexclude="`echo !${sysincludedir}/sys/param.h! \
-		      !${sysincludedir}/sys/time.h! \
-		      !${sysincludedir}/sys/types.h! \
-		 | sed 's,/,\\\\/,g' \
-		 | sed 's,!\\([^!]*\\)!,-e /\\1/d,g'`"
-fi
-
-for file in $*; do
-  sed -n 's/^#define[ 	]*\([A-Z][A-Z0-9_]*\)[ 	][ 	]*[^ 	].*$/\1/p' \
-    < $file
-
-  snarfexclude="$snarfexclude \
-		`echo $file | sed -e 's,/,\\\\/,g' -e 's,^.*$,-e /&/d,'`"
-  export snarfexclude
-
-  included="`sed -n < $file \
-		 -e 's,^#include[ 	]*<\(.*\)>.*$,'${sysincludedir}'/\1,p'\
-	     | sed $snarfexclude`"
-  if [ "$included" ]; then
-    $0 $included
-  fi
-done
-
-exit 0

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]