Removed unused files.
authorBenoît Dejean <bdejean@src.gnome.org>
Mon, 6 Jun 2005 11:46:39 +0000 (11:46 +0000)
committerBenoît Dejean <bdejean@src.gnome.org>
Mon, 6 Jun 2005 11:46:39 +0000 (11:46 +0000)
* support/ : Removed unused files.

svn path=/trunk/; revision=3597

39 files changed:
support/.cvsignore [deleted file]
support/ChangeLog [deleted file]
support/Makefile.am [deleted file]
support/README-gnome [deleted file]
support/README.cvs-commits [deleted file]
support/canonicalize.c [deleted file]
support/easy-vsnprintf.c [deleted file]
support/error.c [deleted file]
support/error.h [deleted file]
support/findme.c [deleted file]
support/findme.h [deleted file]
support/getopt.c [deleted file]
support/getopt.h [deleted file]
support/getopt1.c [deleted file]
support/gnome-argp.c [deleted file]
support/gnome-argp.h [deleted file]
support/gnome-support-2.0.pc.in [deleted file]
support/gnomesupport-fake.h [deleted file]
support/gnomesupport.awk [deleted file]
support/memmove.c [deleted file]
support/mkstemp.c [deleted file]
support/popt-gnome.h [deleted file]
support/popt.c [deleted file]
support/poptconfig.c [deleted file]
support/popthelp.c [deleted file]
support/poptint.h [deleted file]
support/poptparse.c [deleted file]
support/scandir.c [deleted file]
support/strcasecmp.c [deleted file]
support/strerror.c [deleted file]
support/strndup.c [deleted file]
support/strnlen.c [deleted file]
support/strtod.c [deleted file]
support/strtok_r.c [deleted file]
support/strtol.c [deleted file]
support/strtoul.c [deleted file]
support/system.h [deleted file]
support/vasprintf.c [deleted file]
support/vsnprintf.c [deleted file]

