This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Remove common-objdir-compile and related sysdeps/unix/Makefile code
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: libc-alpha at sourceware dot org
- Date: Mon, 19 Mar 2012 15:06:44 +0000 (UTC)
- Subject: 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