diff --git a/support/.cvsignore b/support/.cvsignore
deleted file mode 100644 (file)
index e710523..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-Makefile.in
-Makefile
-.deps
-*.la
-*.lo
-.libs
-gnomesupport-h
-gnomesupport.h
-gnome-support-2.0.pc
diff --git a/support/ChangeLog b/support/ChangeLog
deleted file mode 100644 (file)
index 86e512b..0000000
+++ /dev/null
@@ -1,390 +0,0 @@
-2003-10-20  Bastien Nocera  <hadess@hadess.net>
-
-       * Makefile.am: make libgtop compile, other apps using libgnomesupport
-       should be dead by now
-
-2000-11-21  Martin Baulig  <baulig@suse.de>
-
-       * Makefile.am: Install libgnomesupport.la, but call it
-       libgnomesupport-1.3.la.
-
-       * gnome-support-2.0.pc.in: Added pkg-config file.
-
-1999-05-27  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport.awk: Put c++ guards after #includes.
-
-       * gnomesupport-fake.h: Remove dependence on `gnome-argp.h'.  Move
-       relevant declarations here.
-
-1999-05-12  Martin Baulig  <martin@home-of-linux.org>
-
-       * canonicalize.c: Use `set_errno' instead of `__set_errno' and
-       define `set_errno' here.
-
-1999-03-27  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (supportexecincludedir): Rename from
-       supportincludedir so that `gnomesupport.h' can be installed with
-       `make install-exec'.
-       (supportinclude_HEADERS): Remove.  Don't install popt-gnome.h
-       twice.
-       (error.o): Change `error.c: gnomesupport.h' dependency to
-       `error.o: gnomesupport.h' to reflect actual dependency.
-
-1999-02-19  Martin Baulig  <martin@home-of-linux.org>
-
-       * canonicalize.c: Include <gnome-argp.h> instead of the removed
-       <argp-namefrob.h>.
-
-1999-02-17  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
-
-       * poptint.h: Removed the suspicious `#ifdef HAVE_DGETTEXT...'
-       switch.  Now `progname --help' messages should be translated.
-
-1998-12-24  Jeff Garzik  <jgarzik@pobox.com>
-
-       * poptparse.[ch]:  poptParseArgvString cleanups...
-       Added array grow increment constant.
-       Remove unnecessary 'dst' init.
-       Remove unnecessary strcpy().
-       Make arg 's' and var 'src' const-correct.
-
-1998-12-21  Matt Wilson  <msw@redhat.com>
-
-       * poptparse.c: fix pointer assignment
-
-1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
-
-       * Makefile.am (libgnomesupport_la_SOURCES): added gnome-argp.c,
-       which is needed for platforms without
-       program_invocation_short_name and program_invocation_name.
-       (libgnomesupport_la_LIBADD): reinstalled the correct value.
-
-1998-12-15  Martin Baulig  <martin@home-of-linux.org>
-
-       * Makefile.am (EXTRA_DIST): Add all source and header files here.
-
-1998-12-02  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (EXTRA_DIST): Add back `gnomesupport.awk' and
-       `README-gnome'.
-
-1998-11-06  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * popt.c (gnomesupport-fake.h): Include.
-       * poptint.h (ENABLE_NLS): Define POPT_() and _() i18n markers
-       based on this.
-
-1998-11-04  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport-fake.h: Include gnomesupport.h unconditionally.
-       * Makefile.am: Build libgnomesupport.la unconditionally.
-       (popt_sources): List `popt' sources.
-       (libgnomesupport_la_SOURCES): Include $popt_sources.
-       (include_HEADERS): Install `popt.h'.
-       (noinst_HEADERS): Don't install poptint.h and findme.h.
-       * popt.c: New file.  From the POPT package.  Replacement for
-       argp/getopt.
-       * poptparse.c: Likewise.
-       * popthelp.c: Likewise.
-       * poptconfig.c: Likewise.
-       * findme.c: Likewise.
-       * findme.h: Likewise.
-       * popt.h: Likewise.
-       * poptint.h: Likewise.
-
-1998-09-02  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * canonicalize.c (realpath): Remove `weak_alias'.
-       (canonicalize_file_name): Comment out.
-
-       * gnomesupport.awk: Remove `canonicalize_file_name', and correct
-       the comment for `realpath'.
-
-1998-09-02  Martin Baulig  <martin@home-of-linux.org>
-
-       * gnomesupport.awk (canonicalize_file_name, realpath): Emit
-       declarations if required.
-
-       * canonicalize.c (canonicalize_file_name, realpath): New file.
-       Imported from GLibC 2.0.7.
-
-       * libc-symbols.h: New file. Imported from GLibC 2.0.7.
-
-1998-08-24  Martin Baulig  <martin@home-of-linux.org>
-
-       * gnomesupport.awk: Emit declarations for `setreuid', `setregid'
-       and `getpagesize' if required (GCC_NEED_DECLARATIONS).
-
-1998-08-18  Martin Baulig  <martin@home-of-linux.org>
-
-       * Makefile.am: Added explicit dependency `error.c: gnomesupport.h'.
-
-       * gnomesupport-fake.h: Include `sys/types.h' to get `size_t' under
-       FreeBSD.
-
-       * gnomesupport-fake.h: Include `gnomesupport.h' only if we really
-       `NEED_GNOMESUPPORT_H'.
-
-1998-08-16  Martin Baulig  <martin@home-of-linux.org>
-
-       * Makefile.am (EXTRA_DIST): Added all source and header files that
-       are in CVS to make sure everything is included in the distribution
-       no matter which files are used on the build system.
-
-1998-08-15  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (libgnomesupport_la_SOURCES): List `gnomesupport.h'
-       here in the hope that it'll ensure that it is built.
-
-1998-08-05  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (noinst_HEADERS): Add `gnomesupport-fake.h'.
-
-1998-08-02  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * error.c (program_name): Clean up #ifdef logic some more.
-       (HAVE_STRERROR_R): Step on implementation namespace only if _LIBC.
-
-1998-07-30  Martin Baulig  <martin@home-of-linux.org>
-
-       * error.c: Making weak alias `__error' and `__error_at_line'
-       only if `_LIBC' is defined and not if we only
-       HAVE_PROGRAM_INVOCATION_NAME.
-
-       * gnomesupport-fake.h: Include gnome-argp.h to get
-       `program_invocation_name'.
-
-1998-07-29  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport-fake.h: New file.  Fake in HAVE_* for functions
-       that are provided by `gnomesupport' rather than `libc'.
-       * error.c: Include gnomesupport-fake.h.
-       (program_name): Define to `program_invocation_name' if
-       HAVE_PROGRAM_INVOCATION_NAME.
-
-1998-07-29  Martin Baulig  <martin@home-of-linux.org>
-
-       * error.c, error.h: New files.  Imported from glibc.
-
-       * Makefile.am (supportinclude_HEADERS): Added `error.h'.
-
-1998-07-17  Martin Baulig  <martin@home-of-linux.org>
-
-       * strtol.c, strtoul.c (<ansidecl.h>): Removed. Using
-       `const' instead of `CONST'.
-
-1998-07-15  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport.awk (gethostname): Emit declaration.
-
-1998-07-15  Martin Baulig  <baulig@Stud.Informatik.uni-trier.de>
-
-       * gnomesupport.awk (memmove strtod strtol strtoul): Emit
-       declarations.
-
-       * memmove.c: New file.  Imported from GNU libiberty.
-
-       * strtod.c, strtol.c, strtoul.c: New files. Imported from
-       GNU libiberty.
-
-1998-07-14  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * mkstemp.c (<stdint.h>): Systems that don't have `mkstemp'
-       probably don't have <stdint.h> either.  Will fix it with a proper
-       autoconf test later.
-
-1998-07-13  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * argp.h (ARGP_EI): Define to `extern __inline__', rather that
-       `extern inline'.  Since this code is inside an __OPTIMIZE__ check,
-       I assume this is GCC, and __inline__ will work.
-
-       * mkstemp.c: New file.
-       * gnomesupport.awk: Conditionally emit prototype for `mkstemp'.
-
-Tue Jul  7 00:02:51 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * argp-help.c: Don't include <malloc.h>.
-
-1998-06-11  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (gnomesupport.h): Build with `gnomesupport.awk'.
-       (CROSS_COMPILING): Remove.
-       (EXTRA_DIST): Add `gnomesupport.awk'.
-
-       * gnomesupport.awk: New file, to replace `gnomesupport-h.c'.
-       * gnomesupport-h.c: Removed.  Doesn't work well in cross-compiles.
-
-1998-06-08  Martin Baulig  <martin@home-of-linux.org>
-
-       * Makefile.am (gnomesupport-h): When cross-compiling, this
-       is build using `$(build_CC)' because it needs to run on the
-       build system. Look at gnome-libs/configure.in to see how to
-       get `build_CC'.
-
-Thu May 21 21:21:12 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * gnome-argp.h: Unconditionally declare program_invocation_name
-       and program_invocation_short_name; some systems define these but
-       don't declare them.
-
-1998-05-20  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (INCLUDES): Define _GNU_SOURCE.
-
-1998-05-19  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport-h.c (strerror): Emit declaration.
-       * strerror.c: New file.  Imported from GNU libiberty.
-
-1998-05-19  Martin Baulig  <martin@home-of-linux.org>
-
-       * vsnprintf.c (vsnprintf): Changed declaration of this
-       function on systems defining __STDC__ to avoid clash
-       with prototype in system header file.
-
-       * vsnprintf.c (snprintf): Moved toward the end of the
-       file, so that the compiler sees correct declaration for
-       vsnprintf().
-
-1998-05-12  Kjartan Maraas  <kmaraas@fib.hl.no>
-
-       * argp-help.c (argp_doc): Backed out previous "fix". :-)
-       As pointed out it was dead wrong.
-
-1998-05-09  Kjartan Maraas  <kmaraas@fib.hl.no>
-
-       * argp-help.c (argp_doc): Removed a compiler warning.
-
-1998-04-14  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * gnomesupport-h.c (main): Make gnomesupport.h include stddef.h
-       unconditionally.
-
-1998-04-13  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * scandir.c (<sys/types.h>): Include.
-       * gnomesupport-h.c (!HAVE_SCANDIR): Do all the `dirent' wrangling
-       only if `scandir' is needed.  Also, include <sys/types.h> in all
-       cases.
-
-1998-04-13  Seth Alves  <alves@twitch.cp.domain.net>
-
-       * gnomesupport-h.c (HAVE_DIRENT_H): FreeBSD needs <sys/types.h>
-       before <dirent.h>.
-
-1998-04-12  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (supportincludedir): Is now $(pkglibdir)/include.
-       `gnomesupport.h' is a generated file dependent on the configure
-       process.  So, this seems a good place.  The rest of the headers
-       are also here just because I'm too lazy to maintain two separate
-       include directories to search in for `libgnomesupport' stuff ;-)
-       (supportinclude_DATA): New var.  Has `gnomesupport.h'.
-       (BUILT_SOURCES): Generate `gnomesupport.h'.
-
-       * gnomesupport-h.c: New file.  Used to generate `gnomesupport.h',
-       which contains prototypes for many of the functions in
-       `libgnomesupport'.  This method is used to ensure that prototypes
-       appear only for those functions that are provided by
-       `libgnomesupport'.
-
-       * scandir.c (alphasort): New utility function.
-
-1998-04-08  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * scandir.c: Import from GNU libc.
-       Remove assumptions that this file is compiled inside GLIBC.
-       Here are the ChangeLog entries when I imported it originally into
-       `gwp':
-
-       1998-02-08  Raja R Harinath  <harinath@cs.umn.edu>
-               * scandir.c (scandir): Revert change of `1998-02-07'.
-               Don't use d_reclen, but fix the expression used to
-               figure out the length.
-
-       1998-02-07  Raja R Harinath  <harinath@cs.umn.edu>
-               * scandir.c (scandir): Use `d_reclen' field to get length
-               of record.
-
-       1998-02-06  Raja R Harinath  <harinath@cs.umn.edu>
-               * scandir.c: New file.  Replacement function copied from
-               glibc, edited to not step on implementation namespace.
-
-1998-03-28  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * vasprintf.c (int_vasprintf): Imported from GNU libit-0.4.
-       Applied a change that appears in `libiberty'.
-
-Fri Mar 13 21:30:34 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * argp.texi: Imported from glibc.
-       * Makefile.am (EXTRA_DIST): Added argp.texi.
-
-1998-03-12  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * Makefile.am (noinst_HEADERS): Don't install argp-fmtstream.h and
-       argp-namefrob.h.  They are used only to compile `argp' and not for
-       general usage.
-
-1998-03-11  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * getopt.h: Don't mention getopt() for C++.  (Local fix).
-
-       * vsnprintf.c: Actually fill it in.  It is from
-       <URL:http://theos.com/~deraadt/snprintf.c>, with one small fix to
-       actually make it compile.
-
-1998-03-09  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * easy-vsnprintf.c: New file.  Provides (v)snprintf as simple
-       wrappers to `__vsnprintf'.
-       * vsnprintf.c: New file.  Empty for now.
-
-Sun Mar  8 17:13:33 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * Makefile.am: Rewrote.  Library now named libgnomesupport, now
-       installed if Gnome support code is built.
-
-Sat Mar  7 00:03:26 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * gnome-argp.h (__mempcpy): New define.
-
-       * strnlen.c: New file from glibc; needed by strndup.c.
-
-Fri Mar  6 20:10:55 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * argp-fmtstream.h (__attribute__): Define unless using gcc.
-       * argp.h (__attribute__): Define unless using gcc.
-
-       * argp-help.c, argp-parse.c, argp.h: Imported new versions from
-       glibc, while preserving local changes.
-
-Wed Mar  4 00:58:27 1998  Tom Tromey  <tromey@cygnus.com>
-
-       * Makefile.am (libsupport_a_SOURCES): Added gnome-argp.c.
-       * gnome-argp.c: New file.
-
-       * argp-parse.c: Include gnome-argp.h.
-       * argp-help.c: Include gnome-argp.h.
-
-       * README-gnome, gnome-argp.h: New files.
-
-       * argp-ba.c, argp-eexst.c, argp-fmtstream.c, argp-fmtstream.h,
-       argp-fs-xinl.c, argp-help.c, argp-namefrob.h, argp-parse.c,
-       argp-pv.c, argp-pvh.c, argp-test.c, argp-xinl.c, argp.h,
-       strndup.c: New files, imported from glibc.  Please use "cvs
-       import" if you import new versions.
-
-       * Makefile.am (noinst_HEADERS): Added argp-fmtstream.h,
-       argp-namefrob.h, argp.h, gnome-argp.h.
-       (EXTRA_DIST): New macro.
-
-1998-02-18  Raja R Harinath  <harinath@cs.umn.edu>
-
-       * strcasecmp.c: New file, copied from `glibc'.  Used to provide
-       replacement `strcasecmp' file.
-
-
diff --git a/support/Makefile.am b/support/Makefile.am
deleted file mode 100644 (file)
index a307838..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-## Process this file with automake to produce Makefile.in.
-
-supportexecincludedir = $(includedir)/gnome/$(GNOME_INTERFACE_VERSION)
-
-INCLUDES = -D_GNU_SOURCE
-
-lib_LTLIBRARIES = libgnomesupport-2.0.la
-
-# it is in _DATA since we don't want `gnomesupport.h' to be part of
-# the distributed `.tar.gz' file
-supportexecinclude_DATA = gnomesupport.h
-
-# These are internal headers: they are used only when compiling and
-# should not be installed
-#noinst_HEADERS = gnomesupport-fake.h \
-#               findme.h poptint.h system.h
-
-# Hmm... should we move `error.h' here.
-#include_HEADERS = popt-gnome.h
-
-#popt_sources = findme.c poptconfig.c poptparse.c popt.c popthelp.c
-popt_sources=
-
-libgnomesupport_2_0_la_SOURCES = gnomesupport.h $(popt_sources) gnome-argp.c
-libgnomesupport_2_0_la_LIBADD  = @LTLIBOBJS@
-libgnomesupport_2_0_la_LDFLAGS = -version-info 0:0:0
-
-BUILT_SOURCES = gnomesupport.h
-
-# error.o is not always built.  In the case when it is built, make
-# sure gnomesupport.h is built first.
-error.o: gnomesupport.h
-
-gnomesupport.h: gnomesupport.awk $(top_builddir)/config.h
-       $(AWK) -f $(srcdir)/gnomesupport.awk < $(top_builddir)/config.h > gsh-t
-       mv gsh-t gnomesupport.h
-
-EXTRA_DIST = gnomesupport.awk README-gnome \
-       canonicalize.c easy-vsnprintf.c error.c error.h \
-       findme.c findme.h getopt.c getopt.h getopt1.c \
-       gnome-argp.c gnome-argp.h gnomesupport-fake.h \
-       memmove.c mkstemp.c popt-gnome.h popt.c poptconfig.c \
-       popthelp.c poptint.h poptparse.c scandir.c strcasecmp.c \
-       strerror.c strndup.c strnlen.c strtod.c strtok_r.c strtol.c \
-       strtoul.c vasprintf.c vsnprintf.c gnome-support-2.0.pc.in
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = gnome-support-2.0.pc
-
diff --git a/support/README-gnome b/support/README-gnome
deleted file mode 100644 (file)
index 3b59b3e..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-Note to Gnome hackers:
-
-If you change anything related to popt, please forward these changes to
-ewt@redhat.com, the popt package maintainer.
-
-- jgarzik@pobox.com 12/24/1998
-
-
-Some files in this directory are taken verbatim from glibc.
-Do not modify them.  If you find a bug, report it as you would any
-glibc bug.
-
-When updating the glibc files in the master Gnome repository, be sure
-to use "cvs import".  That will ensure that any local changes are
-merged in.
-
-Yes, there are some minor local changes.  Hopefully these will be
-sorted out with the glibc maintainer before long.
-
-- Tom Tromey <tromey@cygnus.com>
-  Wed, Mar 4 1998
-
-
-
-Notes on CVS import:
-
-This directory has files from two "vendors".  There are, thus, two
-vendor branches
-
-       1.1.1   GNU
-       1.1.2   SNPRINTF_de_Raadt
-
-The files that have "vendor" versions are:
-
-       argp-ba.c               GNU
-       argp-eexst.c            GNU
-       argp-fmtstream.c        GNU
-       argp-fmtstream.h        GNU
-       argp-fs-xinl.c          GNU
-       argp-help.c             GNU
-       argp-namefrob.h         GNU
-       argp-parse.c            GNU
-       argp-pv.c               GNU
-       argp-pvh.c              GNU
-       argp-test.c             GNU
-       argp-xinl.c             GNU
-       argp.h                  GNU
-       getopt.c                GNU
-       getopt.h                GNU
-       getopt1.c               GNU
-       strcasecmp.c            GNU
-       strndup.c               GNU
-       strnlen.c               GNU
-       strtok_r.c              GNU
-       vasprintf.c             GNU
-       vsnprintf.c             SNPRINTF_de_Raadt
-
-To find out the list of changes made against a "vendor" revision, you
-can say
-
-       cvs diff -r <vendor-branch-tag> 
-
-When any of these files are changed by the vendor, they can be
-reimported.  At the time of importing, please make sure you use the
-correct branch revision and vendor tag.
-
-So, if you are importing changes to any of the `GNU' files, please use
-
-    cvs import -b 1.1.1 gnome-common/support GNU <new-release-tag>
-
-If you are importing changes to "SNPRINTF_de_Raadt" files, please use
-
-    cvs import -b 1.1.2 gnome-common/support SNPRINTF_de_Raadt <new-rel-tag>
-                ^^^^^^^                    ^^^^^^^^^^^^^^^^^^^
-                |                          |
-                Branch revision            Vendor Tag
-
-In other words the "Branch revision" and "Vendor Tag" must agree.
-
-- Raja R Harinath <harinath@cs.umn.edu>
-  1998-03-11
-
-
-
-Good places to get "support" functions:
-
-`libgnomesupport' is essentially a `glibc' emulation library, and hence
-`glibc' itself is a good source.  However, some of the functions cannot
-be easily ripped out and put here (esp. any of the stdio-derived
-functions).  Other places are:
-
-* libiberty from your friendly Cygnus source distribution, e.g.,
-  binutils, gdb.  The only caveat is that these cannot be used drop-in:
-  you have to remove references to other files in the Cygnus tree &c.
-
-* libit, which appeared briefly on ftp://alpha.gnu.org
-
-* Jim Meyering's collection from his `fileutils'/`sh-utils'/`textutils'
-  packages
-
-- Raja R Harinath
-  1998-03-28
diff --git a/support/README.cvs-commits b/support/README.cvs-commits
deleted file mode 100644 (file)
index 88e3d58..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-This directory is *shared* between a lot of modules in GNOME CVS -
-which means that every change you're doing here immediately affects
-a very large number of modules.
-
-Please, do *ALWAYS ASK FIRST* on gnome-hackers@gnome.org before you
-commit anything to this directory. If unsure, feel free to send me
-a patch <martin@gnome.org> and I'll commit it for you it it's ok.
-
-Thanks for your understanding,
-
-August 1st, 2001
-Martin Baulig <martin@gnome.org>
-
diff --git a/support/canonicalize.c b/support/canonicalize.c
deleted file mode 100644 (file)
index 2ff2284..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/* Return the canonical absolute name of a given file.
-   Copyright (C) 1996 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 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 <assert.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <limits.h>
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-#include <gnome-argp.h>
-
-/* Return the canonical absolute name of file NAME.  A canonical name
-   does not contain any `.', `..' components nor any repeated path
-   separators ('/') or symlinks.  All path components must exist.  If
-   RESOLVED is null, the result is malloc'd; otherwise, if the
-   canonical name is PATH_MAX chars or more, returns null with `errno'
-   set to ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars,
-   returns the name in RESOLVED.  If the name cannot be resolved and
-   RESOLVED is non-NULL, it contains the path of the first component
-   that cannot be resolved.  If the path can be resolved, RESOLVED
-   holds the same value as the value returned.  */
-
-#ifdef _LIBC
-#define set_errno(e) __set_errno(e)
-#else
-#define set_errno(e) errno = (e)
-#endif
-
-static char *
-canonicalize (const char *name, char *resolved)
-{
-  char *rpath, *dest, *extra_buf = NULL;
-  const char *start, *end, *rpath_limit;
-  long int path_max;
-  int num_links = 0;
-
-#ifdef PATH_MAX
-  path_max = PATH_MAX;
-#else
-  path_max = pathconf (name, _PC_PATH_MAX);
-  if (path_max <= 0)
-    path_max = 1024;
-#endif
-
-  rpath = resolved ? __alloca (path_max) : malloc (path_max);
-  rpath_limit = rpath + path_max;
-
-  if (name[0] != '/')
-    {
-      if (!getcwd (rpath, path_max))
-       goto error;
-      dest = strchr (rpath, '\0');
-    }
-  else
-    {
-      rpath[0] = '/';
-      dest = rpath + 1;
-    }
-
-  for (start = end = name; *start; start = end)
-    {
-      struct stat st;
-      int n;
-
-      /* skip sequence of multiple path-separators: */
-      while (*start == '/') ++start;
-
-      /* find end of path component: */
-      for (end = start; *end && *end != '/'; ++end);
-
-      if (end - start == 0)
-       break;
-      else if (strncmp (start, ".", end - start) == 0)
-       /* nothing */;
-      else if (strncmp (start, "..", end - start) == 0) {
-       /* back up to previous component, ignore if at root already: */
-       if (dest > rpath + 1)
-         while ((--dest)[-1] != '/');
-      } else
-       {
-         size_t new_size;
-
-         if (dest[-1] != '/')
-           *dest++ = '/';
-
-         if (dest + (end - start) >= rpath_limit)
-           {
-             if (resolved)
-               {
-                 set_errno (ENAMETOOLONG);
-                 goto error;
-               }
-             new_size = rpath_limit - rpath;
-             if (end - start + 1 > path_max)
-               new_size += end - start + 1;
-             else
-               new_size += path_max;
-             rpath = realloc (rpath, new_size);
-             rpath_limit = rpath + new_size;
-             if (!rpath)
-               return NULL;
-           }
-
-         memcpy (dest, start, end - start);
-         dest += end - start;
-         *dest = '\0';
-
-         if (__lstat (rpath, &st) < 0)
-           goto error;
-
-         if (S_ISLNK (st.st_mode))
-           {
-             char *buf = __alloca (path_max);
-
-             if (++num_links > MAXSYMLINKS)
-               {
-                 set_errno (ELOOP);
-                 goto error;
-               }
-
-             n = readlink (rpath, buf, path_max);
-             if (n < 0)
-               goto error;
-             buf[n] = '\0';
-
-             if (!extra_buf)
-               extra_buf = __alloca (path_max);
-
-             if ((long int) (n + strlen (end)) >= path_max)
-               {
-                 set_errno (ENAMETOOLONG);
-                 goto error;
-               }
-
-             /* careful here, end may be a pointer into extra_buf... */
-             strcat (buf, end);
-             strcpy (extra_buf, buf);
-             name = end = extra_buf;
-
-             if (buf[0] == '/')
-               dest = rpath + 1;       /* it's an absolute symlink */
-             else
-               /* back up to previous component, ignore if at root already: */
-               if (dest > rpath + 1)
-                 while ((--dest)[-1] != '/');
-           }
-         else
-           num_links = 0;
-       }
-    }
-  if (dest > rpath + 1 && dest[-1] == '/')
-    --dest;
-  *dest = '\0';
-
-  return resolved ? strcpy (resolved, rpath) : rpath;
-
-error:
-  if (resolved)
-    strcpy (resolved, rpath);
-  else
-    free (rpath);
-  return NULL;
-}
-
-char *
-realpath (const char *name, char *resolved)
-{
-  if (resolved == NULL)
-    {
-      set_errno (EINVAL);
-      return NULL;
-    }
-
-  return canonicalize (name, resolved);
-}
-
-#if 0
-char *
-canonicalize_file_name (const char *name)
-{
-  return canonicalize (name, NULL);
-}
-#endif
diff --git a/support/easy-vsnprintf.c b/support/easy-vsnprintf.c
deleted file mode 100644 (file)
index b50df74..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/* (v)snprintf in terms of __(v)snprintf
- *
- * Useful with Solaris 2.5 libc, which appears to have the `__*' versions
- * of (v)snprintf.
- *
- * This file is in the public domain
- * (in case it matters)
- */
-
-#include <stdarg.h>
-#include <stdlib.h>
-
-extern int __vsnprintf (char *, size_t, const char *, va_list);
-
-int
-vsnprintf (char *string, size_t maxlen, const char *format, va_list args)
-{
-  return __vsnprintf (string, maxlen, format, args);
-}
-
-int
-snprintf (char *string, size_t maxlen, const char *format, ...)
-{
-  va_list args;
-  int retval;
-  va_start(args, format);
-  retval = vsnprintf (string, maxlen, format, args);
-  va_end(args);
-  return retval;
-}
diff --git a/support/error.c b/support/error.c
deleted file mode 100644 (file)
index 3e77b31..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-/* Error handler for noninteractive utilities
-   Copyright (C) 1990,91,92,93,94,95,96,97,98 Free Software Foundation, Inc.
-
-   This file is part of the GNU C Library.  Its master source is NOT part of
-   the C library, however.  The master source lives in /gd/gnu/lib.
-
-   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.  */
-
-/* Written by David MacKenzie <djm@gnu.ai.mit.edu>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <gnomesupport-fake.h>
-
-#include <stdio.h>
-
-#if HAVE_VPRINTF || HAVE_DOPRNT || _LIBC
-# if __STDC__
-#  include <stdarg.h>
-#  define VA_START(args, lastarg) va_start(args, lastarg)
-# else
-#  include <varargs.h>
-#  define VA_START(args, lastarg) va_start(args)
-# endif
-#else
-# define va_alist a1, a2, a3, a4, a5, a6, a7, a8
-# define va_dcl char *a1, *a2, *a3, *a4, *a5, *a6, *a7, *a8;
-#endif
-
-#if STDC_HEADERS || _LIBC
-# include <stdlib.h>
-# include <string.h>
-#else
-void exit ();
-#endif
-
-#include "error.h"
-
-#ifndef _
-# define _(String) String
-#endif
-
-/* If NULL, error will flush stdout, then print on stderr the program
-   name, a colon and a space.  Otherwise, error will call this
-   function without parameters instead.  */
-void (*error_print_progname) (
-#if __STDC__ - 0
-                             void
-#endif
-                             );
-
-/* This variable is incremented each time `error' is called.  */
-unsigned int error_message_count;
-
-#if HAVE_PROGRAM_INVOCATION_NAME || _LIBC
-/* In the GNU C library, there is a predefined variable for this.  */
-
-# define program_name program_invocation_name
-# include <errno.h>
-
-#else
-
-/* The calling program should define program_name and set it to the
-   name of the executing program.  */
-extern char *program_name;
-
-#endif
-
-#ifdef _LIBC
-/* In GNU libc we want do not want to use the common name `error' directly.
-   Instead make it a weak alias.  */
-# define error __error
-# define error_at_line __error_at_line
-
-# define strerror_r __strerror_r
-
-#else /* not _LIBC */
-
-# if ! HAVE_STRERROR_R
-#  if HAVE_STRERROR
-#   ifndef strerror            /* On some systems, strerror is a macro */
-char *strerror ();
-#   endif
-#  else
-static char *
-private_strerror (errnum)
-     int errnum;
-{
-  extern char *sys_errlist[];
-  extern int sys_nerr;
-
-  if (errnum > 0 && errnum <= sys_nerr)
-    return _(sys_errlist[errnum]);
-  return _("Unknown system error");
-}
-#   define strerror private_strerror
-#  endif /* HAVE_STRERROR */
-# endif        /* ! HAVE_STRERROR_R */
-#endif /* not _LIBC */
-
-/* Print the program name and error message MESSAGE, which is a printf-style
-   format string with optional args.
-   If ERRNUM is nonzero, print its corresponding system error message.
-   Exit with status STATUS if it is nonzero.  */
-/* VARARGS */
-
-void
-#if defined VA_START && __STDC__
-error (int status, int errnum, const char *message, ...)
-#else
-error (status, errnum, message, va_alist)
-     int status;
-     int errnum;
-     char *message;
-     va_dcl
-#endif
-{
-#ifdef VA_START
-  va_list args;
-#endif
-
-  if (error_print_progname)
-    (*error_print_progname) ();
-  else
-    {
-      fflush (stdout);
-      fprintf (stderr, "%s: ", program_name);
-    }
-
-#ifdef VA_START
-  VA_START (args, message);
-# if HAVE_VPRINTF || _LIBC
-  vfprintf (stderr, message, args);
-# else
-  _doprnt (message, args, stderr);
-# endif
-  va_end (args);
-#else
-  fprintf (stderr, message, a1, a2, a3, a4, a5, a6, a7, a8);
-#endif
-
-  ++error_message_count;
-  if (errnum)
-    {
-#if defined HAVE_STRERROR_R || defined _LIBC
-      char errbuf[1024];
-      fprintf (stderr, ": %s", strerror_r (errnum, errbuf, sizeof errbuf));
-#else
-      fprintf (stderr, ": %s", strerror (errnum));
-#endif
-    }
-  putc ('\n', stderr);
-  fflush (stderr);
-  if (status)
-    exit (status);
-}
-
-/* Sometimes we want to have at most one error per line.  This
-   variable controls whether this mode is selected or not.  */
-int error_one_per_line;
-
-void
-#if defined VA_START && __STDC__
-error_at_line (int status, int errnum, const char *file_name,
-              unsigned int line_number, const char *message, ...)
-#else
-error_at_line (status, errnum, file_name, line_number, message, va_alist)
-     int status;
-     int errnum;
-     const char *file_name;
-     unsigned int line_number;
-     char *message;
-     va_dcl
-#endif
-{
-#ifdef VA_START
-  va_list args;
-#endif
-
-  if (error_one_per_line)
-    {
-      static const char *old_file_name;
-      static unsigned int old_line_number;
-
-      if (old_line_number == line_number &&
-         (file_name == old_file_name || !strcmp (old_file_name, file_name)))
-       /* Simply return and print nothing.  */
-       return;
-
-      old_file_name = file_name;
-      old_line_number = line_number;
-    }
-
-  if (error_print_progname)
-    (*error_print_progname) ();
-  else
-    {
-      fflush (stdout);
-      fprintf (stderr, "%s:", program_name);
-    }
-
-  if (file_name != NULL)
-    fprintf (stderr, "%s:%d: ", file_name, line_number);
-
-#ifdef VA_START
-  VA_START (args, message);
-# if HAVE_VPRINTF || _LIBC
-  vfprintf (stderr, message, args);
-# else
-  _doprnt (message, args, stderr);
-# endif
-  va_end (args);
-#else
-  fprintf (stderr, message, a1, a2, a3, a4, a5, a6, a7, a8);
-#endif
-
-  ++error_message_count;
-  if (errnum)
-    {
-#if defined HAVE_STRERROR_R || defined _LIBC
-      char errbuf[1024];
-      fprintf (stderr, ": %s", strerror_r (errnum, errbuf, sizeof errbuf));
-#else
-      fprintf (stderr, ": %s", strerror (errnum));
-#endif
-    }
-  putc ('\n', stderr);
-  fflush (stderr);
-  if (status)
-    exit (status);
-}
-
-#ifdef _LIBC
-/* Make the weak alias.  */
-# undef error
-# undef error_at_line
-weak_alias (__error, error)
-weak_alias (__error_at_line, error_at_line)
-#endif
diff --git a/support/error.h b/support/error.h
deleted file mode 100644 (file)
index 0d3bcb7..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Declaration for error-reporting function
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
-
-   This file is part of the GNU C Library.  Its master source is NOT part of
-   the C library, however.  The master source lives in /gd/gnu/lib.
-
-   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.  */
-
-#ifndef _ERROR_H
-#define _ERROR_H 1
-
-#ifndef __attribute__
-/* This feature is available in gcc versions 2.5 and later.  */
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__
-#  define __attribute__(Spec) /* empty */
-# endif
-/* The __-protected variants of `format' and `printf' attributes
-   are accepted by gcc versions 2.6.4 (effectively 2.7) and later.  */
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
-#  define __format__ format
-#  define __printf__ printf
-# endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined (__STDC__) && __STDC__
-
-/* Print a message with `fprintf (stderr, FORMAT, ...)';
-   if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM).
-   If STATUS is nonzero, terminate the program with `exit (STATUS)'.  */
-
-extern void error (int status, int errnum, const char *format, ...)
-     __attribute__ ((__format__ (__printf__, 3, 4)));
-
-extern void error_at_line (int status, int errnum, const char *fname,
-                          unsigned int lineno, const char *format, ...)
-     __attribute__ ((__format__ (__printf__, 5, 6)));
-
-/* If NULL, error will flush stdout, then print on stderr the program
-   name, a colon and a space.  Otherwise, error will call this
-   function without parameters instead.  */
-extern void (*error_print_progname) (void);
-
-#else
-void error ();
-void error_at_line ();
-extern void (*error_print_progname) ();
-#endif
-
-/* This variable is incremented each time `error' is called.  */
-extern unsigned int error_message_count;
-
-/* Sometimes we want to have at most one error per line.  This
-   variable controls whether this mode is selected or not.  */
-extern int error_one_per_line;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* error.h */
diff --git a/support/findme.c b/support/findme.c
deleted file mode 100644 (file)
index 36d0447..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#include "system.h"
-#include "findme.h"
-
-const char * findProgramPath(const char * argv0) {
-    char * path = getenv("PATH");
-    char * pathbuf;
-    char * start, * chptr;
-    char * buf;
-
-    /* If there is a / in the argv[0], it has to be an absolute
-       path */
-    if (strchr(argv0, '/'))
-       return xstrdup(argv0);
-
-    if (!path) return NULL;
-
-    start = pathbuf = alloca(strlen(path) + 1);
-    buf = malloc(strlen(path) + strlen(argv0) + 2);
-    strcpy(pathbuf, path);
-
-    chptr = NULL;
-    do {
-       if ((chptr = strchr(start, ':')))
-           *chptr = '\0';
-       sprintf(buf, "%s/%s", start, argv0);
-
-       if (!access(buf, X_OK))
-           return buf;
-
-       if (chptr)
-           start = chptr + 1;
-       else
-           start = NULL;
-    } while (start && *start);
-
-    free(buf);
-
-    return NULL;
-}
diff --git a/support/findme.h b/support/findme.h
deleted file mode 100644 (file)
index 066e228..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#ifndef H_FINDME
-#define H_FINDME
-
-const char * findProgramPath(const char * argv0);
-
-#endif
diff --git a/support/getopt.c b/support/getopt.c
deleted file mode 100644 (file)
index c1a384f..0000000
+++ /dev/null
@@ -1,1041 +0,0 @@
-/* Getopt for GNU.
-   NOTE: getopt is now part of the C library, so if you don't know what
-   "Keep this file name-space clean" means, talk to roland@gnu.ai.mit.edu
-   before changing it!
-
-   Copyright (C) 1987, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97
-       Free Software Foundation, Inc.
-
-   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.  */
-
-/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>.
-   Ditto for AIX 3.2 and <stdlib.h>.  */
-#ifndef _NO_PROTO
-#define _NO_PROTO
-#endif
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#if !defined (__STDC__) || !__STDC__
-/* This is a separate conditional since some stdc systems
-   reject `defined (const)'.  */
-#ifndef const
-#define const
-#endif
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#define GETOPT_INTERFACE_VERSION 2
-#if !defined (_LIBC) && defined (__GLIBC__) && __GLIBC__ >= 2
-#include <gnu-versions.h>
-#if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION
-#define ELIDE_CODE
-#endif
-#endif
-
-#ifndef ELIDE_CODE
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-/* Don't include stdlib.h for non-GNU C libraries because some of them
-   contain conflicting prototypes for getopt.  */
-#include <stdlib.h>
-#include <unistd.h>
-#endif /* GNU C library.  */
-
-#ifdef VMS
-#include <unixlib.h>
-#if HAVE_STRING_H - 0
-#include <string.h>
-#endif
-#endif
-
-#ifndef _
-/* This is for other GNU distributions with internationalized messages.
-   When compiling libc, the _ macro is predefined.  */
-#ifdef HAVE_LIBINTL_H
-# include <libintl.h>
-# define _(msgid)      gettext (msgid)
-#else
-# define _(msgid)      (msgid)
-#endif
-#endif
-
-/* This version of `getopt' appears to the caller like standard Unix `getopt'
-   but it behaves differently for the user, since it allows the user
-   to intersperse the options with the other arguments.
-
-   As `getopt' works, it permutes the elements of ARGV so that,
-   when it is done, all the options precede everything else.  Thus
-   all application programs are extended to handle flexible argument order.
-
-   Setting the environment variable POSIXLY_CORRECT disables permutation.
-   Then the behavior is completely standard.
-
-   GNU application programs can use a third alternative mode in which
-   they can distinguish the relative order of options and other arguments.  */
-
-#include "getopt.h"
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-char *optarg = NULL;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns -1, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-/* 1003.2 says this must be 1 before any call.  */
-int optind = 1;
-
-/* Formerly, initialization of getopt depended on optind==0, which
-   causes problems with re-calling getopt as programs generally don't
-   know that. */
-
-int __getopt_initialized = 0;
-
-/* The next char to be scanned in the option-element
-   in which the last option character we returned was found.
-   This allows us to pick up the scan where we left off.
-
-   If this is zero, or a null string, it means resume the scan
-   by advancing to the next ARGV-element.  */
-
-static char *nextchar;
-
-/* Callers store zero here to inhibit the error message
-   for unrecognized options.  */
-
-int opterr = 1;
-
-/* Set to an option character which was unrecognized.
-   This must be initialized on some systems to avoid linking in the
-   system's own getopt implementation.  */
-
-int optopt = '?';
-
-/* Describe how to deal with options that follow non-option ARGV-elements.
-
-   If the caller did not specify anything,
-   the default is REQUIRE_ORDER if the environment variable
-   POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
-   REQUIRE_ORDER means don't recognize them as options;
-   stop option processing when the first non-option is seen.
-   This is what Unix does.
-   This mode of operation is selected by either setting the environment
-   variable POSIXLY_CORRECT, or using `+' as the first character
-   of the list of option characters.
-
-   PERMUTE is the default.  We permute the contents of ARGV as we scan,
-   so that eventually all the non-options are at the end.  This allows options
-   to be given in any order, even with programs that were not written to
-   expect this.
-
-   RETURN_IN_ORDER is an option available to programs that were written
-   to expect options and other ARGV-elements in any order and that care about
-   the ordering of the two.  We describe each non-option ARGV-element
-   as if it were the argument of an option with character code 1.
-   Using `-' as the first character of the list of option characters
-   selects this mode of operation.
-
-   The special argument `--' forces an end of option-scanning regardless
-   of the value of `ordering'.  In the case of RETURN_IN_ORDER, only
-   `--' can cause `getopt' to return -1 with `optind' != ARGC.  */
-
-static enum
-{
-  REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
-} ordering;
-
-/* Value of POSIXLY_CORRECT environment variable.  */
-static char *posixly_correct;
-
-#ifdef __GNU_LIBRARY__
-/* We want to avoid inclusion of string.h with non-GNU libraries
-   because there are many ways it can cause trouble.
-   On some systems, it contains special magic macros that don't work
-   in GCC.  */
-#include <string.h>
-#define        my_index        strchr
-#else
-
-/* Avoid depending on library functions or files
-   whose names are inconsistent.  */
-
-char *getenv ();
-
-static char *
-my_index (str, chr)
-     const char *str;
-     int chr;
-{
-  while (*str)
-    {
-      if (*str == chr)
-       return (char *) str;
-      str++;
-    }
-  return 0;
-}
-
-/* If using GCC, we can safely declare strlen this way.
-   If not using GCC, it is ok not to declare it.  */
-#ifdef __GNUC__
-/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h.
-   That was relevant to code that was here before.  */
-#if !defined (__STDC__) || !__STDC__
-/* gcc with -traditional declares the built-in strlen to return int,
-   and has done so at least since version 2.4.5. -- rms.  */
-extern int strlen (const char *);
-#endif /* not __STDC__ */
-#endif /* __GNUC__ */
-
-#endif /* not __GNU_LIBRARY__ */
-
-/* Handle permutation of arguments.  */
-
-/* Describe the part of ARGV that contains non-options that have
-   been skipped.  `first_nonopt' is the index in ARGV of the first of them;
-   `last_nonopt' is the index after the last of them.  */
-
-static int first_nonopt;
-static int last_nonopt;
-
-#ifdef _LIBC
-/* Bash 2.0 gives us an environment variable containing flags
-   indicating ARGV elements that should not be considered arguments.  */
-
-/* Defined in getopt_init.c  */
-extern char *__getopt_nonoption_flags;
-
-static int nonoption_flags_max_len;
-static int nonoption_flags_len;
-
-static int original_argc;
-static char *const *original_argv;
-
-/* Make sure the environment variable bash 2.0 puts in the environment
-   is valid for the getopt call we must make sure that the ARGV passed
-   to getopt is that one passed to the process.  */
-static void
-__attribute__ ((unused))
-store_args_and_env (int argc, char *const *argv)
-{
-  /* XXX This is no good solution.  We should rather copy the args so
-     that we can compare them later.  But we must not use malloc(3).  */
-  original_argc = argc;
-  original_argv = argv;
-}
-# ifdef text_set_element
-text_set_element (__libc_subinit, store_args_and_env);
-# endif /* text_set_element */
-
-# define SWAP_FLAGS(ch1, ch2) \
-  if (nonoption_flags_len > 0)                                               \
-    {                                                                        \
-      char __tmp = __getopt_nonoption_flags[ch1];                            \
-      __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2];         \
-      __getopt_nonoption_flags[ch2] = __tmp;                                 \
-    }
-#else  /* !_LIBC */
-# define SWAP_FLAGS(ch1, ch2)
-#endif /* _LIBC */
-
-/* Exchange two adjacent subsequences of ARGV.
-   One subsequence is elements [first_nonopt,last_nonopt)
-   which contains all the non-options that have been skipped so far.
-   The other is elements [last_nonopt,optind), which contains all
-   the options processed since those non-options were skipped.
-
-   `first_nonopt' and `last_nonopt' are relocated so that they describe
-   the new indices of the non-options in ARGV after they are moved.  */
-
-#if defined (__STDC__) && __STDC__
-static void exchange (char **);
-#endif
-
-static void
-exchange (argv)
-     char **argv;
-{
-  int bottom = first_nonopt;
-  int middle = last_nonopt;
-  int top = optind;
-  char *tem;
-
-  /* Exchange the shorter segment with the far end of the longer segment.
-     That puts the shorter segment into the right place.
-     It leaves the longer segment in the right place overall,
-     but it consists of two parts that need to be swapped next.  */
-
-#ifdef _LIBC
-  /* First make sure the handling of the `__getopt_nonoption_flags'
-     string can work normally.  Our top argument must be in the range
-     of the string.  */
-  if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len)
-    {
-      /* We must extend the array.  The user plays games with us and
-        presents new arguments.  */
-      char *new_str = malloc (top + 1);
-      if (new_str == NULL)
-       nonoption_flags_len = nonoption_flags_max_len = 0;
-      else
-       {
-         memset (__mempcpy (new_str, __getopt_nonoption_flags,
-                            nonoption_flags_max_len),
-                 '\0', top + 1 - nonoption_flags_max_len);
-         nonoption_flags_max_len = top + 1;
-         __getopt_nonoption_flags = new_str;
-       }
-    }
-#endif
-
-  while (top > middle && middle > bottom)
-    {
-      if (top - middle > middle - bottom)
-       {
-         /* Bottom segment is the short one.  */
-         int len = middle - bottom;
-         register int i;
-
-         /* Swap it with the top part of the top segment.  */
-         for (i = 0; i < len; i++)
-           {
-             tem = argv[bottom + i];
-             argv[bottom + i] = argv[top - (middle - bottom) + i];
-             argv[top - (middle - bottom) + i] = tem;
-             SWAP_FLAGS (bottom + i, top - (middle - bottom) + i);
-           }
-         /* Exclude the moved bottom segment from further swapping.  */
-         top -= len;
-       }
-      else
-       {
-         /* Top segment is the short one.  */
-         int len = top - middle;
-         register int i;
-
-         /* Swap it with the bottom part of the bottom segment.  */
-         for (i = 0; i < len; i++)
-           {
-             tem = argv[bottom + i];
-             argv[bottom + i] = argv[middle + i];
-             argv[middle + i] = tem;
-             SWAP_FLAGS (bottom + i, middle + i);
-           }
-         /* Exclude the moved top segment from further swapping.  */
-         bottom += len;
-       }
-    }
-
-  /* Update records for the slots the non-options now occupy.  */
-
-  first_nonopt += (optind - last_nonopt);
-  last_nonopt = optind;
-}
-
-/* Initialize the internal data when the first call is made.  */
-
-#if defined (__STDC__) && __STDC__
-static const char *_getopt_initialize (int, char *const *, const char *);
-#endif
-static const char *
-_getopt_initialize (argc, argv, optstring)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-{
-  /* Start processing options with ARGV-element 1 (since ARGV-element 0
-     is the program name); the sequence of previously skipped
-     non-option ARGV-elements is empty.  */
-
-  first_nonopt = last_nonopt = optind;
-
-  nextchar = NULL;
-
-  posixly_correct = getenv ("POSIXLY_CORRECT");
-
-  /* Determine how to handle the ordering of options and nonoptions.  */
-
-  if (optstring[0] == '-')
-    {
-      ordering = RETURN_IN_ORDER;
-      ++optstring;
-    }
-  else if (optstring[0] == '+')
-    {
-      ordering = REQUIRE_ORDER;
-      ++optstring;
-    }
-  else if (posixly_correct != NULL)
-    ordering = REQUIRE_ORDER;
-  else
-    ordering = PERMUTE;
-
-#ifdef _LIBC
-  if (posixly_correct == NULL
-      && argc == original_argc && argv == original_argv)
-    {
-      if (nonoption_flags_max_len == 0)
-       {
-         if (__getopt_nonoption_flags == NULL
-             || __getopt_nonoption_flags[0] == '\0')
-           nonoption_flags_max_len = -1;
-         else
-           {
-             const char *orig_str = __getopt_nonoption_flags;
-             int len = nonoption_flags_max_len = strlen (orig_str);
-             if (nonoption_flags_max_len < argc)
-               nonoption_flags_max_len = argc;
-             __getopt_nonoption_flags =
-               (char *) malloc (nonoption_flags_max_len);
-             if (__getopt_nonoption_flags == NULL)
-               nonoption_flags_max_len = -1;
-             else
-               memset (__mempcpy (__getopt_nonoption_flags, orig_str, len),
-                       '\0', nonoption_flags_max_len - len);
-           }
-       }
-      nonoption_flags_len = nonoption_flags_max_len;
-    }
-  else
-    nonoption_flags_len = 0;
-#endif
-
-  return optstring;
-}
-
-/* Scan elements of ARGV (whose length is ARGC) for option characters
-   given in OPTSTRING.
-
-   If an element of ARGV starts with '-', and is not exactly "-" or "--",
-   then it is an option element.  The characters of this element
-   (aside from the initial '-') are option characters.  If `getopt'
-   is called repeatedly, it returns successively each of the option characters
-   from each of the option elements.
-
-   If `getopt' finds another option character, it returns that character,
-   updating `optind' and `nextchar' so that the next call to `getopt' can
-   resume the scan with the following option character or ARGV-element.
-
-   If there are no more option characters, `getopt' returns -1.
-   Then `optind' is the index in ARGV of the first ARGV-element
-   that is not an option.  (The ARGV-elements have been permuted
-   so that those that are not options now come last.)
-
-   OPTSTRING is a string containing the legitimate option characters.
-   If an option character is seen that is not listed in OPTSTRING,
-   return '?' after printing an error message.  If you set `opterr' to
-   zero, the error message is suppressed but we still return '?'.
-
-   If a char in OPTSTRING is followed by a colon, that means it wants an arg,
-   so the following text in the same ARGV-element, or the text of the following
-   ARGV-element, is returned in `optarg'.  Two colons mean an option that
-   wants an optional arg; if there is text in the current ARGV-element,
-   it is returned in `optarg', otherwise `optarg' is set to zero.
-
-   If OPTSTRING starts with `-' or `+', it requests different methods of
-   handling the non-option ARGV-elements.
-   See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above.
-
-   Long-named options begin with `--' instead of `-'.
-   Their names may be abbreviated as long as the abbreviation is unique
-   or is an exact match for some defined option.  If they have an
-   argument, it follows the option name in the same ARGV-element, separated
-   from the option name by a `=', or else the in next ARGV-element.
-   When `getopt' finds a long-named option, it returns 0 if that option's
-   `flag' field is nonzero, the value of the option's `val' field
-   if the `flag' field is zero.
-
-   The elements of ARGV aren't really const, because we permute them.
-   But we pretend they're const in the prototype to be compatible
-   with other systems.
-
-   LONGOPTS is a vector of `struct option' terminated by an
-   element containing a name which is zero.
-
-   LONGIND returns the index in LONGOPT of the long-named option found.
-   It is only valid when a long-named option has been found by the most
-   recent call.
-
-   If LONG_ONLY is nonzero, '-' as well as '--' can introduce
-   long-named options.  */
-
-int
-_getopt_internal (argc, argv, optstring, longopts, longind, long_only)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-     const struct option *longopts;
-     int *longind;
-     int long_only;
-{
-  optarg = NULL;
-
-  if (optind == 0 || !__getopt_initialized)
-    {
-      if (optind == 0)
-       optind = 1;     /* Don't scan ARGV[0], the program name.  */
-      optstring = _getopt_initialize (argc, argv, optstring);
-      __getopt_initialized = 1;
-    }
-
-  /* Test whether ARGV[optind] points to a non-option argument.
-     Either it does not have option syntax, or there is an environment flag
-     from the shell indicating it is not an option.  The later information
-     is only used when the used in the GNU libc.  */
-#ifdef _LIBC
-#define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0'       \
-                    || (optind < nonoption_flags_len                         \
-                        && __getopt_nonoption_flags[optind] == '1'))
-#else
-#define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0')
-#endif
-
-  if (nextchar == NULL || *nextchar == '\0')
-    {
-      /* Advance to the next ARGV-element.  */
-
-      /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been
-        moved back by the user (who may also have changed the arguments).  */
-      if (last_nonopt > optind)
-       last_nonopt = optind;
-      if (first_nonopt > optind)
-       first_nonopt = optind;
-
-      if (ordering == PERMUTE)
-       {
-         /* If we have just processed some options following some non-options,
-            exchange them so that the options come first.  */
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (last_nonopt != optind)
-           first_nonopt = optind;
-
-         /* Skip any additional non-options
-            and extend the range of non-options previously skipped.  */
-
-         while (optind < argc && NONOPTION_P)
-           optind++;
-         last_nonopt = optind;
-       }
-
-      /* The special ARGV-element `--' means premature end of options.
-        Skip it like a null option,
-        then exchange with previous non-options as if it were an option,
-        then skip everything else like a non-option.  */
-
-      if (optind != argc && !strcmp (argv[optind], "--"))
-       {
-         optind++;
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (first_nonopt == last_nonopt)
-           first_nonopt = optind;
-         last_nonopt = argc;
-
-         optind = argc;
-       }
-
-      /* If we have done all the ARGV-elements, stop the scan
-        and back over any non-options that we skipped and permuted.  */
-
-      if (optind == argc)
-       {
-         /* Set the next-arg-index to point at the non-options
-            that we previously skipped, so the caller will digest them.  */
-         if (first_nonopt != last_nonopt)
-           optind = first_nonopt;
-         return -1;
-       }
-
-      /* If we have come to a non-option and did not permute it,
-        either stop the scan or describe it to the caller and pass it by.  */
-
-      if (NONOPTION_P)
-       {
-         if (ordering == REQUIRE_ORDER)
-           return -1;
-         optarg = argv[optind++];
-         return 1;
-       }
-
-      /* We have found another option-ARGV-element.
-        Skip the initial punctuation.  */
-
-      nextchar = (argv[optind] + 1
-                 + (longopts != NULL && argv[optind][1] == '-'));
-    }
-
-  /* Decode the current option-ARGV-element.  */
-
-  /* Check whether the ARGV-element is a long option.
-
-     If long_only and the ARGV-element has the form "-f", where f is
-     a valid short option, don't consider it an abbreviated form of
-     a long option that starts with f.  Otherwise there would be no
-     way to give the -f short option.
-
-     On the other hand, if there's a long option "fubar" and
-     the ARGV-element is "-fu", do consider that an abbreviation of
-     the long option, just like "--fu", and not "-f" with arg "u".
-
-     This distinction seems to be the most useful approach.  */
-
-  if (longopts != NULL
-      && (argv[optind][1] == '-'
-         || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1])))))
-    {
-      char *nameend;
-      const struct option *p;
-      const struct option *pfound = NULL;
-      int exact = 0;
-      int ambig = 0;
-      int indfound = -1;
-      int option_index;
-
-      for (nameend = nextchar; *nameend && *nameend != '='; nameend++)
-       /* Do nothing.  */ ;
-
-      /* Test all long options for either exact match
-        or abbreviated matches.  */
-      for (p = longopts, option_index = 0; p->name; p++, option_index++)
-       if (!strncmp (p->name, nextchar, nameend - nextchar))
-         {
-           if ((unsigned int) (nameend - nextchar)
-               == (unsigned int) strlen (p->name))
-             {
-               /* Exact match found.  */
-               pfound = p;
-               indfound = option_index;
-               exact = 1;
-               break;
-             }
-           else if (pfound == NULL)
-             {
-               /* First nonexact match found.  */
-               pfound = p;
-               indfound = option_index;
-             }
-           else
-             /* Second or later nonexact match found.  */
-             ambig = 1;
-         }
-
-      if (ambig && !exact)
-       {
-         if (opterr)
-           fprintf (stderr, _("%s: option `%s' is ambiguous\n"),
-                    argv[0], argv[optind]);
-         nextchar += strlen (nextchar);
-         optind++;
-         optopt = 0;
-         return '?';
-       }
-
-      if (pfound != NULL)
-       {
-         option_index = indfound;
-         optind++;
-         if (*nameend)
-           {
-             /* Don't test has_arg with >, because some C compilers don't
-                allow it to be used on enums.  */
-             if (pfound->has_arg)
-               optarg = nameend + 1;
-             else
-               {
-                 if (opterr)
-                  if (argv[optind - 1][1] == '-')
-                   /* --option */
-                   fprintf (stderr,
-                    _("%s: option `--%s' doesn't allow an argument\n"),
-                    argv[0], pfound->name);
-                  else
-                   /* +option or -option */
-                   fprintf (stderr,
-                    _("%s: option `%c%s' doesn't allow an argument\n"),
-                    argv[0], argv[optind - 1][0], pfound->name);
-
-                 nextchar += strlen (nextchar);
-
-                 optopt = pfound->val;
-                 return '?';
-               }
-           }
-         else if (pfound->has_arg == 1)
-           {
-             if (optind < argc)
-               optarg = argv[optind++];
-             else
-               {
-                 if (opterr)
-                   fprintf (stderr,
-                          _("%s: option `%s' requires an argument\n"),
-                          argv[0], argv[optind - 1]);
-                 nextchar += strlen (nextchar);
-                 optopt = pfound->val;
-                 return optstring[0] == ':' ? ':' : '?';
-               }
-           }
-         nextchar += strlen (nextchar);
-         if (longind != NULL)
-           *longind = option_index;
-         if (pfound->flag)
-           {
-             *(pfound->flag) = pfound->val;
-             return 0;
-           }
-         return pfound->val;
-       }
-
-      /* Can't find it as a long option.  If this is not getopt_long_only,
-        or the option starts with '--' or is not a valid short
-        option, then it's an error.
-        Otherwise interpret it as a short option.  */
-      if (!long_only || argv[optind][1] == '-'
-         || my_index (optstring, *nextchar) == NULL)
-       {
-         if (opterr)
-           {
-             if (argv[optind][1] == '-')
-               /* --option */
-               fprintf (stderr, _("%s: unrecognized option `--%s'\n"),
-                        argv[0], nextchar);
-             else
-               /* +option or -option */
-               fprintf (stderr, _("%s: unrecognized option `%c%s'\n"),
-                        argv[0], argv[optind][0], nextchar);
-           }
-         nextchar = (char *) "";
-         optind++;
-         optopt = 0;
-         return '?';
-       }
-    }
-
-  /* Look at and handle the next short option-character.  */
-
-  {
-    char c = *nextchar++;
-    char *temp = my_index (optstring, c);
-
-    /* Increment `optind' when we start to process its last character.  */
-    if (*nextchar == '\0')
-      ++optind;
-
-    if (temp == NULL || c == ':')
-      {
-       if (opterr)
-         {
-           if (posixly_correct)
-             /* 1003.2 specifies the format of this message.  */
-             fprintf (stderr, _("%s: illegal option -- %c\n"),
-                      argv[0], c);
-           else
-             fprintf (stderr, _("%s: invalid option -- %c\n"),
-                      argv[0], c);
-         }
-       optopt = c;
-       return '?';
-      }
-    /* Convenience. Treat POSIX -W foo same as long option --foo */
-    if (temp[0] == 'W' && temp[1] == ';')
-      {
-       char *nameend;
-       const struct option *p;
-       const struct option *pfound = NULL;
-       int exact = 0;
-       int ambig = 0;
-       int indfound = 0;
-       int option_index;
-
-       /* This is an option that requires an argument.  */
-       if (*nextchar != '\0')
-         {
-           optarg = nextchar;
-           /* If we end this ARGV-element by taking the rest as an arg,
-              we must advance to the next element now.  */
-           optind++;
-         }
-       else if (optind == argc)
-         {
-           if (opterr)
-             {
-               /* 1003.2 specifies the format of this message.  */
-               fprintf (stderr, _("%s: option requires an argument -- %c\n"),
-                        argv[0], c);
-             }
-           optopt = c;
-           if (optstring[0] == ':')
-             c = ':';
-           else
-             c = '?';
-           return c;
-         }
-       else
-         /* We already incremented `optind' once;
-            increment it again when taking next ARGV-elt as argument.  */
-         optarg = argv[optind++];
-
-       /* optarg is now the argument, see if it's in the
-          table of longopts.  */
-
-       for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++)
-         /* Do nothing.  */ ;
-
-       /* Test all long options for either exact match
-          or abbreviated matches.  */
-       for (p = longopts, option_index = 0; p->name; p++, option_index++)
-         if (!strncmp (p->name, nextchar, nameend - nextchar))
-           {
-             if ((unsigned int) (nameend - nextchar) == strlen (p->name))
-               {
-                 /* Exact match found.  */
-                 pfound = p;
-                 indfound = option_index;
-                 exact = 1;
-                 break;
-               }
-             else if (pfound == NULL)
-               {
-                 /* First nonexact match found.  */
-                 pfound = p;
-                 indfound = option_index;
-               }
-             else
-               /* Second or later nonexact match found.  */
-               ambig = 1;
-           }
-       if (ambig && !exact)
-         {
-           if (opterr)
-             fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"),
-                      argv[0], argv[optind]);
-           nextchar += strlen (nextchar);
-           optind++;
-           return '?';
-         }
-       if (pfound != NULL)
-         {
-           option_index = indfound;
-           if (*nameend)
-             {
-               /* Don't test has_arg with >, because some C compilers don't
-                  allow it to be used on enums.  */
-               if (pfound->has_arg)
-                 optarg = nameend + 1;
-               else
-                 {
-                   if (opterr)
-                     fprintf (stderr, _("\
-%s: option `-W %s' doesn't allow an argument\n"),
-                              argv[0], pfound->name);
-
-                   nextchar += strlen (nextchar);
-                   return '?';
-                 }
-             }
-           else if (pfound->has_arg == 1)
-             {
-               if (optind < argc)
-                 optarg = argv[optind++];
-               else
-                 {
-                   if (opterr)
-                     fprintf (stderr,
-                              _("%s: option `%s' requires an argument\n"),
-                              argv[0], argv[optind - 1]);
-                   nextchar += strlen (nextchar);
-                   return optstring[0] == ':' ? ':' : '?';
-                 }
-             }
-           nextchar += strlen (nextchar);
-           if (longind != NULL)
-             *longind = option_index;
-           if (pfound->flag)
-             {
-               *(pfound->flag) = pfound->val;
-               return 0;
-             }
-           return pfound->val;
-         }
-         nextchar = NULL;
-         return 'W';   /* Let the application handle it.   */
-      }
-    if (temp[1] == ':')
-      {
-       if (temp[2] == ':')
-         {
-           /* This is an option that accepts an argument optionally.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               optind++;
-             }
-           else
-             optarg = NULL;
-           nextchar = NULL;
-         }
-       else
-         {
-           /* This is an option that requires an argument.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               /* If we end this ARGV-element by taking the rest as an arg,
-                  we must advance to the next element now.  */
-               optind++;
-             }
-           else if (optind == argc)
-             {
-               if (opterr)
-                 {
-                   /* 1003.2 specifies the format of this message.  */
-                   fprintf (stderr,
-                          _("%s: option requires an argument -- %c\n"),
-                          argv[0], c);
-                 }
-               optopt = c;
-               if (optstring[0] == ':')
-                 c = ':';
-               else
-                 c = '?';
-             }
-           else
-             /* We already incremented `optind' once;
-                increment it again when taking next ARGV-elt as argument.  */
-             optarg = argv[optind++];
-           nextchar = NULL;
-         }
-      }
-    return c;
-  }
-}
-
-int
-getopt (argc, argv, optstring)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-{
-  return _getopt_internal (argc, argv, optstring,
-                          (const struct option *) 0,
-                          (int *) 0,
-                          0);
-}
-
-#endif /* Not ELIDE_CODE.  */
-
-#ifdef TEST
-
-/* Compile with -DTEST to make an executable for use in testing
-   the above definition of `getopt'.  */
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-
-      c = getopt (argc, argv, "abc:d:0123456789");
-      if (c == -1)
-       break;
-
-      switch (c)
-       {
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/support/getopt.h b/support/getopt.h
deleted file mode 100644 (file)
index 9b25f90..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Declarations for getopt.
-   Copyright (C) 1989,90,91,92,93,94,96,97 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 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.  */
-
-#ifndef _GETOPT_H
-#define _GETOPT_H 1
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-extern char *optarg;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns -1, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-extern int optind;
-
-/* Callers store zero here to inhibit the error message `getopt' prints
-   for unrecognized options.  */
-
-extern int opterr;
-
-/* Set to an option character which was unrecognized.  */
-
-extern int optopt;
-
-/* Describe the long-named options requested by the application.
-   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
-   of `struct option' terminated by an element containing a name which is
-   zero.
-
-   The field `has_arg' is:
-   no_argument         (or 0) if the option does not take an argument,
-   required_argument   (or 1) if the option requires an argument,
-   optional_argument   (or 2) if the option takes an optional argument.
-
-   If the field `flag' is not NULL, it points to a variable that is set
-   to the value given in the field `val' when the option is found, but
-   left unchanged if the option is not found.
-
-   To have a long-named option do something other than set an `int' to
-   a compiled-in constant, such as set a value from `optarg', set the
-   option's `flag' field to zero and its `val' field to a nonzero
-   value (the equivalent single-letter option character, if there is
-   one).  For long options that have a zero `flag' field, `getopt'
-   returns the contents of the `val' field.  */
-
-struct option
-{
-#if defined (__STDC__) && __STDC__
-  const char *name;
-#else
-  char *name;
-#endif
-  /* has_arg can't be an enum because some compilers complain about
-     type mismatches in all the code that assumes it is an int.  */
-  int has_arg;
-  int *flag;
-  int val;
-};
-
-/* Names for the values of the `has_arg' field of `struct option'.  */
-
-#define        no_argument             0
-#define required_argument      1
-#define optional_argument      2
-
-#if defined (__STDC__) && __STDC__
-#ifdef __GNU_LIBRARY__
-/* Many other libraries have conflicting prototypes for getopt, with
-   differences in the consts, in stdlib.h.  To avoid compilation
-   errors, only prototype getopt for the GNU C library.  */
-extern int getopt (int argc, char *const *argv, const char *shortopts);
-#else /* not __GNU_LIBRARY__ */
-#ifndef __cplusplus
-/* C++ is more pedantic, and demands a full prototype, not this.
-   Hope that stdlib.h has a prototype for `getopt'.  */
-extern int getopt ();
-#endif /* __cplusplus */
-#endif /* __GNU_LIBRARY__ */
-extern int getopt_long (int argc, char *const *argv, const char *shortopts,
-                       const struct option *longopts, int *longind);
-extern int getopt_long_only (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind);
-
-/* Internal only.  Users should not call this directly.  */
-extern int _getopt_internal (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind,
-                            int long_only);
-#else /* not __STDC__ */
-extern int getopt ();
-extern int getopt_long ();
-extern int getopt_long_only ();
-
-extern int _getopt_internal ();
-#endif /* __STDC__ */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* getopt.h */
diff --git a/support/getopt1.c b/support/getopt1.c
deleted file mode 100644 (file)
index f60f121..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-/* getopt_long and getopt_long_only entry points for GNU getopt.
-   Copyright (C) 1987,88,89,90,91,92,93,94,96,97 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 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.  */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include "getopt.h"
-
-#if !defined (__STDC__) || !__STDC__
-/* This is a separate conditional since some stdc systems
-   reject `defined (const)'.  */
-#ifndef const
-#define const
-#endif
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#define GETOPT_INTERFACE_VERSION 2
-#if !defined (_LIBC) && defined (__GLIBC__) && __GLIBC__ >= 2
-#include <gnu-versions.h>
-#if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION
-#define ELIDE_CODE
-#endif
-#endif
-
-#ifndef ELIDE_CODE
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-#include <stdlib.h>
-#endif
-
-#ifndef        NULL
-#define NULL 0
-#endif
-
-int
-getopt_long (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
-}
-
-/* Like getopt_long, but '-' as well as '--' can indicate a long option.
-   If an option that starts with '-' (not '--') doesn't match a long option,
-   but does match a short option, it is parsed as a short option
-   instead.  */
-
-int
-getopt_long_only (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
-}
-
-
-#endif /* Not ELIDE_CODE.  */
-
-#ifdef TEST
-
-#include <stdio.h>
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-      int option_index = 0;
-      static struct option long_options[] =
-      {
-       {"add", 1, 0, 0},
-       {"append", 0, 0, 0},
-       {"delete", 1, 0, 0},
-       {"verbose", 0, 0, 0},
-       {"create", 0, 0, 0},
-       {"file", 1, 0, 0},
-       {0, 0, 0, 0}
-      };
-
-      c = getopt_long (argc, argv, "abc:d:0123456789",
-                      long_options, &option_index);
-      if (c == -1)
-       break;
-
-      switch (c)
-       {
-       case 0:
-         printf ("option %s", long_options[option_index].name);
-         if (optarg)
-           printf (" with arg %s", optarg);
-         printf ("\n");
-         break;
-
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case 'd':
-         printf ("option d with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/support/gnome-argp.c b/support/gnome-argp.c
deleted file mode 100644 (file)
index 8f90862..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Gnome-specific code to help with argp integration.
-   Written by Tom Tromey <tromey@cygnus.com>.  */
-
-#include <config.h>
-
-#ifndef HAVE_PROGRAM_INVOCATION_SHORT_NAME
-char *program_invocation_short_name;
-#endif
-
-#ifndef HAVE_PROGRAM_INVOCATION_NAME
-char *program_invocation_name;
-#endif
diff --git a/support/gnome-argp.h b/support/gnome-argp.h
deleted file mode 100644 (file)
index fc18a87..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Gnome-specific code to help with argp integration.
-   Written by Tom Tromey <tromey@cygnus.com>.  */
-
-#ifndef __GNOME_ARGP_H__
-#define __GNOME_ARGP_H__
-
-#ifndef HAVE_STRNDUP
-/* Like strdup, but only copy N chars.  */
-extern char *strndup (const char *s, size_t n);
-#endif
-
-/* Some systems, like Red Hat 4.0, define these but don't declare
-   them.  Hopefully it is safe to always declare them here.  */
-extern char *program_invocation_short_name;
-extern char *program_invocation_name;
-
-#define __mempcpy(To,From,Len) ((char *)memcpy ((To), (From), (Len)) + (Len))
-
-#endif /* __GNOME_ARGP_H__ */
diff --git a/support/gnome-support-2.0.pc.in b/support/gnome-support-2.0.pc.in
deleted file mode 100644 (file)
index 4741ef0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: gnome-support
-Description: GNOME support library
-Version: @VERSION@
-Requires: gnome-common-2.0
-Libs: -lgnomesupport-1.3
-Cflags: 
\ No newline at end of file
diff --git a/support/gnomesupport-fake.h b/support/gnomesupport-fake.h
deleted file mode 100644 (file)
index 3431ce9..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef GNOMESUPPORT_FAKE_H_
-#define GNOMESUPPORT_FAKE_H_
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stddef.h>
-/* ??? This is required to get `size_t' on some systems.  */
-#include <sys/types.h>
-
-#include <gnomesupport.h>
-
-/* Some systems, like Red Hat 4.0, define these but don't declare
-   them.  Hopefully it is safe to always declare them here.  */
-extern char *program_invocation_short_name;
-extern char *program_invocation_name;
-
-/* Override some of config.h.
-   Gnomesupport provides the replacements for these, so you actually
-   HAVE_ them.  */
-
-#ifndef HAVE_STRERROR
-# define HAVE_STRERROR 1
-#endif
-
-#ifndef HAVE_PROGRAM_INVOCATION_NAME
-# define HAVE_PROGRAM_INVOCATION_NAME 1
-#endif
-
-#ifndef HAVE_PROGRAM_INVOCATION_SHORT_NAME
-# define HAVE_PROGRAM_INVOCATION_SHORT_NAME 1
-#endif
-
-#endif /* GNOMESUPPORT_FAKE_H_ */
diff --git a/support/gnomesupport.awk b/support/gnomesupport.awk
deleted file mode 100644 (file)
index 2f89ab6..0000000
+++ /dev/null
@@ -1,208 +0,0 @@
-# This program is used to generate gnomesupport.h
-
-# Print prologue
-BEGIN {
-  print "/* gnomesupport.h */";
-  print "/* This is a generated file.  Please modify `gnomesupport.awk' */";
-  print "";
-  print "#ifndef GNOMESUPPORT_H";
-  print "#define GNOMESUPPORT_H";
-  print "";
-  print "#include <stddef.h>           /* for size_t */";
-}
-
-# For each `#define HAVE_FOO 1', set def["HAVE_FOO"] = 1
-/^\#define[ \t]/ { def[$2] = 1; }
-
-END {
-  if (!def["HAVE_VASPRINTF"] || !def["HAVE_VSNPRINTF"]) {
-    print "#include <stdarg.h>";
-  }
-
-  if (!def["HAVE_SCANDIR"] || def["NEED_DECLARATION_SCANDIR"]) {
-    print "#include <sys/types.h>";
-
-    if (def["HAVE_DIRENT_H"]) {
-      print "#include <dirent.h>";
-      print "#define NAMLEN(dirent) strlen((dirent)->d_name)";
-    } else {
-      print "#define dirent direct";
-      print "#define NAMLEN(dirent) (dirent)->d_namlen";
-      
-      if (def["HAVE_SYS_NDIR_H"])
-       print "#include <sys/ndir.h>";
-      if (def["HAVE_SYS_DIR_H"])
-       print "#include <sys/dir.h>";
-      if (def["HAVE_NDIR_H"])
-       print "#include <ndir.h>";
-    }
-  }
-
-  print "";
-  print "#ifdef __cplusplus";
-  print "extern \"C\" {";
-  print "#endif /* __cplusplus */";
-
-  if (def["NEED_DECLARATION_GETHOSTNAME"]) {
-    print "";
-    print "/* Get name of current host.  */";
-    print "int gethostname(char */*name*/, int /*namelen*/);";
-  }
-
-  if (def["NEED_DECLARATION_SETREUID"]) {
-    print "";
-    print "/* Set real and effective user ID. */";
-    print "int setreuid(uid_t /*ruid*/, uid_t /*euid*/);";
-  }
-
-  if (def["NEED_DECLARATION_SETREGID"]) {
-    print "";
-    print "/* Set real and effective group ID. */";
-    print "int setregid(gid_t /*rgid*/, gid_t /*egid*/);";
-  }
-  
-  if (def["NEED_DECLARATION_GETPAGESIZE"]) {
-    print "";
-    print "/* Get system page size. */";
-    print "size_t getpagesize(void);";
-  }
-  
-  if (!def["HAVE_MEMMOVE"]) {
-    print "";
-    print "/* Copies len bytes from src to dest. */";
-    print "void * memmove (void */*dest*/, const void */*src*/, size_t /*len*/);";
-  }
-
-  if (!def["HAVE_MKSTEMP"]) {
-    print "";
-    print "/* Generate a unique temporary file name from TEMPLATE.";
-    print "   The last six characters of TEMPLATE must be "XXXXXX";";
-    print "   they are replaced with a string that makes the filename";
-    print "   unique.  Returns a file descriptor open on the file for";
-    print "   reading and writing.  */";
-    print "int mkstemp (char */*template*/);";
-  }
-  
-  if (!def["HAVE_SCANDIR"] || def["NEED_DECLARATION_SCANDIR"]) {
-    print "";
-    print "/* Scan the directory DIR, calling SELECTOR on each directory";
-    print "   entry.  Entries for which SELECTOR returns nonzero are";
-    print "   individually malloc'd, sorted using qsort with CMP, and";
-    print "   collected in a malloc'd array in *NAMELIST.  Returns the";
-    print "   number of entries selected, or -1 on error.  */";
-    print "int scandir (const char */*dir*/, struct dirent ***/*namelist*/,";
-    print "             int (*/*selector*/) (struct dirent *),";
-    print "             int (*/*cmp*/) (const void *, const void *));";
-    print "";
-    print "/* Function to compare two `struct dirent's alphabetically.  */";
-    print "int alphasort (const void */*a*/, const void */*b*/);";
-  }
-  
-  if (!def["HAVE_STRERROR"]) {
-    print "";
-    print "/* Return a string describing the meaning of the `errno' code";
-    print "   in ERRNUM.  */";
-    print "extern char *strerror (int /*errnum*/);";
-  }
-
-  if (!def["HAVE_STRCASECMP"]) {
-    print "";
-    print "/* Compare S1 and S2, ignoring case.  */";
-    print "int strcasecmp (const char */*s1*/, const char */*s2*/);";
-  }
-
-  if (!def["HAVE_STRNDUP"]) {
-    print "";
-    print "/* Return a malloc'd copy of at most N bytes of STRING.  The";
-    print "   resultant string is terminated even if no null terminator";
-    print "   appears before STRING[N].  */";
-    print "char * strndup (const char */*s*/, size_t /*n*/);";
-  }
-
-  if (!def["HAVE_STRNLEN"]) {
-    print "";
-    print "/* Find the length of STRING, but scan at most MAXLEN";
-    print "   characters.  If no '\\0' terminator is found in that many";
-    print "   characters, return MAXLEN.  */";
-    print "size_t strnlen (const char */*string*/, size_t /*maxlen*/);";
-  }
-
-  if (!def["HAVE_STRTOK_R"]) {
-    print "";
-    print "/* Divide S into tokens separated by characters in DELIM.";
-    print "   Information passed between calls are stored in SAVE_PTR.  */";
-    print "char * strtok_r (char */*s*/, const char */*delim*/,";
-    print "                 char **/*save_ptr*/);";
-  }
-
-  if (!def["HAVE_STRTOD"]) {
-    print "";
-    print "/* Convert the initial portion of the string pointed to by";
-    print "   nptr to double representation and return the converted value.";
-    print "   If endptr is not NULL, a pointer to the character after the";
-    print "   last character used in the conversion is stored in the";
-    print "   location referenced by endptr. */";
-    print "double strtod (const char */*nptr*/, char **/*endptr*/);";
-  }
-
-  if (!def["HAVE_STRTOL"]) {
-    print "";
-    print "/* Convert the initial portion of the string pointed to by";
-    print "   nptr to a long integer value according to the given base.";
-    print "   If endptr is not NULL, a pointer to the character after the";
-    print "   last character used in the conversion is stored in the";
-    print "   location referenced by endptr. */";
-    print "long int strtol (const char */*nptr*/, char **/*endptr*/, int /*base*/);";
-  }
-
-  if (!def["HAVE_STRTOUL"]) {
-    print "";
-    print "/* Convert the initial portion of the string pointed to by";
-    print "   nptr to an unsigned long integer value according to the given base.";
-    print "   If endptr is not NULL, a pointer to the character after the";
-    print "   last character used in the conversion is stored in the";
-    print "   location referenced by endptr. */";
-    print "unsigned long int strtoul (const char */*nptr*/, char **/*endptr*/,";
-    print "                          int /*base*/);";
-  }
-
-  if (!def["HAVE_VASPRINTF"]) {
-    print "";
-    print "/* Write formatted output to a string dynamically allocated with";
-    print "   `malloc'.  Store the address of the string in *PTR.  */";
-    print "int vasprintf (char **/*ptr*/, const char */*format*/,";
-    print "               va_list /*args*/);";
-    print "int asprintf (char **/*ptr*/, const char */*format*/, ...);";
-  }
-
-  if (!def["HAVE_VSNPRINTF"]) {
-    print "";
-    print "/* Maximum chars of output to write is MAXLEN.  */";
-    print "int vsnprintf (char */*str*/, size_t /*maxlen*/,";
-    print "               char */*fmt*/, va_list /*ap*/);";
-    print "int snprintf (char */*str*/, size_t /*maxlen*/,";
-    print "              char */*fmt*/, ...);";
-  }
-
-  if (!def["HAVE_REALPATH"]) {
-    print "";
-    print "/* Return the canonical absolute name of file NAME.  A canonical name";
-    print "   does not contain any `.', `..' components nor any repeated path";
-    print "   separators ('/') or symlinks.  All path components must exist.";
-    print "   If the canonical name is PATH_MAX chars or more, returns null with";
-    print "   `errno' set to ENAMETOOLONG; if the name fits in fewer than PATH_MAX";
-    print "   chars, returns the name in RESOLVED.  If the name cannot be resolved";
-    print "   and RESOLVED is non-NULL, it contains the path of the first component";
-    print "   that cannot be resolved.  If the path can be resolved, RESOLVED";
-    print "   holds the same value as the value returned.  */";
-    print "";
-    print "char *realpath (char */*path*/, char /*resolved_path*/[]);";
-  }
-
-  print "";
-  print "#ifdef __cplusplus";
-  print "}";
-  print "#endif /* __cplusplus */";
-  print "";
-  print "#endif /* GNOMESUPPORT_H */";
-}
diff --git a/support/memmove.c b/support/memmove.c
deleted file mode 100644 (file)
index 96e257e..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Wrapper to implement ANSI C's memmove using BSD's bcopy. */
-/* This function is in the public domain.  --Per Bothner. */
-
-#ifdef __STDC__
-#include <stddef.h>
-#else
-#define size_t unsigned long
-#endif
-
-void *
-memmove (s1, s2, n)
-     void *s1;
-     const void *s2;
-     size_t n;
-{
-  bcopy (s2, s1, n);
-  return s1;
-}
diff --git a/support/mkstemp.c b/support/mkstemp.c
deleted file mode 100644 (file)
index 194caf2..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Copyright (C) 1991, 1992, 1996, 1998 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 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 <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/time.h>
-
-#ifdef _LIBC
-#include <stdint.h>
-#define gettimeofday __gettimeofday
-#define set_errno(e) __set_errno(e)
-typedef guint64 big_type;
-#else
-#define set_errno(e) errno = (e)
-/* FIXME: maybe check for long long.  */
-typedef long big_type;
-#endif
-
-/* Generate a unique temporary file name from TEMPLATE.
-   The last six characters of TEMPLATE must be "XXXXXX";
-   they are replaced with a string that makes the filename unique.
-   Returns a file descriptor open on the file for reading and writing.  */
-int
-mkstemp (template)
-     char *template;
-{
-  static const char letters[]
-    = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
-  static big_type value;
-  struct timeval tv;
-  char *XXXXXX;
-  size_t len;
-  int count;
-
-  len = strlen (template);
-  if (len < 6 || strcmp (&template[len - 6], "XXXXXX"))
-    {
-      set_errno (EINVAL);
-      return -1;
-    }
-
-  /* This is where the Xs start.  */
-  XXXXXX = &template[len - 6];
-
-  /* Get some more or less random data.  */
-  gettimeofday (&tv, NULL);
-  value += ((big_type) tv.tv_usec << 16) ^ tv.tv_sec ^ getpid ();
-
-  for (count = 0; count < TMP_MAX; ++count)
-    {
-      big_type v = value;
-      int fd;
-
-      /* Fill in the random bits.  */
-      XXXXXX[0] = letters[v % 62];
-      v /= 62;
-      XXXXXX[1] = letters[v % 62];
-      v /= 62;
-      XXXXXX[2] = letters[v % 62];
-      v /= 62;
-      XXXXXX[3] = letters[v % 62];
-      v /= 62;
-      XXXXXX[4] = letters[v % 62];
-      v /= 62;
-      XXXXXX[5] = letters[v % 62];
-
-      fd = open (template, O_RDWR|O_CREAT|O_EXCL, 0600);
-      if (fd >= 0)
-       /* The file does not exist.  */
-       return fd;
-
-      /* This is a random value.  It is only necessary that the next
-        TMP_MAX values generated by adding 7777 to VALUE are different
-        with (module 2^32).  */
-      value += 7777;
-    }
-
-  /* We return the null string if we can't find a unique file name.  */
-  template[0] = '\0';
-  return -1;
-}
diff --git a/support/popt-gnome.h b/support/popt-gnome.h
deleted file mode 100644 (file)
index 1f7aa90..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#ifndef H_POPT
-#define H_POPT
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdio.h>                     /* for FILE * */
-
-#define POPT_OPTION_DEPTH      10
-
-#define POPT_ARG_NONE          0
-#define POPT_ARG_STRING                1
-#define POPT_ARG_INT           2
-#define POPT_ARG_LONG          3
-#define POPT_ARG_INCLUDE_TABLE 4       /* arg points to table */
-#define POPT_ARG_CALLBACK      5       /* table-wide callback... must be
-                                          set first in table; arg points
-                                          to callback, descrip points to
-                                          callback data to pass */
-#define POPT_ARG_INTL_DOMAIN    6       /* set the translation domain
-                                          for this table and any
-                                          included tables; arg points
-                                          to the domain string */
-#define POPT_ARG_VAL           7       /* arg should take value val */
-#define POPT_ARG_MASK          0x0000FFFF
-#define POPT_ARGFLAG_ONEDASH   0x80000000  /* allow -longoption */
-#define POPT_ARGFLAG_DOC_HIDDEN 0x40000000  /* don't show in help/usage */
-#define POPT_CBFLAG_PRE                0x80000000  /* call the callback before parse */
-#define POPT_CBFLAG_POST       0x40000000  /* call the callback after parse */
-#define POPT_CBFLAG_INC_DATA   0x20000000  /* use data from the include line,
-                                              not the subtable */
-
-#define POPT_ERROR_NOARG       -10
-#define POPT_ERROR_BADOPT      -11
-#define POPT_ERROR_OPTSTOODEEP -13
-#define POPT_ERROR_BADQUOTE    -15     /* only from poptParseArgString() */
-#define POPT_ERROR_ERRNO       -16     /* only from poptParseArgString() */
-#define POPT_ERROR_BADNUMBER   -17
-#define POPT_ERROR_OVERFLOW    -18
-
-/* poptBadOption() flags */
-#define POPT_BADOPTION_NOALIAS  (1 << 0)  /* don't go into an alias */
-
-/* poptGetContext() flags */
-#define POPT_CONTEXT_NO_EXEC   (1 << 0)  /* ignore exec expansions */
-#define POPT_CONTEXT_KEEP_FIRST        (1 << 1)  /* pay attention to argv[0] */
-#define POPT_CONTEXT_POSIXMEHARDER (1 << 2) /* options can't follow args */
-
-struct poptOption {
-    /*@observer@*/ /*@null@*/ const char * longName;   /* may be NULL */
-    char shortName;            /* may be '\0' */
-    int argInfo;
-    /*@shared@*/ /*@null@*/ void * arg;                /* depends on argInfo */
-    int val;                   /* 0 means don't return, just update flag */
-    /*@shared@*/ /*@null@*/ const char * descrip;      /* description for autohelp -- may be NULL */
-    /*@shared@*/ /*@null@*/ const char * argDescrip;   /* argument description for autohelp */
-};
-
-struct poptAlias {
-    /*@owned@*/ /*@null@*/ const char * longName;      /* may be NULL */
-    char shortName;            /* may be '\0' */
-    int argc;
-    /*@owned@*/ const char ** argv;            /* must be free()able */
-};
-
-extern struct poptOption poptHelpOptions[];
-#define POPT_AUTOHELP { NULL, '\0', POPT_ARG_INCLUDE_TABLE, poptHelpOptions, \
-                       0, "Help options", NULL },
-
-typedef struct poptContext_s * poptContext;
-#ifndef __cplusplus
-typedef struct poptOption * poptOption;
-#endif
-
-enum poptCallbackReason { POPT_CALLBACK_REASON_PRE,
-                         POPT_CALLBACK_REASON_POST,
-                         POPT_CALLBACK_REASON_OPTION };
-typedef void (*poptCallbackType)(poptContext con,
-                                enum poptCallbackReason reason,
-                                const struct poptOption * opt,
-                                const char * arg, const void * data);
-
-/*@only@*/ poptContext poptGetContext(/*@keep@*/ const char * name,
-               int argc, /*@keep@*/ const char ** argv,
-               /*@keep@*/ const struct poptOption * options, int flags);
-void poptResetContext(poptContext con);
-
-/* returns 'val' element, -1 on last item, POPT_ERROR_* on error */
-int poptGetNextOpt(poptContext con);
-/* returns NULL if no argument is available */
-/*@observer@*/ /*@null@*/ const char * poptGetOptArg(poptContext con);
-/* returns NULL if no more options are available */
-/*@observer@*/ /*@null@*/ const char * poptGetArg(poptContext con);
-/*@observer@*/ /*@null@*/ const char * poptPeekArg(poptContext con);
-/*@observer@*/ /*@null@*/ const char ** poptGetArgs(poptContext con);
-/* returns the option which caused the most recent error */
-/*@observer@*/ const char * poptBadOption(poptContext con, int flags);
-void poptFreeContext( /*@only@*/ poptContext con);
-int poptStuffArgs(poptContext con, /*@keep@*/ const char ** argv);
-int poptAddAlias(poptContext con, struct poptAlias alias, int flags);
-int poptReadConfigFile(poptContext con, const char * fn);
-/* like above, but reads /etc/popt and $HOME/.popt along with environment
-   vars */
-int poptReadDefaultConfig(poptContext con, int useEnv);
-/* argv should be freed -- this allows ', ", and \ quoting, but ' is treated
-   the same as " and both may include \ quotes */
-int poptDupArgv(int argc, const char **argv,
-               /*@out@*/ int * argcPtr, /*@out@*/ const char *** argvPtr);
-int poptParseArgvString(const char * s,
-               /*@out@*/ int * argcPtr, /*@out@*/ const char *** argvPtr);
-/*@observer@*/ const char *const poptStrerror(const int error);
-void poptSetExecPath(poptContext con, const char * path, int allowAbsolute);
-void poptPrintHelp(poptContext con, FILE * f, int flags);
-void poptPrintUsage(poptContext con, FILE * f, int flags);
-void poptSetOtherOptionHelp(poptContext con, const char * text);
-/*@observer@*/ const char * poptGetInvocationName(poptContext con);
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif
diff --git a/support/popt.c b/support/popt.c
deleted file mode 100644 (file)
index 783d2c1..0000000
+++ /dev/null
@@ -1,711 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#include "system.h"
-#include "findme.h"
-#include "poptint.h"
-
-#ifndef HAVE_STRERROR
-static char * strerror(int errno) {
-    extern int sys_nerr;
-    extern char * sys_errlist[];
-
-    if ((0 <= errno) && (errno < sys_nerr))
-       return sys_errlist[errno];
-    else
-       return POPT_("unknown errno");
-}
-#endif
-
-void poptSetExecPath(poptContext con, const char * path, int allowAbsolute) {
-    if (con->execPath) xfree(con->execPath);
-    con->execPath = xstrdup(path);
-    con->execAbsolute = allowAbsolute;
-}
-
-static void invokeCallbacks(poptContext con, const struct poptOption * table,
-                           int post) {
-    const struct poptOption * opt = table;
-    poptCallbackType cb;
-
-    while (opt->longName || opt->shortName || opt->arg) {
-       if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE) {
-           invokeCallbacks(con, opt->arg, post);
-       } else if (((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_CALLBACK) &&
-                  ((!post && (opt->argInfo & POPT_CBFLAG_PRE)) ||
-                   ( post && (opt->argInfo & POPT_CBFLAG_POST)))) {
-           cb = (poptCallbackType)opt->arg;
-           cb(con, post ? POPT_CALLBACK_REASON_POST : POPT_CALLBACK_REASON_PRE,
-              NULL, NULL, opt->descrip);
-       }
-       opt++;
-    }
-}
-
-poptContext poptGetContext(const char * name, int argc, const char ** argv,
-                          const struct poptOption * options, int flags) {
-    poptContext con = calloc(1, sizeof *con);
-
-    con->os = con->optionStack;
-    con->os->argc = argc;
-    con->os->argv = argv;
-    con->os->argb = NULL;
-
-    if (!(flags & POPT_CONTEXT_KEEP_FIRST))
-       con->os->next = 1;                      /* skip argv[0] */
-
-    con->leftovers = calloc( (argc + 1), sizeof(char *) );
-    con->options = options;
-    con->aliases = NULL;
-    con->numAliases = 0;
-    con->flags = flags;
-    con->execs = NULL;
-    con->numExecs = 0;
-    con->finalArgvAlloced = argc * 2;
-    con->finalArgv = calloc( con->finalArgvAlloced, sizeof(*con->finalArgv) );
-    con->execAbsolute = 1;
-
-    if (getenv("POSIXLY_CORRECT") || getenv("POSIX_ME_HARDER"))
-       con->flags |= POPT_CONTEXT_POSIXMEHARDER;
-
-    if (name)
-       con->appName = strcpy(malloc(strlen(name) + 1), name);
-
-    invokeCallbacks(con, con->options, 0);
-
-    return con;
-}
-
-static void cleanOSE(struct optionStackEntry *os)
-{
-    if (os->nextArg) {
-       xfree(os->nextArg);
-       os->nextArg = NULL;
-    }
-    if (os->argv) {
-       xfree(os->argv);
-       os->argv = NULL;
-    }
-    if (os->argb) {
-       PBM_FREE(os->argb);
-       os->argb = NULL;
-    }
-}
-
-void poptResetContext(poptContext con) {
-    int i;
-
-    while (con->os > con->optionStack) {
-       cleanOSE(con->os--);
-    }
-    if (con->os->argb) {
-       PBM_FREE(con->os->argb);
-       con->os->argb = NULL;
-    }
-    con->os->currAlias = NULL;
-    con->os->nextCharArg = NULL;
-    con->os->nextArg = NULL;
-    con->os->next = 1;                 /* skip argv[0] */
-
-    con->numLeftovers = 0;
-    con->nextLeftover = 0;
-    con->restLeftover = 0;
-    con->doExec = NULL;
-
-    for (i = 0; i < con->finalArgvCount; i++) {
-       if (con->finalArgv[i]) {
-           xfree(con->finalArgv[i]);
-           con->finalArgv[i] = NULL;
-       }
-    }
-
-    con->finalArgvCount = 0;
-}
-
-/* Only one of longName, shortName may be set at a time */
-static int handleExec(poptContext con, char * longName, char shortName) {
-    int i;
-
-    i = con->numExecs - 1;
-    if (longName) {
-       while (i >= 0 && (!con->execs[i].longName ||
-           strcmp(con->execs[i].longName, longName))) i--;
-    } else {
-       while (i >= 0 &&
-           con->execs[i].shortName != shortName) i--;
-    }
-
-    if (i < 0) return 0;
-
-    if (con->flags & POPT_CONTEXT_NO_EXEC)
-       return 1;
-
-    if (con->doExec == NULL) {
-       con->doExec = con->execs + i;
-       return 1;
-    }
-
-    /* We already have an exec to do; remember this option for next
-       time 'round */
-    if ((con->finalArgvCount + 1) >= (con->finalArgvAlloced)) {
-       con->finalArgvAlloced += 10;
-       con->finalArgv = realloc(con->finalArgv,
-                       sizeof(*con->finalArgv) * con->finalArgvAlloced);
-    }
-
-    i = con->finalArgvCount++;
-    {  char *s  = malloc((longName ? strlen(longName) : 0) + 3);
-       if (longName)
-           sprintf(s, "--%s", longName);
-       else
-           sprintf(s, "-%c", shortName);
-       con->finalArgv[i] = s;
-    }
-
-    return 1;
-}
-
-/* Only one of longName, shortName may be set at a time */
-static int handleAlias(poptContext con, const char * longName, char shortName,
-                      /*@keep@*/ const char * nextCharArg) {
-    int i;
-
-    if (con->os->currAlias && con->os->currAlias->longName && longName &&
-       !strcmp(con->os->currAlias->longName, longName))
-       return 0;
-    if (con->os->currAlias && shortName &&
-           shortName == con->os->currAlias->shortName)
-       return 0;
-
-    i = con->numAliases - 1;
-    if (longName) {
-       while (i >= 0 && (!con->aliases[i].longName ||
-           strcmp(con->aliases[i].longName, longName))) i--;
-    } else {
-       while (i >= 0 &&
-           con->aliases[i].shortName != shortName) i--;
-    }
-
-    if (i < 0) return 0;
-
-    if ((con->os - con->optionStack + 1) == POPT_OPTION_DEPTH)
-       return POPT_ERROR_OPTSTOODEEP;
-
-    if (nextCharArg && *nextCharArg)
-       con->os->nextCharArg = nextCharArg;
-
-    con->os++;
-    con->os->next = 0;
-    con->os->stuffed = 0;
-    con->os->nextArg = NULL;
-    con->os->nextCharArg = NULL;
-    con->os->currAlias = con->aliases + i;
-    poptDupArgv(con->os->currAlias->argc, con->os->currAlias->argv,
-               &con->os->argc, &con->os->argv);
-    con->os->argb = NULL;
-
-    return 1;
-}
-
-static void execCommand(poptContext con) {
-    const char ** argv;
-    int pos = 0;
-    const char * script = con->doExec->script;
-
-    argv = malloc(sizeof(*argv) *
-                       (6 + con->numLeftovers + con->finalArgvCount));
-
-    if (!con->execAbsolute && strchr(script, '/')) return;
-
-    if (!strchr(script, '/') && con->execPath) {
-       char *s = alloca(strlen(con->execPath) + strlen(script) + 2);
-       sprintf(s, "%s/%s", con->execPath, script);
-       argv[pos] = s;
-    } else {
-       argv[pos] = script;
-    }
-    pos++;
-
-    argv[pos] = findProgramPath(con->os->argv[0]);
-    if (argv[pos]) pos++;
-    argv[pos++] = ";";
-
-    memcpy(argv + pos, con->finalArgv, sizeof(*argv) * con->finalArgvCount);
-    pos += con->finalArgvCount;
-
-    if (con->numLeftovers) {
-       argv[pos++] = "--";
-       memcpy(argv + pos, con->leftovers, sizeof(*argv) * con->numLeftovers);
-       pos += con->numLeftovers;
-    }
-
-    argv[pos++] = NULL;
-
-#ifdef __hpux
-    setresuid(getuid(), getuid(),-1);
-#else
-/*
- * XXX " ... on BSD systems setuid() should be preferred over setreuid()"
- * XXX         sez' Timur Bakeyev <mc@bat.ru>
- * XXX from Norbert Warmuth <nwarmuth@privat.circular.de>
- */
-#if defined(HAVE_SETUID)
-    setuid(getuid());
-#elif defined (HAVE_SETREUID)
-    setreuid(getuid(), getuid()); /*hlauer: not portable to hpux9.01 */
-#else
-    ; /* Can't drop privileges */
-#endif
-#endif
-
-    execvp(argv[0], (char *const *)argv);
-}
-
-/*@observer@*/ static const struct poptOption *
-findOption(const struct poptOption * table, const char * longName,
-    char shortName,
-    /*@out@*/ poptCallbackType * callback, /*@out@*/ const void ** callbackData,
-    int singleDash)
-{
-    const struct poptOption * opt = table;
-    const struct poptOption * opt2;
-    const struct poptOption * cb = NULL;
-
-    /* This happens when a single - is given */
-    if (singleDash && !shortName && !*longName)
-       shortName = '-';
-
-    while (opt->longName || opt->shortName || opt->arg) {
-       if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE) {
-           opt2 = findOption(opt->arg, longName, shortName, callback,
-                             callbackData, singleDash);
-           if (opt2) {
-               if (*callback && !*callbackData)
-                   *callbackData = opt->descrip;
-               return opt2;
-           }
-       } else if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_CALLBACK) {
-           cb = opt;
-       } else if (longName && opt->longName &&
-                  (!singleDash || (opt->argInfo & POPT_ARGFLAG_ONEDASH)) &&
-                  !strcmp(longName, opt->longName)) {
-           break;
-       } else if (shortName && shortName == opt->shortName) {
-           break;
-       }
-       opt++;
-    }
-
-    if (!opt->longName && !opt->shortName) return NULL;
-    *callbackData = NULL;
-    *callback = NULL;
-    if (cb) {
-       *callback = (poptCallbackType)cb->arg;
-       if (!(cb->argInfo & POPT_CBFLAG_INC_DATA))
-           *callbackData = cb->descrip;
-    }
-
-    return opt;
-}
-
-static const char *findNextArg(poptContext con, unsigned argx, int delete)
-{
-    struct optionStackEntry * os = con->os;
-    const char * arg;
-
-    do {
-       int i;
-       arg = NULL;
-       while (os->next == os->argc && os > con->optionStack) os--;
-       if (os->next == os->argc && os == con->optionStack) break;
-       for (i = os->next; i < os->argc; i++) {
-           if (os->argb && PBM_ISSET(i, os->argb)) continue;
-           if (*os->argv[i] == '-') continue;
-           if (--argx > 0) continue;
-           arg = os->argv[i];
-           if (delete) {
-               if (os->argb == NULL) os->argb = PBM_ALLOC(os->argc);
-               PBM_SET(i, os->argb);
-           }
-           break;
-       }
-       if (os > con->optionStack) os--;
-    } while (arg == NULL);
-    return arg;
-}
-
-static /*@only@*/ const char * expandNextArg(poptContext con, const char * s)
-{
-    const char *a;
-    size_t alen;
-    char *t, *te;
-    size_t tn = strlen(s) + 1;
-    char c;
-
-    te = t = malloc(tn);;
-    while ((c = *s++) != '\0') {
-       switch (c) {
-       case '\\':      /* escape */
-           c = *s++;
-           break;
-       case '!':
-           if (!(s[0] == '#' && s[1] == ':' && s[2] == '+'))
-               break;
-           if ((a = findNextArg(con, 1, 1)) == NULL)
-               break;
-           s += 3;
-
-           alen = strlen(a);
-           tn += alen;
-           *te = '\0';
-           t = realloc(t, tn);
-           te = t + strlen(t);
-           strncpy(te, a, alen); te += alen;
-           continue;
-           /*@notreached@*/ break;
-       default:
-           break;
-       }
-       *te++ = c;
-    }
-    *te = '\0';
-    t = realloc(t, strlen(t)); /* XXX memory leak, hard to plug */
-    return t;
-}
-
-/* returns 'val' element, -1 on last item, POPT_ERROR_* on error */
-int poptGetNextOpt(poptContext con)
-{
-    const struct poptOption * opt = NULL;
-    int done = 0;
-
-    while (!done) {
-       const char * origOptString = NULL;
-       poptCallbackType cb = NULL;
-       const void * cbData = NULL;
-       const char * longArg = NULL;
-
-       while (!con->os->nextCharArg && con->os->next == con->os->argc
-               && con->os > con->optionStack) {
-           cleanOSE(con->os--);
-       }
-       if (!con->os->nextCharArg && con->os->next == con->os->argc) {
-           invokeCallbacks(con, con->options, 1);
-           if (con->doExec) execCommand(con);
-           return -1;
-       }
-
-       /* Process next long option */
-       if (!con->os->nextCharArg) {
-           char * localOptString, * optString;
-
-           if (con->os->argb && PBM_ISSET(con->os->next, con->os->argb)) {
-               con->os->next++;
-               continue;
-           }
-           origOptString = con->os->argv[con->os->next++];
-
-           if (con->restLeftover || *origOptString != '-') {
-               con->leftovers[con->numLeftovers++] = origOptString;
-               if (con->flags & POPT_CONTEXT_POSIXMEHARDER)
-                   con->restLeftover = 1;
-               continue;
-           }
-
-           /* Make a copy we can hack at */
-           localOptString = optString =
-                       strcpy(alloca(strlen(origOptString) + 1),
-                       origOptString);
-
-           if (!optString[0])
-               return POPT_ERROR_BADOPT;
-
-           if (optString[1] == '-' && !optString[2]) {
-               con->restLeftover = 1;
-               continue;
-           } else {
-               char *oe;
-               int singleDash;
-
-               optString++;
-               if (*optString == '-')
-                   singleDash = 0, optString++;
-               else
-                   singleDash = 1;
-
-               /* XXX aliases with arg substitution need "--alias=arg" */
-               if (handleAlias(con, optString, '\0', NULL))
-                   continue;
-               if (handleExec(con, optString, '\0'))
-                   continue;
-
-               /* Check for "--long=arg" option. */
-               for (oe = optString; *oe && *oe != '='; oe++)
-                   ;
-               if (*oe == '=') {
-                   *oe++ = '\0';
-                   /* XXX longArg is mapped back to persistent storage. */
-                   longArg = origOptString + (oe - localOptString);
-               }
-
-               opt = findOption(con->options, optString, '\0', &cb, &cbData,
-                                singleDash);
-               if (!opt && !singleDash)
-                   return POPT_ERROR_BADOPT;
-           }
-
-           if (!opt)
-               con->os->nextCharArg = origOptString + 1;
-       }
-
-       /* Process next short option */
-       if (con->os->nextCharArg) {
-           origOptString = con->os->nextCharArg;
-
-           con->os->nextCharArg = NULL;
-
-           if (handleAlias(con, NULL, *origOptString,
-                           origOptString + 1)) {
-               origOptString++;
-               continue;
-           }
-           if (handleExec(con, NULL, *origOptString))
-               continue;
-
-           opt = findOption(con->options, NULL, *origOptString, &cb,
-                            &cbData, 0);
-           if (!opt)
-               return POPT_ERROR_BADOPT;
-
-           origOptString++;
-           if (*origOptString)
-               con->os->nextCharArg = origOptString;
-       }
-
-       if (opt->arg && (opt->argInfo & POPT_ARG_MASK) == POPT_ARG_NONE) {
-           *((int *)opt->arg) = 1;
-       } else if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_VAL) {
-           if (opt->arg)
-               *((int *) opt->arg) = opt->val;
-       } else if ((opt->argInfo & POPT_ARG_MASK) != POPT_ARG_NONE) {
-           if (con->os->nextArg) {
-               xfree(con->os->nextArg);
-               con->os->nextArg = NULL;
-           }
-           if (longArg) {
-               con->os->nextArg = expandNextArg(con, longArg);
-           } else if (con->os->nextCharArg) {
-               con->os->nextArg = expandNextArg(con, con->os->nextCharArg);
-               con->os->nextCharArg = NULL;
-           } else {
-               while (con->os->next == con->os->argc &&
-                      con->os > con->optionStack) {
-                   cleanOSE(con->os--);
-               }
-               if (con->os->next == con->os->argc)
-                   return POPT_ERROR_NOARG;
-
-               con->os->nextArg = expandNextArg(con, con->os->argv[con->os->next++]);
-           }
-
-           if (opt->arg) {
-               long aLong;
-               char *end;
-
-               switch (opt->argInfo & POPT_ARG_MASK) {
-                 case POPT_ARG_STRING:
-                   /* XXX memory leak, hard to plug */
-                   *((const char **) opt->arg) = xstrdup(con->os->nextArg);
-                   break;
-
-                 case POPT_ARG_INT:
-                 case POPT_ARG_LONG:
-                   aLong = strtol(con->os->nextArg, &end, 0);
-                   if (!(end && *end == '\0'))
-                       return POPT_ERROR_BADNUMBER;
-
-                   if (aLong == LONG_MIN || aLong == LONG_MAX)
-                       return POPT_ERROR_OVERFLOW;
-                   if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_LONG) {
-                       *((long *) opt->arg) = aLong;
-                   } else {
-                       if (aLong > INT_MAX || aLong < INT_MIN)
-                           return POPT_ERROR_OVERFLOW;
-                       *((int *) opt->arg) = aLong;
-                   }
-                   break;
-
-                 default:
-                   fprintf(stdout, POPT_("option type (%d) not implemented in popt\n"),
-                     opt->argInfo & POPT_ARG_MASK);
-                   exit(EXIT_FAILURE);
-               }
-           }
-       }
-
-       if (cb)
-           cb(con, POPT_CALLBACK_REASON_OPTION, opt, con->os->nextArg, cbData);
-       else if (opt->val && ((opt->argInfo & POPT_ARG_MASK) != POPT_ARG_VAL))
-           done = 1;
-
-       if ((con->finalArgvCount + 2) >= (con->finalArgvAlloced)) {
-           con->finalArgvAlloced += 10;
-           con->finalArgv = realloc(con->finalArgv,
-                           sizeof(*con->finalArgv) * con->finalArgvAlloced);
-       }
-
-       {    char *s = malloc((opt->longName ? strlen(opt->longName) : 0) + 3);
-           if (opt->longName)
-               sprintf(s, "--%s", opt->longName);
-           else
-               sprintf(s, "-%c", opt->shortName);
-           con->finalArgv[con->finalArgvCount++] = s;
-       }
-
-       if (opt->arg && (opt->argInfo & POPT_ARG_MASK) != POPT_ARG_NONE
-                    && (opt->argInfo & POPT_ARG_MASK) != POPT_ARG_VAL) {
-           con->finalArgv[con->finalArgvCount++] = xstrdup(con->os->nextArg);
-       }
-    }
-
-    return opt->val;
-}
-
-const char * poptGetOptArg(poptContext con) {
-    const char * ret = con->os->nextArg;
-    con->os->nextArg = NULL;
-    return ret;
-}
-
-const char * poptGetArg(poptContext con) {
-    if (con->numLeftovers == con->nextLeftover) return NULL;
-    return con->leftovers[con->nextLeftover++];
-}
-
-const char * poptPeekArg(poptContext con) {
-    if (con->numLeftovers == con->nextLeftover) return NULL;
-    return con->leftovers[con->nextLeftover];
-}
-
-const char ** poptGetArgs(poptContext con) {
-    if (con->numLeftovers == con->nextLeftover) return NULL;
-
-    /* some apps like [like RPM ;-) ] need this NULL terminated */
-    con->leftovers[con->numLeftovers] = NULL;
-
-    return (con->leftovers + con->nextLeftover);
-}
-
-void poptFreeContext(poptContext con) {
-    int i;
-
-    poptResetContext(con);
-    if (con->os->argb) free(con->os->argb);
-
-    for (i = 0; i < con->numAliases; i++) {
-       if (con->aliases[i].longName) xfree(con->aliases[i].longName);
-       free(con->aliases[i].argv);
-    }
-
-    for (i = 0; i < con->numExecs; i++) {
-       if (con->execs[i].longName) xfree(con->execs[i].longName);
-       xfree(con->execs[i].script);
-    }
-    if (con->execs) xfree(con->execs);
-
-    free(con->leftovers);
-    free(con->finalArgv);
-    if (con->appName) xfree(con->appName);
-    if (con->aliases) free(con->aliases);
-    if (con->otherHelp) xfree(con->otherHelp);
-    if (con->execPath) xfree(con->execPath);
-    free(con);
-}
-
-int poptAddAlias(poptContext con, struct poptAlias newAlias,
-               /*@unused@*/ int flags)
-{
-    int aliasNum = con->numAliases++;
-    struct poptAlias * alias;
-
-    /* SunOS won't realloc(NULL, ...) */
-    if (!con->aliases)
-       con->aliases = malloc(sizeof(newAlias) * con->numAliases);
-    else
-       con->aliases = realloc(con->aliases,
-                              sizeof(newAlias) * con->numAliases);
-    alias = con->aliases + aliasNum;
-
-    alias->longName = (newAlias.longName)
-       ? strcpy(malloc(strlen(newAlias.longName) + 1), newAlias.longName)
-       : NULL;
-    alias->shortName = newAlias.shortName;
-    alias->argc = newAlias.argc;
-    alias->argv = newAlias.argv;
-
-    return 0;
-}
-
-const char * poptBadOption(poptContext con, int flags) {
-    struct optionStackEntry * os;
-
-    if (flags & POPT_BADOPTION_NOALIAS)
-       os = con->optionStack;
-    else
-       os = con->os;
-
-    return os->argv[os->next - 1];
-}
-
-#define POPT_ERROR_NOARG       -10
-#define POPT_ERROR_BADOPT      -11
-#define POPT_ERROR_OPTSTOODEEP -13
-#define POPT_ERROR_BADQUOTE    -15     /* only from poptParseArgString() */
-#define POPT_ERROR_ERRNO       -16     /* only from poptParseArgString() */
-
-const char *const poptStrerror(const int error) {
-    switch (error) {
-      case POPT_ERROR_NOARG:
-       return POPT_("missing argument");
-      case POPT_ERROR_BADOPT:
-       return POPT_("unknown option");
-      case POPT_ERROR_OPTSTOODEEP:
-       return POPT_("aliases nested too deeply");
-      case POPT_ERROR_BADQUOTE:
-       return POPT_("error in paramter quoting");
-      case POPT_ERROR_BADNUMBER:
-       return POPT_("invalid numeric value");
-      case POPT_ERROR_OVERFLOW:
-       return POPT_("number too large or too small");
-      case POPT_ERROR_ERRNO:
-       return strerror(errno);
-      default:
-       return POPT_("unknown error");
-    }
-}
-
-int poptStuffArgs(poptContext con, const char ** argv) {
-    int argc;
-
-    if ((con->os - con->optionStack) == POPT_OPTION_DEPTH)
-       return POPT_ERROR_OPTSTOODEEP;
-
-    for (argc = 0; argv[argc]; argc++)
-       ;
-
-    con->os++;
-    con->os->next = 0;
-    con->os->nextArg = NULL;
-    con->os->nextCharArg = NULL;
-    con->os->currAlias = NULL;
-    poptDupArgv(argc, argv, &con->os->argc, &con->os->argv);
-    con->os->argb = NULL;
-    con->os->stuffed = 1;
-
-    return 0;
-}
-
-const char * poptGetInvocationName(poptContext con) {
-    return con->os->argv[0];
-}
diff --git a/support/poptconfig.c b/support/poptconfig.c
deleted file mode 100644 (file)
index 094d588..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#include "system.h"
-#include "poptint.h"
-
-static void configLine(poptContext con, char * line) {
-    int nameLength = strlen(con->appName);
-    char * opt;
-    struct poptAlias alias;
-    char * entryType;
-    char * longName = NULL;
-    char shortName = '\0';
-
-    if (strncmp(line, con->appName, nameLength)) return;
-    line += nameLength;
-    if (!*line || !isspace(*line)) return;
-    while (*line && isspace(*line)) line++;
-    entryType = line;
-
-    while (!*line || !isspace(*line)) line++;
-    *line++ = '\0';
-    while (*line && isspace(*line)) line++;
-    if (!*line) return;
-    opt = line;
-
-    while (!*line || !isspace(*line)) line++;
-    *line++ = '\0';
-    while (*line && isspace(*line)) line++;
-    if (!*line) return;
-
-    if (opt[0] == '-' && opt[1] == '-')
-       longName = opt + 2;
-    else if (opt[0] == '-' && !opt[2])
-       shortName = opt[1];
-
-    if (!strcmp(entryType, "alias")) {
-       if (poptParseArgvString(line, &alias.argc, &alias.argv)) return;
-       alias.longName = longName, alias.shortName = shortName;
-       poptAddAlias(con, alias, 0);
-    } else if (!strcmp(entryType, "exec")) {
-       con->execs = realloc(con->execs,
-                               sizeof(*con->execs) * (con->numExecs + 1));
-       if (longName)
-           con->execs[con->numExecs].longName = xstrdup(longName);
-       else
-           con->execs[con->numExecs].longName = NULL;
-
-       con->execs[con->numExecs].shortName = shortName;
-       con->execs[con->numExecs].script = xstrdup(line);
-
-       con->numExecs++;
-    }
-}
-
-int poptReadConfigFile(poptContext con, const char * fn) {
-    char * file, * chptr, * end;
-    char * buf, * dst;
-    int fd, rc;
-    int fileLength;
-
-    fd = open(fn, O_RDONLY);
-    if (fd < 0) {
-       if (errno == ENOENT)
-           return 0;
-       else
-           return POPT_ERROR_ERRNO;
-    }
-
-    fileLength = lseek(fd, 0, SEEK_END);
-    (void) lseek(fd, 0, 0);
-
-    file = alloca(fileLength + 1);
-    if (read(fd, file, fileLength) != fileLength) {
-       rc = errno;
-       close(fd);
-       errno = rc;
-       return POPT_ERROR_ERRNO;
-    }
-    close(fd);
-
-    dst = buf = alloca(fileLength + 1);
-
-    chptr = file;
-    end = (file + fileLength);
-    while (chptr < end) {
-       switch (*chptr) {
-         case '\n':
-           *dst = '\0';
-           dst = buf;
-           while (*dst && isspace(*dst)) dst++;
-           if (*dst && *dst != '#') {
-               configLine(con, dst);
-           }
-           chptr++;
-           break;
-         case '\\':
-           *dst++ = *chptr++;
-           if (chptr < end) {
-               if (*chptr == '\n')
-                   dst--, chptr++;
-                   /* \ at the end of a line does not insert a \n */
-               else
-                   *dst++ = *chptr++;
-           }
-           break;
-         default:
-           *dst++ = *chptr++;
-           break;
-       }
-    }
-
-    return 0;
-}
-
-int poptReadDefaultConfig(poptContext con, /*@unused@*/ int useEnv) {
-    char * fn, * home;
-    int rc;
-
-    if (!con->appName) return 0;
-
-    rc = poptReadConfigFile(con, "/etc/popt");
-    if (rc) return rc;
-    if (getuid() != geteuid()) return 0;
-
-    if ((home = getenv("HOME"))) {
-       fn = alloca(strlen(home) + 20);
-       strcpy(fn, home);
-       strcat(fn, "/.popt");
-       rc = poptReadConfigFile(con, fn);
-       if (rc) return rc;
-    }
-
-    return 0;
-}
-
diff --git a/support/popthelp.c b/support/popthelp.c
deleted file mode 100644 (file)
index dae3d94..0000000
+++ /dev/null
@@ -1,301 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
-
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#include "system.h"
-#include "poptint.h"
-
-static void displayArgs(poptContext con,
-               /*@unused@*/ enum poptCallbackReason foo,
-               struct poptOption * key,
-               /*@unused@*/ const char * arg, /*@unused@*/ void * data) {
-    if (key->shortName== '?')
-       poptPrintHelp(con, stdout, 0);
-    else
-       poptPrintUsage(con, stdout, 0);
-    exit(0);
-}
-
-struct poptOption poptHelpOptions[] = {
-    { NULL, '\0', POPT_ARG_CALLBACK, (void *)&displayArgs, '\0', NULL, NULL },
-    { "help", '?', 0, NULL, '?', N_("Show this help message"), NULL },
-    { "usage", '\0', 0, NULL, 'u', N_("Display brief usage message"), NULL },
-    { NULL, '\0', 0, NULL, 0, NULL, NULL }
-} ;
-
-
-/*@observer@*/ /*@null@*/ static const char *const
-getTableTranslationDomain(const struct poptOption *table)
-{
-  const struct poptOption *opt;
-
-  for(opt = table;
-      opt->longName || opt->shortName || opt->arg;
-      opt++) {
-    if(opt->argInfo == POPT_ARG_INTL_DOMAIN)
-      return opt->arg;
-  }
-
-  return NULL;
-}
-
-/*@observer@*/ /*@null@*/ static const char *const
-getArgDescrip(const struct poptOption * opt, const char *translation_domain)
-{
-    if (!(opt->argInfo & POPT_ARG_MASK)) return NULL;
-
-    if (opt == (poptHelpOptions + 1) || opt == (poptHelpOptions + 2))
-       if (opt->argDescrip) return POPT_(opt->argDescrip);
-
-    if (opt->argDescrip) return D_(translation_domain, opt->argDescrip);
-    return POPT_("ARG");
-}
-
-static void singleOptionHelp(FILE * f, int maxLeftCol,
-                            const struct poptOption * opt,
-                            const char *translation_domain) {
-    int indentLength = maxLeftCol + 5;
-    int lineLength = 79 - indentLength;
-    const char * help = D_(translation_domain, opt->descrip);
-    int helpLength;
-    const char * ch;
-    char format[10];
-    char * left;
-    const char * argDescrip = getArgDescrip(opt, translation_domain);
-
-    left = malloc(maxLeftCol + 1);
-    *left = '\0';
-
-    if (opt->longName && opt->shortName)
-       sprintf(left, "-%c, --%s", opt->shortName, opt->longName);
-    else if (opt->shortName)
-       sprintf(left, "-%c", opt->shortName);
-    else if (opt->longName)
-       sprintf(left, "--%s", opt->longName);
-    if (!*left) return ;
-    if (argDescrip) {
-       strcat(left, "=");
-       strcat(left, argDescrip);
-    }
-
-    if (help)
-       fprintf(f,"  %-*s   ", maxLeftCol, left);
-    else {
-       fprintf(f,"  %s\n", left);
-       goto out;
-    }
-
-    helpLength = strlen(help);
-    while (helpLength > lineLength) {
-       ch = help + lineLength - 1;
-       while (ch > help && !isspace(*ch)) ch--;
-       if (ch == help) break;          /* give up */
-       while (ch > (help + 1) && isspace(*ch)) ch--;
-       ch++;
-
-       sprintf(format, "%%.%ds\n%%%ds", (int) (ch - help), indentLength);
-       fprintf(f, format, help, " ");
-       help = ch;
-       while (isspace(*help) && *help) help++;
-       helpLength = strlen(help);
-    }
-
-    if (helpLength) fprintf(f, "%s\n", help);
-
-out:
-    free(left);
-}
-
-static int maxArgWidth(const struct poptOption * opt,
-                      const char * translation_domain) {
-    int max = 0;
-    int this;
-    const char * s;
-
-    while (opt->longName || opt->shortName || opt->arg) {
-       if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE) {
-           this = maxArgWidth(opt->arg, translation_domain);
-           if (this > max) max = this;
-       } else if (!(opt->argInfo & POPT_ARGFLAG_DOC_HIDDEN)) {
-           this = opt->shortName ? 2 : 0;
-           if (opt->longName) {
-               if (this) this += 2;
-               this += strlen(opt->longName) + 2;
-           }
-
-           s = getArgDescrip(opt, translation_domain);
-           if (s)
-               this += strlen(s) + 1;
-           if (this > max) max = this;
-       }
-
-       opt++;
-    }
-
-    return max;
-}
-
-static void singleTableHelp(FILE * f, const struct poptOption * table,
-                           int left,
-                           const char *translation_domain) {
-    const struct poptOption * opt;
-    const char *sub_transdom;
-
-    opt = table;
-    while (opt->longName || opt->shortName || opt->arg) {
-       if ((opt->longName || opt->shortName) &&
-           !(opt->argInfo & POPT_ARGFLAG_DOC_HIDDEN))
-           singleOptionHelp(f, left, opt, translation_domain);
-       opt++;
-    }
-
-    opt = table;
-    while (opt->longName || opt->shortName || opt->arg) {
-       if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE) {
-           sub_transdom = getTableTranslationDomain(opt->arg);
-           if(!sub_transdom)
-               sub_transdom = translation_domain;
-
-           if (opt->descrip)
-               fprintf(f, "\n%s\n", D_(sub_transdom, opt->descrip));
-
-           singleTableHelp(f, opt->arg, left, sub_transdom);
-       }
-       opt++;
-    }
-}
-
-static int showHelpIntro(poptContext con, FILE * f) {
-    int len = 6;
-    const char * fn;
-
-    fprintf(f, POPT_("Usage:"));
-    if (!(con->flags & POPT_CONTEXT_KEEP_FIRST)) {
-       fn = con->optionStack->argv[0];
-       if (strchr(fn, '/')) fn = strchr(fn, '/') + 1;
-       fprintf(f, " %s", fn);
-       len += strlen(fn) + 1;
-    }
-
-    return len;
-}
-
-void poptPrintHelp(poptContext con, FILE * f, /*@unused@*/ int flags) {
-    int leftColWidth;
-
-    showHelpIntro(con, f);
-    if (con->otherHelp)
-       fprintf(f, " %s\n", con->otherHelp);
-    else
-       fprintf(f, " %s\n", POPT_("[OPTION...]"));
-
-    leftColWidth = maxArgWidth(con->options, NULL);
-    singleTableHelp(f, con->options, leftColWidth, NULL);
-}
-
-static int singleOptionUsage(FILE * f, int cursor,
-                            const struct poptOption * opt,
-                            const char *translation_domain) {
-    int len = 3;
-    char shortStr[2] = { '\0', '\0' };
-    const char * item = shortStr;
-    const char * argDescrip = getArgDescrip(opt, translation_domain);
-
-    if (opt->shortName) {
-       if (!(opt->argInfo & POPT_ARG_MASK))
-           return cursor;      /* we did these already */
-       len++;
-       *shortStr = opt->shortName;
-       shortStr[1] = '\0';
-    } else if (opt->longName) {
-       len += 1 + strlen(opt->longName);
-       item = opt->longName;
-    }
-
-    if (len == 3) return cursor;
-
-    if (argDescrip)
-       len += strlen(argDescrip) + 1;
-
-    if ((cursor + len) > 79) {
-       fprintf(f, "\n       ");
-       cursor = 7;
-    }
-
-    fprintf(f, " [-%s%s%s%s]", opt->shortName ? "" : "-", item,
-           argDescrip ? (opt->shortName ? " " : "=") : "",
-           argDescrip ? argDescrip : "");
-
-    return cursor + len + 1;
-}
-
-static int singleTableUsage(FILE * f, int cursor, const struct poptOption * table,
-                    const char *translation_domain) {
-    const struct poptOption * opt;
-
-    opt = table;
-    while (opt->longName || opt->shortName || opt->arg) {
-        if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INTL_DOMAIN)
-           translation_domain = (const char *)opt->arg;
-       else if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE)
-           cursor = singleTableUsage(f, cursor, opt->arg,
-                                     translation_domain);
-       else if ((opt->longName || opt->shortName) &&
-                !(opt->argInfo & POPT_ARGFLAG_DOC_HIDDEN))
-         cursor = singleOptionUsage(f, cursor, opt, translation_domain);
-
-       opt++;
-    }
-
-    return cursor;
-}
-
-static int showShortOptions(const struct poptOption * opt, FILE * f,
-                           char * str) {
-    char s[300];               /* this is larger then the ascii set, so
-                                  it should do just fine */
-
-    s[0] = '\0';
-    if (str == NULL) {
-       memset(s, 0, sizeof(s));
-       str = s;
-    }
-
-    while (opt->longName || opt->shortName || opt->arg) {
-       if (opt->shortName && !(opt->argInfo & POPT_ARG_MASK))
-           str[strlen(str)] = opt->shortName;
-       else if ((opt->argInfo & POPT_ARG_MASK) == POPT_ARG_INCLUDE_TABLE)
-           showShortOptions(opt->arg, f, str);
-
-       opt++;
-    }
-
-    if (s != str || !*s)
-       return 0;
-
-    fprintf(f, " [-%s]", s);
-    return strlen(s) + 4;
-}
-
-void poptPrintUsage(poptContext con, FILE * f, /*@unused@*/ int flags) {
-    int cursor;
-
-    cursor = showHelpIntro(con, f);
-    cursor += showShortOptions(con->options, f, NULL);
-    singleTableUsage(f, cursor, con->options, NULL);
-
-    if (con->otherHelp) {
-       cursor += strlen(con->otherHelp) + 1;
-       if (cursor > 79) fprintf(f, "\n       ");
-       fprintf(f, " %s", con->otherHelp);
-    }
-
-    fprintf(f, "\n");
-}
-
-void poptSetOtherOptionHelp(poptContext con, const char * text) {
-    if (con->otherHelp) xfree(con->otherHelp);
-    con->otherHelp = xstrdup(text);
-}
diff --git a/support/poptint.h b/support/poptint.h
deleted file mode 100644 (file)
index 623b6b4..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#ifndef H_POPTINT
-#define H_POPTINT
-
-/* Bit mask macros. */
-typedef        unsigned int __pbm_bits;
-#define        __PBM_NBITS             (8 * sizeof (__pbm_bits))
-#define        __PBM_IX(d)             ((d) / __PBM_NBITS)
-#define __PBM_MASK(d)          ((__pbm_bits) 1 << ((d) % __PBM_NBITS))
-typedef struct {
-    __pbm_bits bits[1];
-} pbm_set;
-#define        __PBM_BITS(set) ((set)->bits)
-
-#define        PBM_ALLOC(d)    calloc(__PBM_IX (d) + 1, sizeof(__pbm_bits))
-#define        PBM_FREE(s)     free(s);
-#define PBM_SET(d, s)   (__PBM_BITS (s)[__PBM_IX (d)] |= __PBM_MASK (d))
-#define PBM_CLR(d, s)   (__PBM_BITS (s)[__PBM_IX (d)] &= ~__PBM_MASK (d))
-#define PBM_ISSET(d, s) ((__PBM_BITS (s)[__PBM_IX (d)] & __PBM_MASK (d)) != 0)
-
-struct optionStackEntry {
-    int argc;
-    /*@only@*/ const char ** argv;
-    /*@only@*/ pbm_set * argb;
-    int next;
-    /*@only@*/ const char * nextArg;
-    /*@keep@*/ const char * nextCharArg;
-    /*@dependent@*/ struct poptAlias * currAlias;
-    int stuffed;
-};
-
-struct execEntry {
-    const char * longName;
-    char shortName;
-    const char * script;
-};
-
-struct poptContext_s {
-    struct optionStackEntry optionStack[POPT_OPTION_DEPTH];
-    /*@dependent@*/ struct optionStackEntry * os;
-    /*@owned@*/ const char ** leftovers;
-    int numLeftovers;
-    int nextLeftover;
-    /*@keep@*/ const struct poptOption * options;
-    int restLeftover;
-    /*@only@*/ const char * appName;
-    /*@only@*/ struct poptAlias * aliases;
-    int numAliases;
-    int flags;
-    struct execEntry * execs;
-    int numExecs;
-    /*@only@*/ const char ** finalArgv;
-    int finalArgvCount;
-    int finalArgvAlloced;
-    /*@dependent@*/ struct execEntry * doExec;
-    /*@only@*/ const char * execPath;
-    int execAbsolute;
-    /*@only@*/ const char * otherHelp;
-};
-
-#define        xfree(_a)       free((void *)_a)
-
-#ifdef HAVE_LIBINTL_H
-#include <libintl.h>
-#endif
-
-#if defined(HAVE_GETTEXT) && !defined(__LCLINT__)
-#define _(foo) gettext(foo)
-#else
-#define _(foo) (foo)
-#endif
-
-#if defined(HAVE_DGETTEXT) && !defined(__LCLINT__)
-#define D_(dom, str) dgettext(dom, str)
-#define POPT_(foo) D_("popt", foo)
-#else
-#define POPT_(foo) (foo)
-#define D_(dom, str) (str)
-#endif
-
-#define N_(foo) (foo)
-
-#endif
diff --git a/support/poptparse.c b/support/poptparse.c
deleted file mode 100644 (file)
index 8ed33a4..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-/* (C) 1998 Red Hat Software, Inc. -- Licensing details are in the COPYING
-   file accompanying popt source distributions, available from
-   ftp://ftp.redhat.com/pub/code/popt */
-
-#include "system.h"
-#include "poptint.h"
-
-#define POPT_ARGV_ARRAY_GROW_DELTA 5
-
-int poptDupArgv(int argc, const char **argv,
-               int * argcPtr, const char *** argvPtr)
-{
-    size_t nb = (argc + 1) * sizeof(*argv);
-    const char ** argv2;
-    char * dst;
-    int i;
-
-    for (i = 0; i < argc; i++) {
-       if (argv[i] == NULL)
-           return POPT_ERROR_NOARG;
-       nb += strlen(argv[i]) + 1;
-    }
-
-    dst = malloc(nb);
-    argv2 = (void *) dst;
-    dst += (argc + 1) * sizeof(*argv);
-
-    for (i = 0; i < argc; i++) {
-       argv2[i] = dst;
-       dst += strlen(strcpy(dst, argv[i])) + 1;
-    }
-    argv2[argc] = NULL;
-
-    *argvPtr = argv2;
-    *argcPtr = argc;
-    return 0;
-}
-
-int poptParseArgvString(const char * s, int * argcPtr, const char *** argvPtr)
-{
-    const char * src;
-    char quote = '\0';
-    int argvAlloced = POPT_ARGV_ARRAY_GROW_DELTA;
-    const char ** argv = malloc(sizeof(*argv) * argvAlloced);
-    int argc = 0;
-    int buflen = strlen(s) + 1;
-    char * buf = memset(alloca(buflen), 0, buflen);
-
-    argv[argc] = buf;
-
-    for (src = s; *src; src++) {
-       if (quote == *src) {
-           quote = '\0';
-       } else if (quote) {
-           if (*src == '\\') {
-               src++;
-               if (!*src) {
-                   free(argv);
-                   return POPT_ERROR_BADQUOTE;
-               }
-               if (*src != quote) *buf++ = '\\';
-           }
-           *buf++ = *src;
-       } else if (isspace(*src)) {
-           if (*argv[argc]) {
-               buf++, argc++;
-               if (argc == argvAlloced) {
-                   argvAlloced += POPT_ARGV_ARRAY_GROW_DELTA;
-                   argv = realloc(argv, sizeof(*argv) * argvAlloced);
-               }
-               argv[argc] = buf;
-           }
-       } else switch (*src) {
-         case '"':
-         case '\'':
-           quote = *src;
-           break;
-         case '\\':
-           src++;
-           if (!*src) {
-               free(argv);
-               return POPT_ERROR_BADQUOTE;
-           }
-           /*@fallthrough@*/
-         default:
-           *buf++ = *src;
-           break;
-       }
-    }
-
-    if (strlen(argv[argc])) {
-       argc++, buf++;
-    }
-
-#if 0
-    {  char * dst = malloc((argc + 1) * sizeof(*argv) + (buf - argv[0]));
-       const char ** argv2 = (void *) dst;
-       int i;
-
-       dst += (argc + 1) * sizeof(*argv);
-       memcpy(argv2, argv, argc * sizeof(*argv));
-       argv2[argc] = NULL;
-       memcpy(dst, argv[0], buf - argv[0]);
-
-       for (i = 0; i < argc; i++)
-           argv2[i] = dst + (argv[i] - argv[0]);
-
-       *argvPtr = argv2;
-       *argcPtr = argc;
-    }
-#else
-    (void) poptDupArgv(argc, argv, argcPtr, argvPtr);
-#endif
-
-    free(argv);
-
-    return 0;
-}
diff --git a/support/scandir.c b/support/scandir.c
deleted file mode 100644 (file)
index 1b45e37..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Copyright (C) 1992, 93, 94, 95, 96, 97 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 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.  */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <sys/types.h>
-
-#if HAVE_DIRENT_H
-# include <dirent.h>
-# define NAMLEN(dirent) strlen((dirent)->d_name)
-#else
-# define dirent direct
-# define NAMLEN(dirent) (dirent)->d_namlen
-# if HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif
-# if HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif
-# if HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif
-
-#undef PARAMS
-#if defined (__GNUC__) || __STDC__
-# define PARAMS(args) args
-#else
-# define PARAMS(args) ()
-#endif
-
-#define set_errno(e) (errno = (e))
-
-int
-scandir (dir, namelist, select, cmp)
-     const char *dir;
-     struct dirent ***namelist;
-     int (*select) PARAMS ((struct dirent *));
-     int (*cmp) PARAMS ((const void *, const void *));
-{
-  DIR *dp = opendir (dir);
-  struct dirent **v = NULL;
-  size_t vsize = 0, i;
-  struct dirent *d;
-  int save;
-
-  if (dp == NULL)
-    return -1;
-
-  save = errno;
-  set_errno (0);
-
-  i = 0;
-  while ((d = readdir (dp)) != NULL)
-    if (select == NULL || (*select) (d))
-      {
-       size_t dsize;
-
-       /* Ignore errors from select or readdir */
-       set_errno (0);
-
-       if (i == vsize)
-         {
-           struct dirent **new;
-           if (vsize == 0)
-             vsize = 10;
-           else
-             vsize *= 2;
-           new = (struct dirent **) realloc (v, vsize * sizeof (*v));
-           if (new == NULL)
-             {
-             lose:
-               set_errno (ENOMEM);
-               break;
-             }
-           v = new;
-         }
-
-       dsize = &d->d_name[1 + NAMLEN (d)] - (char *) d;
-       v[i] = (struct dirent *) malloc (dsize);
-       if (v[i] == NULL)
-         goto lose;
-
-       memcpy (v[i++], d, dsize);
-      }
-
-  if (errno != 0)
-    {
-      save = errno;
-      (void) closedir (dp);
-      while (i > 0)
-       free (v[--i]);
-      free (v);
-      set_errno (save);
-      return -1;
-    }
-
-  (void) closedir (dp);
-  set_errno (save);
-
-  /* Sort the list if we have a comparison function to sort with.  */
-  if (cmp != NULL)
-    qsort (v, i, sizeof (*v), cmp);
-  *namelist = v;
-  return i;
-}
-
-int
-alphasort (const void *a, const void *b)
-{
-  return strcmp ((*(const struct dirent **) a)->d_name,
-                (*(const struct dirent **) b)->d_name);
-}
diff --git a/support/strcasecmp.c b/support/strcasecmp.c
deleted file mode 100644 (file)
index 4640372..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 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 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.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <ctype.h>
-#include <string.h>
-
-#ifndef weak_alias
-# define __strcasecmp strcasecmp
-# define TOLOWER(Ch) tolower (Ch)
-#else
-# ifdef USE_IN_EXTENDED_LOCALE_MODEL
-#  define __strcasecmp __strcasecmp_l
-#  define TOLOWER(Ch) __tolower_l ((Ch), loc)
-# else
-#  define TOLOWER(Ch) tolower (Ch)
-# endif
-#endif
-
-#ifdef USE_IN_EXTENDED_LOCALE_MODEL
-# define LOCALE_PARAM , loc
-# define LOCALE_PARAM_DECL __locale_t loc;
-#else
-# define LOCALE_PARAM
-# define LOCALE_PARAM_DECL
-#endif
-
-/* Compare S1 and S2, ignoring case, returning less than, equal to or
-   greater than zero if S1 is lexicographically less than,
-   equal to or greater than S2.  */
-int
-__strcasecmp (s1, s2 LOCALE_PARAM)
-     const char *s1;
-     const char *s2;
-     LOCALE_PARAM_DECL
-{
-  const unsigned char *p1 = (const unsigned char *) s1;
-  const unsigned char *p2 = (const unsigned char *) s2;
-  unsigned char c1, c2;
-
-  if (p1 == p2)
-    return 0;
-
-  do
-    {
-      c1 = TOLOWER (*p1++);
-      c2 = TOLOWER (*p2++);
-      if (c1 == '\0')
-       break;
-    }
-  while (c1 == c2);
-
-  return c1 - c2;
-}
-#ifndef __strcasecmp
-weak_alias (__strcasecmp, strcasecmp)
-#endif
diff --git a/support/strerror.c b/support/strerror.c
deleted file mode 100644 (file)
index 5590cca..0000000
+++ /dev/null
@@ -1,837 +0,0 @@
-/* Extended support for using errno values.
-   Written by Fred Fish.  fnf@cygnus.com
-   This file is in the public domain.  --Per Bothner.  */
-
-#include "config.h"
-
-#ifndef PARAMS
-#if defined (__GNUC__) || __STDC__ || defined __cplusplus
-# define PARAMS(args) args
-#else
-# define PARAMS(args) ()
-#endif
-#endif
-
-
-#ifdef HAVE_SYS_ERRLIST
-/* Note that errno.h (not sure what OS) or stdio.h (BSD 4.4, at least)
-   might declare sys_errlist in a way that the compiler might consider
-   incompatible with our later declaration, perhaps by using const
-   attributes.  So we hide the declaration in errno.h (if any) using a
-   macro. */
-#define sys_errlist sys_errlist__
-#endif
-
-#include <stdio.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_ERRLIST
-#undef sys_errlist
-#endif
-
-/*  Routines imported from standard C runtime libraries. */
-
-#ifdef __STDC__
-#include <stddef.h>
-extern void *malloc (size_t size);                             /* 4.10.3.3 */
-extern void *memset (void *s, int c, size_t n);                        /* 4.11.6.1 */
-#else  /* !__STDC__ */
-extern char *malloc ();                /* Standard memory allocater */
-extern char *memset ();
-#endif /* __STDC__ */
-
-#ifndef MAX
-#  define MAX(a,b) ((a) > (b) ? (a) : (b))
-#endif
-
-static void init_error_tables PARAMS ((void));
-
-/* Translation table for errno values.  See intro(2) in most UNIX systems
-   Programmers Reference Manuals.
-
-   Note that this table is generally only accessed when it is used at runtime
-   to initialize errno name and message tables that are indexed by errno
-   value.
-
-   Not all of these errnos will exist on all systems.  This table is the only
-   thing that should have to be updated as new error numbers are introduced.
-   It's sort of ugly, but at least its portable. */
-
-struct error_info
-{
-  int value;           /* The numeric value from <errno.h> */
-  const char *name;    /* The equivalent symbolic value */
-#ifndef HAVE_SYS_ERRLIST
-  const char *msg;     /* Short message about this value */
-#endif
-};
-
-#ifndef HAVE_SYS_ERRLIST
-#   define ENTRY(value, name, msg)     {value, name, msg}
-#else
-#   define ENTRY(value, name, msg)     {value, name}
-#endif
-
-static const struct error_info error_table[] =
-{
-#if defined (EPERM)
-  ENTRY(EPERM, "EPERM", "Not owner"),
-#endif
-#if defined (ENOENT)
-  ENTRY(ENOENT, "ENOENT", "No such file or directory"),
-#endif
-#if defined (ESRCH)
-  ENTRY(ESRCH, "ESRCH", "No such process"),
-#endif
-#if defined (EINTR)
-  ENTRY(EINTR, "EINTR", "Interrupted system call"),
-#endif
-#if defined (EIO)
-  ENTRY(EIO, "EIO", "I/O error"),
-#endif
-#if defined (ENXIO)
-  ENTRY(ENXIO, "ENXIO", "No such device or address"),
-#endif
-#if defined (E2BIG)
-  ENTRY(E2BIG, "E2BIG", "Arg list too long"),
-#endif
-#if defined (ENOEXEC)
-  ENTRY(ENOEXEC, "ENOEXEC", "Exec format error"),
-#endif
-#if defined (EBADF)
-  ENTRY(EBADF, "EBADF", "Bad file number"),
-#endif
-#if defined (ECHILD)
-  ENTRY(ECHILD, "ECHILD", "No child processes"),
-#endif
-#if defined (EWOULDBLOCK)      /* Put before EAGAIN, sometimes aliased */
-  ENTRY(EWOULDBLOCK, "EWOULDBLOCK", "Operation would block"),
-#endif
-#if defined (EAGAIN)
-  ENTRY(EAGAIN, "EAGAIN", "No more processes"),
-#endif
-#if defined (ENOMEM)
-  ENTRY(ENOMEM, "ENOMEM", "Not enough space"),
-#endif
-#if defined (EACCES)
-  ENTRY(EACCES, "EACCES", "Permission denied"),
-#endif
-#if defined (EFAULT)
-  ENTRY(EFAULT, "EFAULT", "Bad address"),
-#endif
-#if defined (ENOTBLK)
-  ENTRY(ENOTBLK, "ENOTBLK", "Block device required"),
-#endif
-#if defined (EBUSY)
-  ENTRY(EBUSY, "EBUSY", "Device busy"),
-#endif
-#if defined (EEXIST)
-  ENTRY(EEXIST, "EEXIST", "File exists"),
-#endif
-#if defined (EXDEV)
-  ENTRY(EXDEV, "EXDEV", "Cross-device link"),
-#endif
-#if defined (ENODEV)
-  ENTRY(ENODEV, "ENODEV", "No such device"),
-#endif
-#if defined (ENOTDIR)
-  ENTRY(ENOTDIR, "ENOTDIR", "Not a directory"),
-#endif
-#if defined (EISDIR)
-  ENTRY(EISDIR, "EISDIR", "Is a directory"),
-#endif
-#if defined (EINVAL)
-  ENTRY(EINVAL, "EINVAL", "Invalid argument"),
-#endif
-#if defined (ENFILE)
-  ENTRY(ENFILE, "ENFILE", "File table overflow"),
-#endif
-#if defined (EMFILE)
-  ENTRY(EMFILE, "EMFILE", "Too many open files"),
-#endif
-#if defined (ENOTTY)
-  ENTRY(ENOTTY, "ENOTTY", "Not a typewriter"),
-#endif
-#if defined (ETXTBSY)
-  ENTRY(ETXTBSY, "ETXTBSY", "Text file busy"),
-#endif
-#if defined (EFBIG)
-  ENTRY(EFBIG, "EFBIG", "File too large"),
-#endif
-#if defined (ENOSPC)
-  ENTRY(ENOSPC, "ENOSPC", "No space left on device"),
-#endif
-#if defined (ESPIPE)
-  ENTRY(ESPIPE, "ESPIPE", "Illegal seek"),
-#endif
-#if defined (EROFS)
-  ENTRY(EROFS, "EROFS", "Read-only file system"),
-#endif
-#if defined (EMLINK)
-  ENTRY(EMLINK, "EMLINK", "Too many links"),
-#endif
-#if defined (EPIPE)
-  ENTRY(EPIPE, "EPIPE", "Broken pipe"),
-#endif
-#if defined (EDOM)
-  ENTRY(EDOM, "EDOM", "Math argument out of domain of func"),
-#endif
-#if defined (ERANGE)
-  ENTRY(ERANGE, "ERANGE", "Math result not representable"),
-#endif
-#if defined (ENOMSG)
-  ENTRY(ENOMSG, "ENOMSG", "No message of desired type"),
-#endif
-#if defined (EIDRM)
-  ENTRY(EIDRM, "EIDRM", "Identifier removed"),
-#endif
-#if defined (ECHRNG)
-  ENTRY(ECHRNG, "ECHRNG", "Channel number out of range"),
-#endif
-#if defined (EL2NSYNC)
-  ENTRY(EL2NSYNC, "EL2NSYNC", "Level 2 not synchronized"),
-#endif
-#if defined (EL3HLT)
-  ENTRY(EL3HLT, "EL3HLT", "Level 3 halted"),
-#endif
-#if defined (EL3RST)
-  ENTRY(EL3RST, "EL3RST", "Level 3 reset"),
-#endif
-#if defined (ELNRNG)
-  ENTRY(ELNRNG, "ELNRNG", "Link number out of range"),
-#endif
-#if defined (EUNATCH)
-  ENTRY(EUNATCH, "EUNATCH", "Protocol driver not attached"),
-#endif
-#if defined (ENOCSI)
-  ENTRY(ENOCSI, "ENOCSI", "No CSI structure available"),
-#endif
-#if defined (EL2HLT)
-  ENTRY(EL2HLT, "EL2HLT", "Level 2 halted"),
-#endif
-#if defined (EDEADLK)
-  ENTRY(EDEADLK, "EDEADLK", "Deadlock condition"),
-#endif
-#if defined (ENOLCK)
-  ENTRY(ENOLCK, "ENOLCK", "No record locks available"),
-#endif
-#if defined (EBADE)
-  ENTRY(EBADE, "EBADE", "Invalid exchange"),
-#endif
-#if defined (EBADR)
-  ENTRY(EBADR, "EBADR", "Invalid request descriptor"),
-#endif
-#if defined (EXFULL)
-  ENTRY(EXFULL, "EXFULL", "Exchange full"),
-#endif
-#if defined (ENOANO)
-  ENTRY(ENOANO, "ENOANO", "No anode"),
-#endif
-#if defined (EBADRQC)
-  ENTRY(EBADRQC, "EBADRQC", "Invalid request code"),
-#endif
-#if defined (EBADSLT)
-  ENTRY(EBADSLT, "EBADSLT", "Invalid slot"),
-#endif
-#if defined (EDEADLOCK)
-  ENTRY(EDEADLOCK, "EDEADLOCK", "File locking deadlock error"),
-#endif
-#if defined (EBFONT)
-  ENTRY(EBFONT, "EBFONT", "Bad font file format"),
-#endif
-#if defined (ENOSTR)
-  ENTRY(ENOSTR, "ENOSTR", "Device not a stream"),
-#endif
-#if defined (ENODATA)
-  ENTRY(ENODATA, "ENODATA", "No data available"),
-#endif
-#if defined (ETIME)
-  ENTRY(ETIME, "ETIME", "Timer expired"),
-#endif
-#if defined (ENOSR)
-  ENTRY(ENOSR, "ENOSR", "Out of streams resources"),
-#endif
-#if defined (ENONET)
-  ENTRY(ENONET, "ENONET", "Machine is not on the network"),
-#endif
-#if defined (ENOPKG)
-  ENTRY(ENOPKG, "ENOPKG", "Package not installed"),
-#endif
-#if defined (EREMOTE)
-  ENTRY(EREMOTE, "EREMOTE", "Object is remote"),
-#endif
-#if defined (ENOLINK)
-  ENTRY(ENOLINK, "ENOLINK", "Link has been severed"),
-#endif
-#if defined (EADV)
-  ENTRY(EADV, "EADV", "Advertise error"),
-#endif
-#if defined (ESRMNT)
-  ENTRY(ESRMNT, "ESRMNT", "Srmount error"),
-#endif
-#if defined (ECOMM)
-  ENTRY(ECOMM, "ECOMM", "Communication error on send"),
-#endif
-#if defined (EPROTO)
-  ENTRY(EPROTO, "EPROTO", "Protocol error"),
-#endif
-#if defined (EMULTIHOP)
-  ENTRY(EMULTIHOP, "EMULTIHOP", "Multihop attempted"),
-#endif
-#if defined (EDOTDOT)
-  ENTRY(EDOTDOT, "EDOTDOT", "RFS specific error"),
-#endif
-#if defined (EBADMSG)
-  ENTRY(EBADMSG, "EBADMSG", "Not a data message"),
-#endif
-#if defined (ENAMETOOLONG)
-  ENTRY(ENAMETOOLONG, "ENAMETOOLONG", "File name too long"),
-#endif
-#if defined (EOVERFLOW)
-  ENTRY(EOVERFLOW, "EOVERFLOW", "Value too large for defined data type"),
-#endif
-#if defined (ENOTUNIQ)
-  ENTRY(ENOTUNIQ, "ENOTUNIQ", "Name not unique on network"),
-#endif
-#if defined (EBADFD)
-  ENTRY(EBADFD, "EBADFD", "File descriptor in bad state"),
-#endif
-#if defined (EREMCHG)
-  ENTRY(EREMCHG, "EREMCHG", "Remote address changed"),
-#endif
-#if defined (ELIBACC)
-  ENTRY(ELIBACC, "ELIBACC", "Can not access a needed shared library"),
-#endif
-#if defined (ELIBBAD)
-  ENTRY(ELIBBAD, "ELIBBAD", "Accessing a corrupted shared library"),
-#endif
-#if defined (ELIBSCN)
-  ENTRY(ELIBSCN, "ELIBSCN", ".lib section in a.out corrupted"),
-#endif
-#if defined (ELIBMAX)
-  ENTRY(ELIBMAX, "ELIBMAX", "Attempting to link in too many shared libraries"),
-#endif
-#if defined (ELIBEXEC)
-  ENTRY(ELIBEXEC, "ELIBEXEC", "Cannot exec a shared library directly"),
-#endif
-#if defined (EILSEQ)
-  ENTRY(EILSEQ, "EILSEQ", "Illegal byte sequence"),
-#endif
-#if defined (ENOSYS)
-  ENTRY(ENOSYS, "ENOSYS", "Operation not applicable"),
-#endif
-#if defined (ELOOP)
-  ENTRY(ELOOP, "ELOOP", "Too many symbolic links encountered"),
-#endif
-#if defined (ERESTART)
-  ENTRY(ERESTART, "ERESTART", "Interrupted system call should be restarted"),
-#endif
-#if defined (ESTRPIPE)
-  ENTRY(ESTRPIPE, "ESTRPIPE", "Streams pipe error"),
-#endif
-#if defined (ENOTEMPTY)
-  ENTRY(ENOTEMPTY, "ENOTEMPTY", "Directory not empty"),
-#endif
-#if defined (EUSERS)
-  ENTRY(EUSERS, "EUSERS", "Too many users"),
-#endif
-#if defined (ENOTSOCK)
-  ENTRY(ENOTSOCK, "ENOTSOCK", "Socket operation on non-socket"),
-#endif
-#if defined (EDESTADDRREQ)
-  ENTRY(EDESTADDRREQ, "EDESTADDRREQ", "Destination address required"),
-#endif
-#if defined (EMSGSIZE)
-  ENTRY(EMSGSIZE, "EMSGSIZE", "Message too long"),
-#endif
-#if defined (EPROTOTYPE)
-  ENTRY(EPROTOTYPE, "EPROTOTYPE", "Protocol wrong type for socket"),
-#endif
-#if defined (ENOPROTOOPT)
-  ENTRY(ENOPROTOOPT, "ENOPROTOOPT", "Protocol not available"),
-#endif
-#if defined (EPROTONOSUPPORT)
-  ENTRY(EPROTONOSUPPORT, "EPROTONOSUPPORT", "Protocol not supported"),
-#endif
-#if defined (ESOCKTNOSUPPORT)
-  ENTRY(ESOCKTNOSUPPORT, "ESOCKTNOSUPPORT", "Socket type not supported"),
-#endif
-#if defined (EOPNOTSUPP)
-  ENTRY(EOPNOTSUPP, "EOPNOTSUPP", "Operation not supported on transport endpoint"),
-#endif
-#if defined (EPFNOSUPPORT)
-  ENTRY(EPFNOSUPPORT, "EPFNOSUPPORT", "Protocol family not supported"),
-#endif
-#if defined (EAFNOSUPPORT)
-  ENTRY(EAFNOSUPPORT, "EAFNOSUPPORT", "Address family not supported by protocol"),
-#endif
-#if defined (EADDRINUSE)
-  ENTRY(EADDRINUSE, "EADDRINUSE", "Address already in use"),
-#endif
-#if defined (EADDRNOTAVAIL)
-  ENTRY(EADDRNOTAVAIL, "EADDRNOTAVAIL","Cannot assign requested address"),
-#endif
-#if defined (ENETDOWN)
-  ENTRY(ENETDOWN, "ENETDOWN", "Network is down"),
-#endif
-#if defined (ENETUNREACH)
-  ENTRY(ENETUNREACH, "ENETUNREACH", "Network is unreachable"),
-#endif
-#if defined (ENETRESET)
-  ENTRY(ENETRESET, "ENETRESET", "Network dropped connection because of reset"),
-#endif
-#if defined (ECONNABORTED)
-  ENTRY(ECONNABORTED, "ECONNABORTED", "Software caused connection abort"),
-#endif
-#if defined (ECONNRESET)
-  ENTRY(ECONNRESET, "ECONNRESET", "Connection reset by peer"),
-#endif
-#if defined (ENOBUFS)
-  ENTRY(ENOBUFS, "ENOBUFS", "No buffer space available"),
-#endif
-#if defined (EISCONN)
-  ENTRY(EISCONN, "EISCONN", "Transport endpoint is already connected"),
-#endif
-#if defined (ENOTCONN)
-  ENTRY(ENOTCONN, "ENOTCONN", "Transport endpoint is not connected"),
-#endif
-#if defined (ESHUTDOWN)
-  ENTRY(ESHUTDOWN, "ESHUTDOWN", "Cannot send after transport endpoint shutdown"),
-#endif
-#if defined (ETOOMANYREFS)
-  ENTRY(ETOOMANYREFS, "ETOOMANYREFS", "Too many references: cannot splice"),
-#endif
-#if defined (ETIMEDOUT)
-  ENTRY(ETIMEDOUT, "ETIMEDOUT", "Connection timed out"),
-#endif
-#if defined (ECONNREFUSED)
-  ENTRY(ECONNREFUSED, "ECONNREFUSED", "Connection refused"),
-#endif
-#if defined (EHOSTDOWN)
-  ENTRY(EHOSTDOWN, "EHOSTDOWN", "Host is down"),
-#endif
-#if defined (EHOSTUNREACH)
-  ENTRY(EHOSTUNREACH, "EHOSTUNREACH", "No route to host"),
-#endif
-#if defined (EALREADY)
-  ENTRY(EALREADY, "EALREADY", "Operation already in progress"),
-#endif
-#if defined (EINPROGRESS)
-  ENTRY(EINPROGRESS, "EINPROGRESS", "Operation now in progress"),
-#endif
-#if defined (ESTALE)
-  ENTRY(ESTALE, "ESTALE", "Stale NFS file handle"),
-#endif
-#if defined (EUCLEAN)
-  ENTRY(EUCLEAN, "EUCLEAN", "Structure needs cleaning"),
-#endif
-#if defined (ENOTNAM)
-  ENTRY(ENOTNAM, "ENOTNAM", "Not a XENIX named type file"),
-#endif
-#if defined (ENAVAIL)
-  ENTRY(ENAVAIL, "ENAVAIL", "No XENIX semaphores available"),
-#endif
-#if defined (EISNAM)
-  ENTRY(EISNAM, "EISNAM", "Is a named type file"),
-#endif
-#if defined (EREMOTEIO)
-  ENTRY(EREMOTEIO, "EREMOTEIO", "Remote I/O error"),
-#endif
-  ENTRY(0, NULL, NULL)
-};
-
-#ifdef EVMSERR
-/* This is not in the table, because the numeric value of EVMSERR (32767)
-   lies outside the range of sys_errlist[].  */
-static struct { int value; const char *name, *msg; }
-  evmserr = { EVMSERR, "EVMSERR", "VMS-specific error" };
-#endif
-
-/* Translation table allocated and initialized at runtime.  Indexed by the
-   errno value to find the equivalent symbolic value. */
-
-static const char **error_names;
-static int num_error_names = 0;
-
-/* Translation table allocated and initialized at runtime, if it does not
-   already exist in the host environment.  Indexed by the errno value to find
-   the descriptive string.
-
-   We don't export it for use in other modules because even though it has the
-   same name, it differs from other implementations in that it is dynamically
-   initialized rather than statically initialized. */
-
-#ifndef HAVE_SYS_ERRLIST
-
-static int sys_nerr;
-static const char **sys_errlist;
-
-#else
-
-extern int sys_nerr;
-extern char *sys_errlist[];
-
-#endif
-
-
-/*
-
-NAME
-
-       init_error_tables -- initialize the name and message tables
-
-SYNOPSIS
-
-       static void init_error_tables ();
-
-DESCRIPTION
-
-       Using the error_table, which is initialized at compile time, generate
-       the error_names and the sys_errlist (if needed) tables, which are
-       indexed at runtime by a specific errno value.
-
-BUGS
-
-       The initialization of the tables may fail under low memory conditions,
-       in which case we don't do anything particularly useful, but we don't
-       bomb either.  Who knows, it might succeed at a later point if we free
-       some memory in the meantime.  In any case, the other routines know
-       how to deal with lack of a table after trying to initialize it.  This
-       may or may not be considered to be a bug, that we don't specifically
-       warn about this particular failure mode.
-
-*/
-
-static void
-init_error_tables ()
-{
-  const struct error_info *eip;
-  int nbytes;
-
-  /* If we haven't already scanned the error_table once to find the maximum
-     errno value, then go find it now. */
-
-  if (num_error_names == 0)
-    {
-      for (eip = error_table; eip -> name != NULL; eip++)
-       {
-         if (eip -> value >= num_error_names)
-           {
-             num_error_names = eip -> value + 1;
-           }
-       }
-    }
-
-  /* Now attempt to allocate the error_names table, zero it out, and then
-     initialize it from the statically initialized error_table. */
-
-  if (error_names == NULL)
-    {
-      nbytes = num_error_names * sizeof (char *);
-      if ((error_names = (const char **) malloc (nbytes)) != NULL)
-       {
-         memset (error_names, 0, nbytes);
-         for (eip = error_table; eip -> name != NULL; eip++)
-           {
-             error_names[eip -> value] = eip -> name;
-           }
-       }
-    }
-
-#ifndef HAVE_SYS_ERRLIST
-
-  /* Now attempt to allocate the sys_errlist table, zero it out, and then
-     initialize it from the statically initialized error_table. */
-
-  if (sys_errlist == NULL)
-    {
-      nbytes = num_error_names * sizeof (char *);
-      if ((sys_errlist = (const char **) malloc (nbytes)) != NULL)
-       {
-         memset (sys_errlist, 0, nbytes);
-         sys_nerr = num_error_names;
-         for (eip = error_table; eip -> name != NULL; eip++)
-           {
-             sys_errlist[eip -> value] = eip -> msg;
-           }
-       }
-    }
-
-#endif
-
-}
-
-/*
-
-NAME
-
-       errno_max -- return the max errno value
-
-SYNOPSIS
-
-       int errno_max ();
-
-DESCRIPTION
-
-       Returns the maximum errno value for which a corresponding symbolic
-       name or message is available.  Note that in the case where
-       we use the sys_errlist supplied by the system, it is possible for
-       there to be more symbolic names than messages, or vice versa.
-       In fact, the manual page for perror(3C) explicitly warns that one
-       should check the size of the table (sys_nerr) before indexing it,
-       since new error codes may be added to the system before they are
-       added to the table.  Thus sys_nerr might be smaller than value
-       implied by the largest errno value defined in <errno.h>.
-
-       We return the maximum value that can be used to obtain a meaningful
-       symbolic name or message.
-
-*/
-
-int
-errno_max ()
-{
-  int maxsize;
-
-  if (error_names == NULL)
-    {
-      init_error_tables ();
-    }
-  maxsize = MAX (sys_nerr, num_error_names);
-  return (maxsize - 1);
-}
-
-#ifndef HAVE_STRERROR
-
-/*
-
-NAME
-
-       strerror -- map an error number to an error message string
-
-SYNOPSIS
-
-       char *strerror (int errnoval)
-
-DESCRIPTION
-
-       Maps an errno number to an error message string, the contents of
-       which are implementation defined.  On systems which have the external
-       variables sys_nerr and sys_errlist, these strings will be the same
-       as the ones used by perror().
-
-       If the supplied error number is within the valid range of indices
-       for the sys_errlist, but no message is available for the particular
-       error number, then returns the string "Error NUM", where NUM is the
-       error number.
-
-       If the supplied error number is not a valid index into sys_errlist,
-       returns NULL.
-
-       The returned string is only guaranteed to be valid only until the
-       next call to strerror.
-
-*/
-
-char *
-strerror (errnoval)
-  int errnoval;
-{
-  char *msg;
-  static char buf[32];
-
-#ifndef HAVE_SYS_ERRLIST
-
-  if (error_names == NULL)
-    {
-      init_error_tables ();
-    }
-
-#endif
-
-  if ((errnoval < 0) || (errnoval >= sys_nerr))
-    {
-#ifdef EVMSERR
-      if (errnoval == evmserr.value)
-       msg = evmserr.msg;
-      else
-#endif
-      /* Out of range, just return NULL */
-      msg = NULL;
-    }
-  else if ((sys_errlist == NULL) || (sys_errlist[errnoval] == NULL))
-    {
-      /* In range, but no sys_errlist or no entry at this index. */
-      sprintf (buf, "Error %d", errnoval);
-      msg = buf;
-    }
-  else
-    {
-      /* In range, and a valid message.  Just return the message. */
-      msg = (char *) sys_errlist[errnoval];
-    }
-
-  return (msg);
-}
-
-#endif /* ! HAVE_STRERROR */
-
-
-/*
-
-NAME
-
-       strerrno -- map an error number to a symbolic name string
-
-SYNOPSIS
-
-       const char *strerrno (int errnoval)
-
-DESCRIPTION
-
-       Given an error number returned from a system call (typically
-       returned in errno), returns a pointer to a string containing the
-       symbolic name of that error number, as found in <errno.h>.
-
-       If the supplied error number is within the valid range of indices
-       for symbolic names, but no name is available for the particular
-       error number, then returns the string "Error NUM", where NUM is
-       the error number.
-
-       If the supplied error number is not within the range of valid
-       indices, then returns NULL.
-
-BUGS
-
-       The contents of the location pointed to are only guaranteed to be
-       valid until the next call to strerrno.
-
-*/
-
-const char *
-strerrno (errnoval)
-  int errnoval;
-{
-  const char *name;
-  static char buf[32];
-
-  if (error_names == NULL)
-    {
-      init_error_tables ();
-    }
-
-  if ((errnoval < 0) || (errnoval >= num_error_names))
-    {
-#ifdef EVMSERR
-      if (errnoval == evmserr.value)
-       name = evmserr.name;
-      else
-#endif
-      /* Out of range, just return NULL */
-      name = NULL;
-    }
-  else if ((error_names == NULL) || (error_names[errnoval] == NULL))
-    {
-      /* In range, but no error_names or no entry at this index. */
-      sprintf (buf, "Error %d", errnoval);
-      name = (const char *) buf;
-    }
-  else
-    {
-      /* In range, and a valid name.  Just return the name. */
-      name = error_names[errnoval];
-    }
-
-  return (name);
-}
-
-/*
-
-NAME
-
-       strtoerrno -- map a symbolic errno name to a numeric value
-
-SYNOPSIS
-
-       int strtoerrno (char *name)
-
-DESCRIPTION
-
-       Given the symbolic name of a error number, map it to an errno value.
-       If no translation is found, returns 0.
-
-*/
-
-int
-strtoerrno (name)
-     const char *name;
-{
-  int errnoval = 0;
-
-  if (name != NULL)
-    {
-      if (error_names == NULL)
-       {
-         init_error_tables ();
-       }
-      for (errnoval = 0; errnoval < num_error_names; errnoval++)
-       {
-         if ((error_names[errnoval] != NULL) &&
-             (strcmp (name, error_names[errnoval]) == 0))
-           {
-             break;
-           }
-       }
-      if (errnoval == num_error_names)
-       {
-#ifdef EVMSERR
-         if (strcmp (name, evmserr.name) == 0)
-           errnoval = evmserr.value;
-         else
-#endif
-         errnoval = 0;
-       }
-    }
-  return (errnoval);
-}
-
-
-/* A simple little main that does nothing but print all the errno translations
-   if MAIN is defined and this file is compiled and linked. */
-
-#ifdef MAIN
-
-#include <stdio.h>
-
-int
-main ()
-{
-  int errn;
-  int errnmax;
-  const char *name;
-  char *msg;
-  char *strerror ();
-
-  errnmax = errno_max ();
-  printf ("%d entries in names table.\n", num_error_names);
-  printf ("%d entries in messages table.\n", sys_nerr);
-  printf ("%d is max useful index.\n", errnmax);
-
-  /* Keep printing values until we get to the end of *both* tables, not
-     *either* table.  Note that knowing the maximum useful index does *not*
-     relieve us of the responsibility of testing the return pointer for
-     NULL. */
-
-  for (errn = 0; errn <= errnmax; errn++)
-    {
-      name = strerrno (errn);
-      name = (name == NULL) ? "<NULL>" : name;
-      msg = strerror (errn);
-      msg = (msg == NULL) ? "<NULL>" : msg;
-      printf ("%-4d%-18s%s\n", errn, name, msg);
-    }
-
-  return 0;
-}
-
-#endif
diff --git a/support/strndup.c b/support/strndup.c
deleted file mode 100644 (file)
index cd971e1..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 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 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.  */
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include <stdio.h>
-#include <sys/types.h>
-
-#if defined _LIBC || defined STDC_HEADERS
-# include <stdlib.h>
-# include <string.h>
-#else
-char *malloc ();
-#endif
-
-#ifndef weak_alias
-# define __strndup strndup
-#endif
-
-char *
-__strndup (s, n)
-     const char *s;
-     size_t n;
-{
-  size_t len = strnlen (s, n);
-  char *new = malloc (len + 1);
-
-  if (new == NULL)
-    return NULL;
-
-  new[len] = '\0';
-  return memcpy (new, s, len);
-}
-#ifdef weak_alias
-weak_alias (__strndup, strndup)
-#endif
diff --git a/support/strnlen.c b/support/strnlen.c
deleted file mode 100644 (file)
index ab95d17..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Find the length of STRING, but scan at most MAXLEN characters.
-   Copyright (C) 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 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 <string.h>
-
-/* Find the length of STRING, but scan at most MAXLEN characters.
-   If no '\0' terminator is found in that many characters, return MAXLEN.  */
-
-size_t
-strnlen (const char *string, size_t maxlen)
-{
-  const char *end = memchr (string, '\0', maxlen);
-  return end ? end - string : maxlen;
-}
diff --git a/support/strtod.c b/support/strtod.c
deleted file mode 100644 (file)
index 4fd3d4e..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Implementation of strtod for systems with atof.
-   Copyright (C) 1991, 1995 Free Software Foundation, Inc.
-
-This file is part of the libiberty library.  This library is free
-software; you can redistribute it and/or modify it under the
-terms of the GNU General Public License as published by the
-Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-This 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 General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-As a special exception, if you link this library with files
-compiled with a GNU compiler to produce an executable, this does not cause
-the resulting executable to be covered by the GNU General Public License.
-This exception does not however invalidate any other reasons why
-the executable file might be covered by the GNU General Public License. */
-
-#include <ctype.h>
-
-extern double atof ();
-
-/* Disclaimer: this is currently just used by CHILL in GDB and therefore
-   has not been tested well.  It may have been tested for nothing except
-   that it compiles.  */
-
-double
-strtod (str, ptr)
-     char *str;
-     char **ptr;
-{
-  char *p;
-
-  if (ptr == (char **)0)
-    return atof (str);
-
-  p = str;
-
-  while (isspace (*p))
-    ++p;
-
-  if (*p == '+' || *p == '-')
-    ++p;
-
-  /* INF or INFINITY.  */
-  if ((p[0] == 'i' || p[0] == 'I')
-      && (p[1] == 'n' || p[1] == 'N')
-      && (p[2] == 'f' || p[2] == 'F'))
-    {
-      if ((p[3] == 'i' || p[3] == 'I')
-         && (p[4] == 'n' || p[4] == 'N')
-         && (p[5] == 'i' || p[5] == 'I')
-         && (p[6] == 't' || p[6] == 'T')
-         && (p[7] == 'y' || p[7] == 'Y'))
-       {
-         *ptr = p + 7;
-         return atof (str);
-       }
-      else
-       {
-         *ptr = p + 3;
-         return atof (str);
-       }
-    }
-
-  /* NAN or NAN(foo).  */
-  if ((p[0] == 'n' || p[0] == 'N')
-      && (p[1] == 'a' || p[1] == 'A')
-      && (p[2] == 'n' || p[2] == 'N'))
-    {
-      p += 3;
-      if (*p == '(')
-       {
-         ++p;
-         while (*p != '\0' && *p != ')')
-           ++p;
-         if (*p == ')')
-           ++p;
-       }
-      *ptr = p;
-      return atof (str);
-    }
-
-  /* digits, with 0 or 1 periods in it.  */
-  if (isdigit (*p) || *p == '.')
-    {
-      int got_dot = 0;
-      while (isdigit (*p) || (!got_dot && *p == '.'))
-       {
-         if (*p == '.')
-           got_dot = 1;
-         ++p;
-       }
-
-      /* Exponent.  */
-      if (*p == 'e' || *p == 'E')
-       {
-         int i;
-         i = 1;
-         if (p[i] == '+' || p[i] == '-')
-           ++i;
-         if (isdigit (p[i]))
-           {
-             while (isdigit (p[i]))
-               ++i;
-             *ptr = p + i;
-             return atof (str);
-           }
-       }
-      *ptr = p;
-      return atof (str);
-    }
-  /* Didn't find any digits.  Doesn't look like a number.  */
-  *ptr = str;
-  return 0.0;
-}
diff --git a/support/strtok_r.c b/support/strtok_r.c
deleted file mode 100644 (file)
index 44430da..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Reentrant string tokenizer.  Generic version.
-   Copyright (C) 1991, 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 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 <string.h>
-
-#undef strtok_r
-
-/* Parse S into tokens separated by characters in DELIM.
-   If S is NULL, the saved pointer in SAVE_PTR is used as
-   the next starting point.  For example:
-       char s[] = "-abc-=-def";
-       char *sp;
-       x = strtok_r(s, "-", &sp);      // x = "abc", sp = "=-def"
-       x = strtok_r(NULL, "-=", &sp);  // x = "def", sp = NULL
-       x = strtok_r(NULL, "=", &sp);   // x = NULL
-               // s = "abc\0-def\0"
-*/
-char *
-strtok_r (s, delim, save_ptr)
-     char *s;
-     const char *delim;
-     char **save_ptr;
-{
-  char *token;
-
-  if (s == NULL)
-    s = *save_ptr;
-
-  /* Scan leading delimiters.  */
-  s += strspn (s, delim);
-  if (*s == '\0')
-    return NULL;
-
-  /* Find the end of the token.  */
-  token = s;
-  s = strpbrk (token, delim);
-  if (s == NULL)
-    /* This token finishes the string.  */
-    *save_ptr = strchr (token, '\0');
-  else
-    {
-      /* Terminate the token and make *SAVE_PTR point past it.  */
-      *s = '\0';
-      *save_ptr = s + 1;
-    }
-  return token;
-}
diff --git a/support/strtol.c b/support/strtol.c
deleted file mode 100644 (file)
index 75b7493..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <limits.h>
-#include <ctype.h>
-#include <errno.h>
-#if 0
-#include <stdlib.h>
-#endif
-
-/* FIXME: It'd be nice to configure around these, but the include files are too
-   painful.  These macros should at least be more portable than hardwired hex
-   constants. */
-
-#ifndef ULONG_MAX
-#define        ULONG_MAX       ((unsigned long)(~0L))          /* 0xFFFFFFFF */
-#endif
-
-#ifndef LONG_MAX
-#define        LONG_MAX        ((long)(ULONG_MAX >> 1))        /* 0x7FFFFFFF */
-#endif
-
-#ifndef LONG_MIN
-#define        LONG_MIN        ((long)(~LONG_MAX))             /* 0x80000000 */
-#endif
-
-/*
- * Convert a string to a long integer.
- *
- * Ignores `locale' stuff.  Assumes that the upper and lower case
- * alphabets and digits are each contiguous.
- */
-long
-strtol(nptr, endptr, base)
-       const char *nptr;
-       char **endptr;
-       register int base;
-{
-       register const char *s = nptr;
-       register unsigned long acc;
-       register int c;
-       register unsigned long cutoff;
-       register int neg = 0, any, cutlim;
-
-       /*
-        * Skip white space and pick up leading +/- sign if any.
-        * If base is 0, allow 0x for hex and 0 for octal, else
-        * assume decimal; if base is already 16, allow 0x.
-        */
-       do {
-               c = *s++;
-       } while (isspace(c));
-       if (c == '-') {
-               neg = 1;
-               c = *s++;
-       } else if (c == '+')
-               c = *s++;
-       if ((base == 0 || base == 16) &&
-           c == '0' && (*s == 'x' || *s == 'X')) {
-               c = s[1];
-               s += 2;
-               base = 16;
-       }
-       if (base == 0)
-               base = c == '0' ? 8 : 10;
-
-       /*
-        * Compute the cutoff value between legal numbers and illegal
-        * numbers.  That is the largest legal value, divided by the
-        * base.  An input number that is greater than this value, if
-        * followed by a legal input character, is too big.  One that
-        * is equal to this value may be valid or not; the limit
-        * between valid and invalid numbers is then based on the last
-        * digit.  For instance, if the range for longs is
-        * [-2147483648..2147483647] and the input base is 10,
-        * cutoff will be set to 214748364 and cutlim to either
-        * 7 (neg==0) or 8 (neg==1), meaning that if we have accumulated
-        * a value > 214748364, or equal but the next digit is > 7 (or 8),
-        * the number is too big, and we will return a range error.
-        *
-        * Set any if any `digits' consumed; make it negative to indicate
-        * overflow.
-        */
-       cutoff = neg ? -(unsigned long)LONG_MIN : LONG_MAX;
-       cutlim = cutoff % (unsigned long)base;
-       cutoff /= (unsigned long)base;
-       for (acc = 0, any = 0;; c = *s++) {
-               if (isdigit(c))
-                       c -= '0';
-               else if (isalpha(c))
-                       c -= isupper(c) ? 'A' - 10 : 'a' - 10;
-               else
-                       break;
-               if (c >= base)
-                       break;
-               if (any < 0 || acc > cutoff || acc == cutoff && c > cutlim)
-                       any = -1;
-               else {
-                       any = 1;
-                       acc *= base;
-                       acc += c;
-               }
-       }
-       if (any < 0) {
-               acc = neg ? LONG_MIN : LONG_MAX;
-               errno = ERANGE;
-       } else if (neg)
-               acc = -acc;
-       if (endptr != 0)
-               *endptr = (char *) (any ? s - 1 : nptr);
-       return (acc);
-}
diff --git a/support/strtoul.c b/support/strtoul.c
deleted file mode 100644 (file)
index 54207fa..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (c) 1990 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <limits.h>
-#include <ctype.h>
-#include <errno.h>
-#if 0
-#include <stdlib.h>
-#endif
-
-#ifndef ULONG_MAX
-#define        ULONG_MAX       ((unsigned long)(~0L))          /* 0xFFFFFFFF */
-#endif
-
-/*
- * Convert a string to an unsigned long integer.
- *
- * Ignores `locale' stuff.  Assumes that the upper and lower case
- * alphabets and digits are each contiguous.
- */
-unsigned long
-strtoul(nptr, endptr, base)
-       const char *nptr;
-       char **endptr;
-       register int base;
-{
-       register const char *s = nptr;
-       register unsigned long acc;
-       register int c;
-       register unsigned long cutoff;
-       register int neg = 0, any, cutlim;
-
-       /*
-        * See strtol for comments as to the logic used.
-        */
-       do {
-               c = *s++;
-       } while (isspace(c));
-       if (c == '-') {
-               neg = 1;
-               c = *s++;
-       } else if (c == '+')
-               c = *s++;
-       if ((base == 0 || base == 16) &&
-           c == '0' && (*s == 'x' || *s == 'X')) {
-               c = s[1];
-               s += 2;
-               base = 16;
-       }
-       if (base == 0)
-               base = c == '0' ? 8 : 10;
-       cutoff = (unsigned long)ULONG_MAX / (unsigned long)base;
-       cutlim = (unsigned long)ULONG_MAX % (unsigned long)base;
-       for (acc = 0, any = 0;; c = *s++) {
-               if (isdigit(c))
-                       c -= '0';
-               else if (isalpha(c))
-                       c -= isupper(c) ? 'A' - 10 : 'a' - 10;
-               else
-                       break;
-               if (c >= base)
-                       break;
-               if (any < 0 || acc > cutoff || acc == cutoff && c > cutlim)
-                       any = -1;
-               else {
-                       any = 1;
-                       acc *= base;
-                       acc += c;
-               }
-       }
-       if (any < 0) {
-               acc = ULONG_MAX;
-               errno = ERANGE;
-       } else if (neg)
-               acc = -acc;
-       if (endptr != 0)
-               *endptr = (char *) (any ? s - 1 : nptr);
-       return (acc);
-}
diff --git a/support/system.h b/support/system.h
deleted file mode 100644 (file)
index 659ebb2..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <limits.h>
-
-#if HAVE_MCHECK_H
-#include <mcheck.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#if HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef __NeXT
-/* access macros are not declared in non posix mode in unistd.h -
- don't try to use posix on NeXTstep 3.3 ! */
-#include <libc.h>
-#endif
-
-/* AIX requires this to be the first thing in the file.  */
-#ifndef __GNUC__
-# if HAVE_ALLOCA_H
-#  include <alloca.h>
-# else
-#  ifdef _AIX
-#pragma alloca
-#  else
-#   ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#   endif
-#  endif
-# endif
-#elif defined(__GNUC__) && defined(__STRICT_ANSI__)
-#define alloca __builtin_alloca
-#endif
-
-/*@only@*/ char * xstrdup (const char *str);
-
-#if HAVE_MCHECK_H && defined(__GNUC__)
-#define        vmefail()       (fprintf(stderr, "virtual memory exhausted.\n"), exit(EXIT_FAILURE), NULL)
-#define xstrdup(_str)   (strcpy((malloc(strlen(_str)+1) ? : vmefail()), (_str)))
-#else
-#define        xstrdup(_str)   strdup(_str)
-#endif  /* HAVE_MCHECK_H && defined(__GNUC__) */
-
-
-#include "popt-gnome.h"
diff --git a/support/vasprintf.c b/support/vasprintf.c
deleted file mode 100644 (file)
index 12c37ad..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-/* Like vsprintf but provides a pointer to malloc'd storage, which must
-   be freed by the caller.
-   Copyright (C) 1994 Free Software Foundation, Inc.
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-This program 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 General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdio.h>
-#include <string.h>
-
-#if __STDC__
-# include <stdarg.h>
-#else
-# include <varargs.h>
-#endif
-
-#ifdef TEST
-int global_total_width;
-#endif
-
-unsigned long strtoul ();
-char *malloc ();
-
-static int
-int_vasprintf (result, format, args)
-     char **result;
-     const char *format;
-     va_list *args;
-{
-  const char *p = format;
-  /* Add one to make sure that it is never zero, which might cause malloc
-     to return NULL.  */
-  int total_width = strlen (format) + 1;
-  va_list ap;
-
-  memcpy (&ap, args, sizeof (va_list));
-
-  while (*p != '\0')
-    {
-      if (*p++ == '%')
-       {
-         while (strchr ("-+ #0", *p))
-           ++p;
-         if (*p == '*')
-           {
-             ++p;
-             total_width += abs (va_arg (ap, int));
-           }
-         else
-           total_width += strtoul (p, &p, 10);
-         if (*p == '.')
-           {
-             ++p;
-             if (*p == '*')
-               {
-                 ++p;
-                 total_width += abs (va_arg (ap, int));
-               }
-             else
-               total_width += strtoul (p, &p, 10);
-           }
-         while (strchr ("hlL", *p))
-           ++p;
-         /* Should be big enough for any format specifier except %s
-             and floats.  */
-         total_width += 30;
-         switch (*p)
-           {
-           case 'd':
-           case 'i':
-           case 'o':
-           case 'u':
-           case 'x':
-           case 'X':
-           case 'c':
-             (void) va_arg (ap, int);
-             break;
-           case 'f':
-           case 'e':
-           case 'E':
-           case 'g':
-           case 'G':
-             (void) va_arg (ap, double);
-             /* Since an ieee double can have an exponent of 307, we'll
-                make the buffer wide enough to cover the gross case. */
-             total_width += 307;
-             break;
-           case 's':
-             total_width += strlen (va_arg (ap, char *));
-             break;
-           case 'p':
-           case 'n':
-             (void) va_arg (ap, char *);
-             break;
-           }
-       }
-    }
-#ifdef TEST
-  global_total_width = total_width;
-#endif
-  *result = malloc (total_width);
-  if (*result != NULL)
-    return vsprintf (*result, format, *args);
-  else
-    return 0;
-}
-
-int
-vasprintf (result, format, args)
-     char **result;
-     const char *format;
-     va_list args;
-{
-  return int_vasprintf (result, format, &args);
-}
-
-int
-asprintf
-#if __STDC__
-     (char **result, const char *format, ...)
-#else
-     (result, va_alist)
-     char **result;
-     va_dcl
-#endif
-{
-  va_list args;
-  int done;
-
-#if __STDC__
-  va_start (args, format);
-#else
-  char *format;
-  va_start (args);
-  format = va_arg (args, char *);
-#endif
-  done = vasprintf (result, format, args);
-  va_end (args);
-
-  return done;
-}
-
-#ifdef TEST
-void
-checkit
-#if __STDC__
-     (const char* format, ...)
-#else
-     (va_alist)
-     va_dcl
-#endif
-{
-  va_list args;
-  char *result;
-
-#if __STDC__
-  va_start (args, format);
-#else
-  char *format;
-  va_start (args);
-  format = va_arg (args, char *);
-#endif
-  vasprintf (&result, format, args);
-  if (strlen (result) < global_total_width)
-    printf ("PASS: ");
-  else
-    printf ("FAIL: ");
-  printf ("%d %s\n", global_total_width, result);
-}
-
-int
-main ()
-{
-  checkit ("%d", 0x12345678);
-  checkit ("%200d", 5);
-  checkit ("%.300d", 6);
-  checkit ("%100.150d", 7);
-  checkit ("%s", "jjjjjjjjjiiiiiiiiiiiiiiioooooooooooooooooppppppppppppaa\n\
-777777777777777777333333333333366666666666622222222222777777777777733333");
-  checkit ("%f%s%d%s", 1.0, "foo", 77, "asdjffffffffffffffiiiiiiiiiiixxxxx");
-}
-#endif /* TEST */
diff --git a/support/vsnprintf.c b/support/vsnprintf.c
deleted file mode 100644 (file)
index 6a54d27..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Revision 12: http://theos.com/~deraadt/snprintf.c
- *
- * Copyright (c) 1997 Theo de Raadt
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/mman.h>
-#include <signal.h>
-#include <stdio.h>
-#if __STDC__
-#include <stdarg.h>
-#include <stdlib.h>
-#else
-#include <varargs.h>
-#endif
-#include <setjmp.h>
-
-#ifndef roundup
-#define roundup(x, y) ((((x)+((y)-1))/(y))*(y))
-#endif
-
-static int pgsize;
-static char *curobj;
-static int caught;
-static sigjmp_buf bail;
-
-#define EXTRABYTES     2       /* XXX: why 2? you don't want to know */
-
-static char *
-msetup(str, n)
-       char *str;
-       size_t n;
-{
-       char *e;
-
-       if (n == 0)
-               return NULL;
-       if (pgsize == 0)
-               pgsize = getpagesize();
-       curobj = (char *)malloc(n + EXTRABYTES + pgsize * 2);
-       if (curobj == NULL)
-               return NULL;
-       e = curobj + n + EXTRABYTES;
-       e = (char *)roundup((unsigned long)e, pgsize);
-       if (mprotect(e, pgsize, PROT_NONE) == -1) {
-               free(curobj);
-               curobj = NULL;
-               return NULL;
-       }
-       e = e - n - EXTRABYTES;
-       *e = '\0';
-       return (e);
-}
-
-static void
-mcatch()
-{
-       siglongjmp(bail, 1);
-}
-
-static void
-mcleanup(str, n, p)
-       char *str;
-       size_t n;
-       char *p;
-{
-       g_strlcpy(str, p, n);
-       if (mprotect((caddr_t)(p + n + EXTRABYTES), pgsize,
-           PROT_READ|PROT_WRITE|PROT_EXEC) == -1)
-               mprotect((caddr_t)(p + n + EXTRABYTES), pgsize,
-                   PROT_READ|PROT_WRITE);
-       free(curobj);
-}
-
-int
-#if __STDC__
-vsnprintf(char *str, size_t n, char const *fmt, va_list ap)
-#else
-vsnprintf(str, n, fmt, ap)
-       char *str;
-       size_t n;
-       char *fmt;
-       char *ap;
-#endif
-{
-       struct sigaction osa, nsa;
-       char *p;
-       int ret = n + 1;        /* if we bail, indicated we overflowed */
-
-       memset(&nsa, 0, sizeof nsa);
-       nsa.sa_handler = mcatch;
-       sigemptyset(&nsa.sa_mask);
-
-       p = msetup(str, n);
-       if (p == NULL) {
-               *str = '\0';
-               return 0;
-       }
-       if (sigsetjmp(bail, 1) == 0) {
-               if (sigaction(SIGSEGV, &nsa, &osa) == -1) {
-                       mcleanup(str, n, p);
-                       return (0);
-               }
-               ret = vsprintf(p, fmt, ap);
-       }
-       mcleanup(str, n, p);
-       (void) sigaction(SIGSEGV, &osa, NULL);
-       return (ret);
-}
-
-int
-#if __STDC__
-snprintf(char *str, size_t n, char const *fmt, ...)
-#else
-snprintf(str, n, fmt, va_alist)
-       char *str;
-       size_t n;
-       char *fmt;
-       va_dcl
-#endif
-{
-       va_list ap;
-#if __STDC__
-       va_start(ap, fmt);
-#else
-       va_start(ap);
-#endif
-
-       return (vsnprintf(str, n, fmt, ap));
-       va_end(ap);
-}
-
-
-