Imported Upstream version 1.4.8

This commit is contained in:
Jan Wagner 2013-11-26 23:53:44 +01:00
parent 6a280f6f24
commit 6dd54dd8e2
352 changed files with 42813 additions and 27251 deletions

View file

@ -2,7 +2,7 @@ This file contains the origin of code copied verbatim into some or all of the Na
The NagiosPlugin team thanks the original authors. The NagiosPlugin team thanks the original authors.
Copied code is cited in the source by indented commnents of the form Copied code is cited in the source by indented comments of the form
.. indent level .. /* Author YYYY sub-citation see ACKNOWLEDGEMENTS */ .. indent level .. /* Author YYYY sub-citation see ACKNOWLEDGEMENTS */
@ -27,3 +27,7 @@ Copyright (C) 91, 1995-2004 Free Software Foundation, Inc.
http://www.gnu.org/software/coreutils/ http://www.gnu.org/software/coreutils/
Use of macros and lib files in m4/np_coreutils.m4 and lib/. Setuid installs in plugins-root Use of macros and lib files in m4/np_coreutils.m4 and lib/. Setuid installs in plugins-root
Gnulib team
Copyright (C) 2001, 2003, 2004, 2006 Free Software Foundation, Inc
http://www.gnu.org/software/gnulib/
Use of lib files that originally were used from coreutils

View file

@ -2,13 +2,18 @@ The Nagios Plugins are brought to you by the Nagios Plugins Development Team.
Jeremy T Bouse Jeremy T Bouse
Peter Bray Peter Bray
Gavin Carr
Karl DeBisschop Karl DeBisschop
Matthias Eble
Ethan Galstad Ethan Galstad
Sean Finney Sean Finney
Subhendu Ghosh Subhendu Ghosh
Thomas Guyot-Sionnest
Stanley Hopcroft Stanley Hopcroft
Matthew Kent Matthew Kent
Harper Mann Harper Mann
Benoit Mortier Benoit Mortier
Nathan Vonnahme
Ton Voon Ton Voon
Holger Weiss
Michael Wirtgen Michael Wirtgen

32
BUGS
View file

@ -1,13 +1,37 @@
This file lists known bugs in this specific release. It lists the major bugs from the Nagios This file lists the major bugs from the Nagios Plugins page on Sourceforge
Plugins page on Sourceforge at http://sourceforge.net/tracker/?group_id=29880&atid=397597. at http://sourceforge.net/tracker/?group_id=29880&atid=397597. These are not
necessarily verified as errors.
For the 1.4.4 release: For the 1.4.8 release:
1578214 - check_proc crashes on Itanium2 1687867 - check_http: buffer overflow vulnerability
1675306 - check_dhcp: does not add mandatory 'end' option
1675286 - check_ssh: -S flag not working
1652471 - check_http: missing Accept header
1648570 - check_dhcp error by asking 2 dhcp servers
1637767 - check_ping on FreeBSD 5.4 fails
1614168 - not compatible with OpenSSL 0.9.8d
1595449 - check_procs bus error on Solaris 8,9,10
1573700 - check_swap on HP-UX incorrect 1573700 - check_swap on HP-UX incorrect
1573638 - check_swap SEGVs on Sol 10 1573638 - check_swap SEGVs on Sol 10
1541340 - check_procs won't execute on Solaris 9 x86
1523748 - check_disk should error if warn range is subset of critical
1506121 - check_http problem with protocol change in redirect
1498923 - check_ldap build error on Solaris 9
1495828 - pst3 failure on solaris 10 x86
1494629 - check_icmp fails after a time on FreeBSD
1480574 - check_disk missing -lm on Solaris
1478287 - check_dns fails with CNAMEs
1475899 - check_tcp segfaults with multiple -s or -e args 1475899 - check_tcp segfaults with multiple -s or -e args
1470013 - check_tcp complains about double values in parameter
1469472 - check_ping dns lookup problem
1469468 - signal handler in popen.c is broken
1466426 - check_ldaps doesn't default to port 636
1447642 - check_ping segfault on Sol 10 1447642 - check_ping segfault on Sol 10
1433179 - check_jabber does not honor --mismatch
1381604 - Perlsec breaks any perl plugin with perl 5.8.x
1373801 - check_ping timeout on Mandrake 10.1
1370031 - check_disk_smb requires DNS agree with NetBIOS names
1344584 - check_snmp counter64 values not handled correctly 1344584 - check_snmp counter64 values not handled correctly
1291987 - urlize useragent does not work 1291987 - urlize useragent does not work
1225470 - check_swap perf data incorrect 1225470 - check_swap perf data incorrect

37
CHANGES
View file

@ -1,37 +0,0 @@
This file documents the major additions and syntax changes between releases.
1.4.4
New C based check_ntp. The perl version is now deprecated.
New check_apt plugin
Notice: plugins in contrib/ will start to be removed from this distribution.
Please check at http://www.nagiosexchange.org for contributed plugins
Major bug fixes to check_disk where values were incorrectly calculated and alerted on.
check_udp2 removed. check_udp is now linked to check_tcp.c
check_mailq now errors if the sub-program run returns non-zero return code. This would appear
as if mailqs were okay when the nagios user could not query the mail-queues
Compile problems with check_snmp fixed
1.4.3
Setuid plugins (check_dhcp, check_icmp) separated into plugins-root/. Run make install as root to install
SSL plugins work with gnutls as well as OpenSSL
check_mysql_query added to run arbitrary SQL commands, with threshold checking
libtool now required for development systems
Notice: check_udp (compiled from check_udp.c) will be deprecated in the next release.
check_udp2 should be used instead and will be renamed to check_udp
1.4.2
Fix for Redhat ES4 for check_dns and check_dig
1.4
IPv6 support in check_ping, check_by_ssh, check_http, check_ldap, check_smtp, check_tcp
Internationalisation support
Performance data added to most plugins
check_disk now using GNU coreutils code
New plugins - check_dhcp, check_icmp
contrib/check_citrix has been replaced by contrib/check_ica* (requires packet_utils.pm in libexec)
check_http --min changed to --pagesize, added max so min:max in check
check_vsz and check_rss deprecated - functionality moved into check_procs
check_swap % thresholds changed to measure amount free, instead of amount used
check_disk syntax changes for -p, -m/-M, defaults to MB instead of kB
check_procs -C expects no path for the command name

764
ChangeLog
View file

@ -1,3 +1,767 @@
2007-04-10 08:17 dermoth
* po/: POTFILES.in, de.po, fr.po, nagios-plugins.pot: Add some
check_ntp translations
2007-04-10 08:17 dermoth
* plugins/check_ntp.c: - Fix possibility of printing scientific
numbers in perfdata - Use fperfdata function for perfdata
formatting - Make the printing part a bit more flexible (similar
to check_disk)
2007-04-10 06:58 dermoth
* po/: de.po, fr.po, nagios-plugins.pot: Hopefully this is correct.
Need to make more changes so I'm commiting these.
2007-04-04 21:08 dermoth
* plugins/check_ntp.c: Fix for getting dispersion instead of jitter
on older servers (like xntpd on Solaris).
2007-04-03 18:19 hweiss
* plugins/check_ntp.c: Fix the synchronization source selection on
big-endian systems.
2007-04-03 02:31 dermoth
* plugins/check_ntp.c: Temporary fix for jitter calculation
2007-04-02 13:39 hweiss
* plugins/check_ntp.c: Don't rely on the assumption that the size
of a READSTAT response is a multiple of
sizeof(ntp_assoc_status_pair).
2007-04-02 10:28 tonvoon
* lib/tests/Makefile.am: Add libgnu.a as regex functions required
2007-04-02 08:32 dermoth
* plugins/check_ntp.c: Fix byte order in verbose logging
2007-04-02 07:00 dermoth
* plugins/check_ntp.c: Seems like we don't get any jitter
sometimes. While this needs to be fixed we should at least handle
it gracefully.
2007-04-01 15:21 psychotrahe
* plugins/t/check_http.t: check_http.t: - added internet_access
variable to skip tests where internet access is required.
- added host_tcp_http2 variable for a webserver serving
the string 'nagios' in index - no tests are
skipped if the new vars are not defined (existing installations)
2007-04-01 12:17 psychotrahe
* lib/utils_disk.c: utils_disk: fixed handling if check_disk -p is
a device (np_set_best_match())
2007-03-31 19:49 hweiss
* NEWS: Various check_ntp fixes
2007-03-31 19:48 hweiss
* plugins/check_ntp.c: Fix an out-of-bounds memcpy(3) and add a
realloc(3) error check in jitter_request().
2007-03-31 18:35 hweiss
* plugins/check_ntp.c: Add a warning to the verbose output if
jitter_request() found no synchronization source.
2007-03-31 18:29 hweiss
* plugins/check_ntp.c: Avoid division by zero.
2007-03-31 18:25 hweiss
* plugins/check_ntp.c: Remove the '-O' option, as it's ignored.
2007-03-30 16:45 tonvoon
* m4/np_mysqlclient.m4: Use AS_HELP_STRING instead of
ACX_HELP_STRING
2007-03-30 15:08 tonvoon
* NEWS, configure.in, m4/np_mysqlclient.m4: Fix AC_CHECK_LIB for
mysql_init - add dependent libraries. mysql detection separated
into external m4 file
2007-03-30 10:00 psychotrahe
* lib/tests/test_disk.c, plugins/t/check_disk.t: Test Cases for
check_disk's -r, -R, -C and -g
2007-03-30 09:56 psychotrahe
* plugins/check_disk.c: check_disk: minor fix for -C if bestmatch
!= -p
2007-03-30 09:53 psychotrahe
* lib/utils_disk.c, lib/utils_disk.h, plugins/check_disk.c:
check_disk: added regex functionality -r and -R. see np-devel
mail (2007-02-10)
2007-03-30 09:52 psychotrahe
* lib/utils_disk.c, lib/utils_disk.h, plugins/check_disk.c:
check_disk: added grouping functionality. see np-devel mail
(2007-02-10)
2007-03-30 09:48 psychotrahe
* lib/utils_disk.c, lib/utils_disk.h, plugins/check_disk.c:
check_disk -C is more flexible now. See np-devel post
(2007-02-10)
2007-03-29 18:58 hweiss
* THANKS.in, plugins/check_mysql.c: Fix argument processing (Felix
Frank - 1690697)
2007-03-29 18:34 hweiss
* plugins-root/Makefile.am: Set the "read" and "execute" bits only
for "user" and "group" in order to not overwrite
"--without-world-permissions" for the root plugins.
2007-03-29 11:32 tonvoon
* BUGS, NEWS, configure.in, package.def, ChangeLog: 1.4.7 release
2007-03-29 11:25 tonvoon
* plugins/check_ntp.c: Adding help text for jitter flags
2007-03-27 07:53 dermoth
* THANKS.in, plugins-root/check_icmp.c: Fix bug #1494629 -
check_icmp fails after some time on FreeBSD
2007-03-25 14:55 tonvoon
* configure.in, NEWS: Reinstate --with-nagios-user/group and new
--without-group-permissions ./configure options
2007-03-22 17:54 hweiss
* THANKS.in, plugins/common.h: Increase MAX_INPUT_BUFFER from 1k to
8k in order to increase I/O performance (Stefan Meier)
2007-03-16 12:11 gonzai
* plugins-scripts/check_ifoperstatus.pl: Fix bogus 'eq ( || )'
constructions in check_ifoperstatus.pl.
2007-03-12 10:51 tonvoon
* NEWS, plugins/check_ping.c, plugins/t/check_ping.t: check_ping's
timeout interval is only +1 if ping command has a timeout value.
Tests updated to check for 100% packet loss (always if ping has
timeout), otherwise will check for "timed out" string
2007-03-11 06:51 dermoth
* plugins-root/t/check_icmp.t: Add tests for new check_icmp switch
-m
2007-03-11 02:27 tonvoon
* plugins/t/check_ping.t, plugins-root/t/check_icmp.t: Converted
check_ping.t to new-style testcases. Added test case for
check_icmp - requires sudo access
2007-03-11 01:57 tonvoon
* plugins/check_ping.c: Fixed some help display. Removed -L from
usage as deprecated option
2007-03-08 09:09 dermoth
* NEWS, THANKS.in, plugins-root/check_icmp.c: New switch to
check_icmp to set the minimum required hosts for success.
2007-03-08 06:12 dermoth
* config_test/child_test.c: Ficing C++ style comments
2007-03-08 06:09 dermoth
* plugins-root/check_icmp.c: Fixed C++ style comments, but I don't
get why those lines were originally commented out.
2007-03-06 22:45 tonvoon
* plugins/check_http.c: Fix option handling (Nobuhiro Ban -
1657280)
2007-03-06 22:29 tonvoon
* plugins/check_smtp.c: Fixed compile errors in check_smtp.c
2007-03-06 22:17 tonvoon
* NEWS, THANKS.in, plugins/check_smtp.c: Fixed broken HELO cmd
(Enrico Scholz - 1675279)
2007-03-06 17:29 tonvoon
* NEWS, configure.in, plugins/check_procs.c: Use /usr/ucb/ps on
Solaris in preference to pst3 (problems in 64bit mode)
2007-03-06 17:26 tonvoon
* plugins/t/check_disk.t: Test failure if a filesystem which is a
subset of another fails the inode check (Matthias Elbe - 1660953)
2007-03-06 14:18 tonvoon
* NEWS, configure.in: Detect if check_mysql compile will work at
./configure time, due to some Redhat systems distributing
mysql_config, but not the include files
2007-03-06 11:03 tonvoon
* configure.in: Clearer message when --with-nagios-user is used for
./configure
2007-03-06 10:48 tonvoon
* FAQ, INSTALLING, NEWS, README, plugins-root/Makefile.am: Root
plugins installed with world executable permissions. Removed
references to --with-nagios-user and --with-nagios-group in
README
2007-03-02 01:38 egalstad
* plugins/check_mrtgtraf.c: Fix for broken check_mrtgtraf
2007-02-24 01:03 dermoth
* doc/makefile: Fix the makefile ('[[' is bash-specific, 'rm -f'
don't remove directories)
2007-02-14 20:56 tonvoon
* NEWS, contrib/check_sybase: check_sybase now maintained in
NagiosExchange
2007-02-14 20:52 tonvoon
* plugins/check_disk.c: Fixed typo in help for -M
2007-02-14 10:11 tonvoon
* plugins/: check_tcp.c, t/check_tcp.t: Documentation fix re:
--escape flag. Fix of ./check_tcp test to webservers to make it
more standards compliant
2007-02-09 14:35 tonvoon
* NEWS, THANKS.in, po/.cvsignore, po/Makefile.in.in: Fixed
MKINSTALLDIRS problem on some systems - Lars Stavholm
2007-02-07 14:46 tonvoon
* lib/: Makefile.config-opts, parse_ini.c,
tests/Makefile.config-opts, tests/config-tiny.ini,
tests/plugin.ini, tests/test_ini.c: Added test files to test the
parse_ini.c routines. Requires libtap
2007-02-07 14:06 hweiss
* plugins/check_swap.c: Include <sys/param.h> before <sys/swap.h>
in order to fix compilation on OpenBSD (nsturm - 1653934)
2007-02-06 23:30 dermoth
* plugins/check_tcp.c: Correct vim typo in comment block :P
2007-02-06 21:03 opensides
* plugins/check_disk.c, plugins/check_http.c,
plugins/check_ide_smart.c, plugins/check_mrtg.c,
plugins/check_mrtgtraf.c, plugins/check_overcr.c,
plugins/check_smtp.c, plugins/check_tcp.c, po/de.po, po/fr.po,
po/nagios-plugins.pot:
correcting some translation problems
2007-02-06 19:33 seanius
* lib/: parse_ini.c, parse_ini.h: initial version of ini file
parsing routines in C
2007-02-06 18:34 opensides
* po/Makevars:
adding PACKAGE_BUGREPORT to fix Report-Msgid-Bugs-To:
2007-02-05 13:51 tonvoon
* AUTHORS, doc/RELEASING: Update list of team members. More notes
on new releases
2007-02-05 13:13 tonvoon
* BUGS, NEWS, ChangeLog, configure.in, package.def: For 1.4.6
release
2007-02-02 09:10 dermoth
* plugins/check_snmp.c: Fix parsing of multiple OIDs sets needmibs
= TRUE
2007-02-01 06:53 dermoth
* plugins/: check_tcp.c, t/check_jabber.t: Fix progname being
partly set to upper case Change formating of invalid hostname
output
2007-02-01 05:37 dermoth
* NEWS: Adding NEWS entry for check_jabber
2007-02-01 05:33 dermoth
* plugins-scripts/check_log.sh: Fix bug #1593073 Check_Log problem
with log rotation
2007-01-31 22:50 tonvoon
* plugins/t/check_jabber.t: Converted to new style object and
Test::More testing. Skipped jabber server tests if not defined
2007-01-31 06:18 dermoth
* plugins/t/check_jabber.t: Add check_jabber test. Will ask for a
jabber host (default should be OK)
2007-01-31 04:47 dermoth
* plugins/check_tcp.c: Fix Debian Bug #392610: check_jabber always
return warning
2007-01-30 14:24 dermoth
* plugins/check_tcp.c: Jail does not requires any arguments
2007-01-30 09:56 tonvoon
* config.rpath: make dist failing without config.rpath in top
level. File copied from build-aux/
2007-01-30 05:01 dermoth
* plugins/: check_tcp.c, t/check_tcp.t: Fix reporting bug using
expect, affecting (not fixing) Debian bug #392610: check_jabber
always return warning
2007-01-30 02:22 hweiss
* configure.in: grep(1) "-q" isn't portable (e.g., it won't work on
Solaris 8), redirect output to /dev/null instead.
2007-01-29 14:14 dermoth
* plugins/: check_disk.c, t/check_disk.t: Revert 1643463 (reversed
disk thresholds) keeping the thresholds checks.
2007-01-29 12:13 hweiss
* configure.in: Automake 1.10 says: "compiling `test_disk.c' with
per-target flags requires `AM_PROG_CC_C_O' in `configure.in'".
2007-01-29 10:06 tonvoon
* config.rpath, build-aux/config.rpath: Move config.rpath into
build-aux for automake 1.10
2007-01-28 22:00 hweiss
* INSTALLING: Remove description of deprecated ./configure
--with-nagios-{user,group} options.
2007-01-28 21:46 hweiss
* plugins/check_apt.c, plugins/check_by_ssh.c, plugins/check_dig.c,
plugins/check_dns.c, plugins/check_fping.c, plugins/check_game.c,
plugins/check_hpjd.c, plugins/check_http.c,
plugins/check_ide_smart.c, plugins/check_ldap.c,
plugins/check_load.c, plugins/check_mrtg.c,
plugins/check_mrtgtraf.c, plugins/check_mysql.c,
plugins/check_mysql_query.c, plugins/check_nagios.c,
plugins/check_nt.c, plugins/check_ntp.c, plugins/check_nwstat.c,
plugins/check_overcr.c, plugins/check_pgsql.c,
plugins/check_ping.c, plugins/check_procs.c,
plugins/check_radius.c, plugins/check_real.c,
plugins/check_smtp.c, plugins/check_snmp.c, plugins/check_ssh.c,
plugins/check_swap.c, plugins/check_tcp.c, plugins/check_time.c,
plugins/check_ups.c, plugins/check_users.c, plugins/negate.c,
plugins/urlize.c, plugins/utils.c, plugins/utils.h,
plugins-root/check_dhcp.c: Don't try to print `optarg' (which
will be a NULL pointer) if an unknown command line option was
used, as this leads to a segfault on some systems. The unknown
option will be printed by getopt(3) anyway. So, simply call
print_usage() and exit UNKNOWN via the new usage5() instead.
2007-01-27 21:49 dermoth
* plugins/: check_disk.c, t/check_disk.t: Fix #1643463:
Miscalculating thresholds check_disk
2007-01-27 17:49 hweiss
* lib/utils_base.c: Change the variable names `true' and `false'
(which are keywords in C99) to `yes' and `no'. Fixes compilation
when using SGI's MIPSpro c99(1).
2007-01-27 17:42 hweiss
* plugins/common.h: Include GNULib's "dirname.h" in order to pull
in the base_name() prototype, fixes compilation of check_procs
using SGI's MIPSpro C.
2007-01-27 16:56 hweiss
* ACKNOWLEDGEMENTS, NEWS: Fix typos.
2007-01-27 16:51 hweiss
* NEWS: Added "-o,--ssh-option=OPTION" which hands "-o OPTION" over
to ssh(1) and "-q,--quiet" which tells ssh(1) to suppress
warnings (Gerhard Lausser - 1472491)
2007-01-27 16:37 hweiss
* plugins-root/check_dhcp.c: Include <sys/param.h> which is a
prerequisite for <sys/sysctl.h> on NetBSD and OpenBSD (at least).
2007-01-25 00:58 tonvoon
* Makefile.am, README, configure.in, doc/RELEASING: Update
references to NEWS instead of CHANGES. Fix compile of libtap test
programs
2007-01-25 00:26 tonvoon
* config.guess, config.sub, configure.in, ltmain.sh,
build-aux/.cvsignore, build-aux/ltmain.sh: Use build-aux
directory. Removed unnecessary checks in configure.in. Keeping
libtool to link to libtap - can't find a suitable replacement
method
2007-01-24 23:18 tonvoon
* ACKNOWLEDGEMENTS, CHANGES, NEWS, config.rpath, configure.in,
doc/developer-guidelines.sgml, gl/.cvsignore,
plugins/Makefile.am, plugins/check_procs.c, po/POTFILES.in:
Various cleanups in the syncing with gnulib
2007-01-24 22:46 tonvoon
* Makefile.am, NEWS, config.rpath, configure.in,
doc/developer-guidelines.sgml, gl/Makefile.am, gl/alloca.c,
gl/alloca_.h, gl/asnprintf.c, gl/asprintf.c, gl/basename.c,
gl/c-strtod.c, gl/c-strtod.h, gl/cloexec.c, gl/cloexec.h,
gl/creat-safer.c, gl/dirname.c, gl/dirname.h, gl/dup-safer.c,
gl/error.c, gl/error.h, gl/exit.h, gl/exitfail.c, gl/exitfail.h,
gl/fcntl--.h, gl/fcntl-safer.h, gl/fd-safer.c, gl/fsusage.c,
gl/fsusage.h, gl/full-read.c, gl/full-read.h, gl/full-write.c,
gl/full-write.h, gl/gai_strerror.c, gl/getaddrinfo.c,
gl/getaddrinfo.h, gl/gethostname.c, gl/getloadavg.c, gl/getopt.c,
gl/getopt1.c, gl/getopt_.h, gl/getopt_int.h, gl/gettext.h,
gl/inet_ntop.c, gl/inet_ntop.h, gl/intprops.h, gl/malloc.c,
gl/mbchar.c, gl/mbchar.h, gl/mbuiter.h, gl/memchr.c, gl/minmax.h,
gl/mountlist.c, gl/mountlist.h, gl/open-safer.c, gl/pipe-safer.c,
gl/printf-args.c, gl/printf-args.h, gl/printf-parse.c,
gl/printf-parse.h, gl/regcomp.c, gl/regex.c, gl/regex.h,
gl/regex_internal.c, gl/regex_internal.h, gl/regexec.c,
gl/safe-read.c, gl/safe-read.h, gl/safe-write.c, gl/safe-write.h,
gl/size_max.h, gl/snprintf.c, gl/snprintf.h, gl/socket_.h,
gl/stdbool_.h, gl/stdint_.h, gl/strcase.h, gl/strcasecmp.c,
gl/strdup.c, gl/strdup.h, gl/stripslash.c, gl/strncasecmp.c,
gl/strndup.c, gl/strndup.h, gl/strnlen.c, gl/strnlen.h,
gl/strnlen1.c, gl/strnlen1.h, gl/unistd--.h, gl/unistd-safer.h,
gl/unistd_.h, gl/vasnprintf.c, gl/vasnprintf.h, gl/vasprintf.c,
gl/vasprintf.h, gl/vsnprintf.c, gl/vsnprintf.h, gl/wchar_.h,
gl/wctype_.h, gl/wcwidth.h, gl/xalloc-die.c, gl/xalloc.h,
gl/xmalloc.c, gl/xsize.h, gl/xstrndup.c, gl/xstrndup.h,
gl/m4/absolute-header.m4, gl/m4/alloca.m4, gl/m4/arpa_inet_h.m4,
gl/m4/c-strtod.m4, gl/m4/cloexec.m4, gl/m4/codeset.m4,
gl/m4/dirname.m4, gl/m4/dos.m4, gl/m4/double-slash-root.m4,
gl/m4/eoverflow.m4, gl/m4/error.m4, gl/m4/exitfail.m4,
gl/m4/extensions.m4, gl/m4/fcntl-safer.m4, gl/m4/fstypename.m4,
gl/m4/fsusage.m4, gl/m4/getaddrinfo.m4, gl/m4/gethostname.m4,
gl/m4/getloadavg.m4, gl/m4/getopt.m4, gl/m4/gettext.m4,
gl/m4/glibc2.m4, gl/m4/glibc21.m4, gl/m4/gnulib-cache.m4,
gl/m4/gnulib-common.m4, gl/m4/gnulib-comp.m4,
gl/m4/gnulib-tool.m4, gl/m4/iconv.m4, gl/m4/inet_ntop.m4,
gl/m4/inline.m4, gl/m4/intdiv0.m4, gl/m4/intl.m4,
gl/m4/intldir.m4, gl/m4/intmax.m4, gl/m4/intmax_t.m4,
gl/m4/inttypes-pri.m4, gl/m4/inttypes_h.m4, gl/m4/lcmessage.m4,
gl/m4/lib-ld.m4, gl/m4/lib-link.m4, gl/m4/lib-prefix.m4,
gl/m4/lock.m4, gl/m4/longdouble.m4, gl/m4/longlong.m4,
gl/m4/ls-mntd-fs.m4, gl/m4/mbchar.m4, gl/m4/mbiter.m4,
gl/m4/mbrtowc.m4, gl/m4/memchr.m4, gl/m4/minmax.m4,
gl/m4/mountlist.m4, gl/m4/netinet_in_h.m4, gl/m4/nls.m4,
gl/m4/onceonly_2_57.m4, gl/m4/po.m4, gl/m4/printf-posix.m4,
gl/m4/progtest.m4, gl/m4/regex.m4, gl/m4/safe-read.m4,
gl/m4/safe-write.m4, gl/m4/size_max.m4, gl/m4/snprintf.m4,
gl/m4/socklen.m4, gl/m4/sockpfaf.m4, gl/m4/ssize_t.m4,
gl/m4/stdbool.m4, gl/m4/stdint.m4, gl/m4/stdint_h.m4,
gl/m4/strcase.m4, gl/m4/strdup.m4, gl/m4/strndup.m4,
gl/m4/strnlen.m4, gl/m4/sys_socket_h.m4, gl/m4/uintmax_t.m4,
gl/m4/ulonglong.m4, gl/m4/unistd-safer.m4, gl/m4/unistd_h.m4,
gl/m4/vasnprintf.m4, gl/m4/vasprintf.m4, gl/m4/visibility.m4,
gl/m4/vsnprintf.m4, gl/m4/wchar.m4, gl/m4/wchar_t.m4,
gl/m4/wctype.m4, gl/m4/wcwidth.m4, gl/m4/wint_t.m4,
gl/m4/xalloc.m4, gl/m4/xsize.m4, gl/m4/xstrndup.m4,
lib/Makefile.am, lib/alloca.c, lib/alloca_.h, lib/basename.c,
lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cloexec.c,
lib/cloexec.h, lib/creat-safer.c, lib/dirname.h, lib/dup-safer.c,
lib/error.c, lib/error.h, lib/exit.h, lib/exitfail.c,
lib/exitfail.h, lib/fcntl--.h, lib/fcntl-safer.h, lib/fd-safer.c,
lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
lib/full-write.c, lib/full-write.h, lib/getloadavg.c,
lib/getopt.c, lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h,
lib/gettext.h, lib/intprops.h, lib/malloc.c, lib/mountlist.c,
lib/mountlist.h, lib/open-safer.c, lib/pipe-safer.c,
lib/realloc.c, lib/regcomp.c, lib/regex.c, lib/regex.h,
lib/regex_internal.c, lib/regex_internal.h, lib/regexec.c,
lib/safe-read.c, lib/safe-read.h, lib/safe-write.c,
lib/safe-write.h, lib/snprintf.c, lib/stdbool_.h, lib/strcase.h,
lib/strtod.c, lib/unistd--.h, lib/unistd-safer.h,
lib/unlocked-io.h, lib/xalloc-die.c, lib/xalloc.h, lib/xmalloc.c,
lib/xstrdup.c, lib/tests/Makefile.am, m4/Makefile.am.in,
m4/afs.m4, m4/alloca.m4, m4/basename.m4, m4/c-strtod.m4,
m4/codeset.m4, m4/dos.m4, m4/error.m4, m4/exitfail.m4,
m4/extensions.m4, m4/fcntl-safer.m4, m4/fstypename.m4,
m4/fsusage.m4, m4/getopt.m4, m4/gettext.m4, m4/glibc21.m4,
m4/iconv.m4, m4/inttypes-pri.m4, m4/inttypes.m4,
m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4,
m4/longdouble.m4, m4/longlong.m4, m4/ls-mntd-fs.m4,
m4/mountlist.m4, m4/nls.m4, m4/np_coreutils.m4, m4/np_curl.m4,
m4/onceonly_2_57.m4, m4/po.m4, m4/progtest.m4, m4/regex.m4,
m4/restrict.m4, m4/signed.m4, m4/stdbool.m4, m4/stdint_h.m4,
m4/uintmax_t.m4, m4/ulonglong.m4, m4/unistd-safer.m4,
m4/unlocked-io.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xalloc.m4,
plugins/Makefile.am, plugins/check_smtp.c, plugins/common.h,
plugins/getaddrinfo.c, plugins/getaddrinfo.h,
plugins/gethostbyname.c, plugins/gethostbyname.h,
plugins/netutils.h, plugins-root/Makefile.am, tools/setup,
tools/update_coreutils: Sync with gnulib - lots of extraneous
code removed in preference to GNU code
2007-01-23 18:34 hweiss
* THANKS.in, plugins/check_ssh.c: Support `check_ssh
--hostname=ADDRESS' (but keep `--host=ADDRESS' for backward
compatibility) (Ville Mattila - 1642780)
2007-01-23 18:20 hweiss
* REQUIREMENTS: Location updates
2007-01-23 17:20 hweiss
* plugins/check_tcp.c: Add missing `break' to the switch-case block
that handles the `-m' option (Nobuhiro Ban - 1642682)
2007-01-23 16:42 hweiss
* THANKS.in, plugins/check_radius.c: Initialize `data' to zero,
fixes potential segfault (Nobuhiro Ban - 1642658)
2007-01-23 14:39 hweiss
* lib/mountlist.c: Add support for statvfs(2) which is needed in
order to compile the plugins on NetBSD 3.0 and newer. The
current coreutils release supports statvfs(2), so this patch
won't be needed anymore when updating the coreutils files.
2007-01-22 04:05 hweiss
* plugins/check_by_ssh.c: Added "-o,--ssh-option=OPTION" which
hands "-o OPTION" over to ssh(1) and "-q,--quiet" which tells
ssh(1) to suppress warnings (Gerhard Lausser - 1472491)
2007-01-20 20:45 tonvoon
* doc/developer-guidelines.sgml: Updated policy on contributed
plugins
2007-01-20 20:06 tonvoon
* doc/: LEAVERS, NEW_STARTERS, RELEASING: Administrative notes
2007-01-20 10:59 seanius
* plugins/check_ntp.c: compilation fixes for check_ntp.c: -
check_ntp.c:290: warning: overflow in implicit constant
conversion fixed with an explicit cast to int8_t. -
check_ntp.c:544: warning: pointer of type void * used in
arithmetic fixed by casting to ptrdiff_t before arithmetic and
(void*) afterwards - in TVtoNTP64, cast arithmetic result passed
to R32 as uint64_t.
2007-01-20 07:18 dermoth
* plugins/: check_http.c, check_ldap.c: Fix bug #1632091: printf
format string typos. Add some more cosmetic changes.
2007-01-20 06:27 dermoth
* plugins-root/check_icmp.c: Fix bug #1632078: critical threshold %
incorrectly displayed by check_icmp
2007-01-20 06:07 dermoth
* CHANGES, THANKS.in, plugins/netutils.c: Fix bug #1632072 pointer
error in plugins/netutils.c. Add changelog entry for previous
commit.
2007-01-17 05:28 dermoth
* THANKS.in, plugins/check_procs.c: Fix bug #1630970 Fix for buffer
overflow of check_procs procprog string
2007-01-08 11:05 tonvoon
* CHANGES, THANKS.in, plugins/t/check_disk.t: Added notes about
check_disk perf data fix. Added test to check perf data is same
when mount points reversed
2007-01-07 07:14 dermoth
* plugins/check_disk.c: Fix bug #1627970: check_disk performance
output for more then one partition
2007-01-06 06:41 dermoth
* plugins/check_ping.c: Fix bug #1629008: check_ping fails to
handle Packet filtered error
2007-01-06 06:33 dermoth
* plugins/check_ping.c: Revert last patch: it works but not really
for the reason I though.
2007-01-06 04:52 dermoth
* plugins/check_ping.c: Fix the way check_ping calculate the
maximum run time
2007-01-04 11:51 dermoth
* plugins/check_real.c: Fix bug #1574863: check_real does not
accept the '-v' option
2007-01-04 11:35 dermoth
* plugins/check_ping.c: Fix bug #1592605: check_ping times out
2007-01-04 11:18 dermoth
* tools/: README, distclean: Adding my distclean script
2006-12-23 18:59 dermoth
* plugins/t/check_snmp.t: Regexps in check_snmp tests fails where
they shouldn't.
2006-12-21 05:25 dermoth
* NPTest.pm: - Fixing small error (wrong file name) in NPTest.pm
documentation.
2006-12-20 22:33 tonvoon
* CHANGES, THANKS.in, plugins/check_http.c, plugins/t/check_http.t:
Removed unused timestamp variable (Matthias Eble) Fixed
redirection test. Added extra tests for funny syntax when
checking certificates, updated help for more common syntax
2006-12-20 19:25 tonvoon
* lib/utils_disk.c, lib/utils_disk.h, plugins/check_disk.c,
plugins/t/check_disk.t: Fixed inode thresholds, regressed from
previous release
2006-12-20 11:32 opensides
* po/: de.po, fr.po, nagios-plugins.pot:
updated the nagios-pulgins.pot files now that localization is
clean first pass at updating the french locale
2006-12-12 12:59 tonvoon
* plugins-scripts/t/utils.t: Enhanced test for single letters in
fqdn
2006-12-12 08:56 tonvoon
* plugins-scripts/utils.pm.in: Allow single characters in fqdn
(Dave Alden)
2006-12-07 22:38 tonvoon
* CHANGES, THANKS.in, configure.in: Fixed HP/UX's swapinfo command
for check_procs (Dick van den Burg - 1573700)
2006-12-07 16:07 tonvoon
* THANKS.in, plugins/check_disk.c, plugins/check_swap.c,
plugins/common.h, plugins/netutils.h: Fix coredump on 64bit
Solaris. Also adds more error conditions and moves swap specific
includes out of common.h (Duncan Ferguson - 1588031)
2006-12-06 20:34 tonvoon
* plugins/Makefile.am: Move SSL libs to correct order per plugin
2006-12-06 17:36 tonvoon
* plugins/Makefile.am: Only include -lssl for plugins that require
it
2006-12-06 17:00 tonvoon
* configure.in: Flag common compile error because of no ar on
Solaris
2006-12-06 15:58 tonvoon
* Makefile.am: Remove CVS files from distribution
2006-12-06 15:53 tonvoon
* doc/developer-guidelines.sgml: Add libtool requirement for
development
2006-11-09 11:44 tonvoon
* CHANGES, THANKS.in, plugins/check_ping.c, plugins/netutils.c:
Reduced DNS lookups in check_ping and netutils.c in IPv6
configurations (Pawel Malachowski)
2006-11-03 15:40 tonvoon
* lib/: Makefile.am, alloca.c, alloca_.h: Add alloca files,
required for *BSD
2006-11-01 21:15 tonvoon
* ChangeLog, configure.in, package.def: For 1.4.5 release
2006-10-27 16:37 tonvoon 2006-10-27 16:37 tonvoon
* plugins-scripts/: utils.pm.in, t/utils.t: More edge testcases. * plugins-scripts/: utils.pm.in, t/utils.t: More edge testcases.

128
FAQ
View file

@ -1,87 +1,93 @@
Frequently Asked Questions Frequently Asked Questions
************************** **************************
1. Q: Where can I find documentation for <insert name> plugin? Q: Where can I find documentation for <insert name> plugin?
A: All plugins that comply with minimal development guideline for A: All plugins that comply with minimal development guideline for
this project include internal documentation. The documentation this project include internal documentation. The documentation
can be read executing plugin with the '-h' option ('--help' if can be read executing plugin with the -h or --help option. If
long options are enabled). If the '-h' option does not work, that the '-h' option does not work, that is a bug.
is a bug.
2. Q: What version of <insert name> plugin am I running?
A: All plugins that comply with minimal development guideline for Q: What version of <insert name> plugin am I running?
this project include detailed version information. When executed
with the '-V' option, a version string will be printed:
check_radius (nagios-plugins 1.3.0-alpha1) 1.11 A: All plugins that comply with minimal development guideline for
this project include detailed version information. When executed
with the '-V' option, a version string will be printed:
Note that this string include both the assigned package release check_radius (nagios-plugins 1.3.0-alpha1) 1.11
name and the CVS-generated revision for the individual plugin.
Authors should strictly adhere to this format. All bug reports
and help requests should reference this information.
3. Q: What information do I need to include when asking for help or Note that this string include both the assigned package release
submitting a bug report? name and the CVS-generated revision for the individual plugin.
Authors should strictly adhere to this format. All bug reports
and help requests should reference this information.
A: At a minimum, the output from 'uname -a' and the version string
from '<plugin_name> -V' and, of course, a description of the
problem and any solution/patch.
4. Q: I'm using Redhat Linux (or some other RPM-based distribution). Q: What information do I need to include when asking for help or
Which packages should I install? submitting a bug report?
A: The package nagios-plugins-<version>.<arch>.rpm contains only A: At a minimum, the output from 'uname -a' and the version string
those plugins that should work on any POSIX compliant system. In from '<plugin_name> -V' and, of course, a description of the
other words, you should be able to install this package on your problem and any solution/patch.
system, no matter what else is or in not installed.
However, most of us have more complex systems than barebones
POSIX. We tried creating a variety of separate packages so
each dependency could be installed cleanly, but many people
found that this resulted in too many packages. So in the end,
all the non-POSIX plugins were folded into one RPM
(nagios-plugins-<version>.<arch>.rpm). Most people will need to
use RPM's '--nodeps' option to install this package.
5. Q: My system uses the .deb package format. What packages should I Q: I'm using Redhat Linux (or some other RPM-based distribution).
install? Which packages should I install?
A: We strive for cooperation between all packagers and developers. A: The package nagios-plugins-<version>.<arch>.rpm contains only
The answers for .deb are the same as for RPM, after changing the those plugins that should work on any POSIX compliant system. In
package name suffixes accordingly. other words, you should be able to install this package on your
system, no matter what else is or in not installed.
6. Q: I prefer to build my own RPMs. Do I need to install all of the However, most of us have more complex systems than barebones
various dependencies? POSIX. We tried creating a variety of separate packages so
each dependency could be installed cleanly, but many people
found that this resulted in too many packages. So in the end,
all the non-POSIX plugins were folded into one RPM
(nagios-plugins-<version>.<arch>.rpm). Most people will need to
use RPM's '--nodeps' option to install this package.
A: Beginning with the 1.2.9-1 release, you may run
rpm --define 'custom 1' -ta nagios-plugins-<release>.tar.gz Q: My system uses the .deb package format. What packages should I
install?
In prior releases, you must unpack the tarball and build the A: We strive for cooperation between all packagers and developers.
RPM using nagios-custom.spec with 'rpm -ba'. The answers for .deb are the same as for RPM, after changing the
package name suffixes accordingly.
7. Q: I get an error like
Warning: Return code of 127 for check of service 'PING' on host 'anyhost' was out of bounds. Q: I prefer to build my own RPMs. Do I need to install all of the
various dependencies?
when I run Nagios. (Often check_ping runs just fine on the A: Beginning with the 1.2.9-1 release, you may run
command line).
A: Commonly, system administrators will make security as tight as rpm --define 'custom 1' -ta nagios-plugins-<release>.tar.gz
possible on the monitoring system. Sometimes this includes OS
options or hardening scripts that prevent unprivileged users from
running the ping command. Nagios runs with no more privileges
than 'nobody' -- check to be sure that the nagios user can
actually run check ping. (This can also happen with other binaries
executed by nagios, but ping seems to be far and away the biggest
offender.)
8. Q: I have a plugin to offer. What do I do to get it accepted? In prior releases, you must unpack the tarball and build the
RPM using nagios-custom.spec with 'rpm -ba'.
A: Send it to nagiosplug-devel@lists.sourceforge.net. Usually, we
just drop it into contrib until we have a chance to check if the
standard options are used, etc.
You can also get feedback on improving the plugin via the mailing list. Q: I get an error like
Warning: Return code of 127 for check of service 'PING' on host 'anyhost' was out of bounds.
when I run Nagios. (Often check_ping runs just fine on the
command line).
A: Commonly, system administrators will make security as tight as
possible on the monitoring system. Sometimes this includes OS
options or hardening scripts that prevent unprivileged users from
running the ping command. Nagios runs with no more privileges
than 'nobody' -- check to be sure that the nagios user can
actually run check ping. (This can also happen with other binaries
executed by nagios, but ping seems to be far and away the biggest
offender.)
Q: I have a plugin to offer. What can I do?
A: You can make it available on NagiosExchange (http://nagiosexchange.org)
where other people can find it for use.
You can also get feedback on improving the plugin via the
nagiosplug-devel@lists.sourceforge.net mailing list.

27
INSTALL
View file

@ -1,7 +1,7 @@
Installation Instructions Installation Instructions
************************* *************************
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004 Free Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
Software Foundation, Inc. Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives This file is free documentation; the Free Software Foundation gives
@ -102,16 +102,16 @@ for another architecture.
Installation Names Installation Names
================== ==================
By default, `make install' will install the package's files in By default, `make install' installs the package's commands under
`/usr/local/bin', `/usr/local/man', etc. You can specify an `/usr/local/bin', include files under `/usr/local/include', etc. You
installation prefix other than `/usr/local' by giving `configure' the can specify an installation prefix other than `/usr/local' by giving
option `--prefix=PREFIX'. `configure' the option `--prefix=PREFIX'.
You can specify separate installation prefixes for You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you architecture-specific files and architecture-independent files. If you
give `configure' the option `--exec-prefix=PREFIX', the package will pass the option `--exec-prefix=PREFIX' to `configure', the package uses
use PREFIX as the prefix for installing programs and libraries. PREFIX as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix. Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular options like `--bindir=DIR' to specify different values for particular
@ -159,7 +159,7 @@ where SYSTEM can have one of these forms:
need to know the machine type. need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should If you are _building_ compiler tools for cross-compiling, you should
use the `--target=TYPE' option to select the type of system they will use the option `--target=TYPE' to select the type of system they will
produce code for. produce code for.
If you want to _use_ a cross compiler, that generates code for a If you want to _use_ a cross compiler, that generates code for a
@ -189,8 +189,13 @@ them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc ./configure CC=/usr/local2/bin/gcc
will cause the specified gcc to be used as the C compiler (unless it is causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script). overridden in the site shell script). Here is a another example:
/bin/bash ./configure CONFIG_SHELL=/bin/bash
Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
configuration-related scripts to be executed by `/bin/bash'.
`configure' Invocation `configure' Invocation
====================== ======================

View file

@ -1,21 +1,22 @@
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
SUBDIRS = lib plugins plugins-scripts plugins-root m4 po SUBDIRS = gl lib plugins plugins-scripts plugins-root po
EXTRA_DIST = config.rpath \ EXTRA_DIST = config.rpath \
ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS BUGS CHANGES CODING FAQ LEGAL \ ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS BUGS CODING FAQ LEGAL NEWS \
REQUIREMENTS SUPPORT THANKS \ REQUIREMENTS SUPPORT THANKS \
NPTest.pm contrib pkg nagios-plugins.spec \ NPTest.pm contrib pkg nagios-plugins.spec \
config_test/Makefile config_test/run_tests config_test/child_test.c \ config_test/Makefile config_test/run_tests config_test/child_test.c \
tools/tinderbox_build tools/tinderbox_build
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I gl/m4 -I m4
localedir = $(datadir)/locale localedir = $(datadir)/locale
DEFS = -DLOCALEDIR=\"$(localedir)\" DEFS = -DLOCALEDIR=\"$(localedir)\"
dist-hook: dist-hook:
make THANKS nagios-plugins.spec pkg/fedora/nagios-plugins.spec make THANKS nagios-plugins.spec pkg/fedora/nagios-plugins.spec
rm -rf `find $(distdir) -name CVS`
install-root: install-root:
cd plugins-root && $(MAKE) $@ cd plugins-root && $(MAKE) $@

View file

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.9.4 from Makefile.am. # Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc. # 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -39,34 +39,72 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/config.h.in $(srcdir)/test.pl.in \ $(srcdir)/config.h.in $(srcdir)/test.pl.in \
$(top_srcdir)/configure $(top_srcdir)/pkg/solaris/pkginfo.in \ $(top_srcdir)/configure $(top_srcdir)/pkg/solaris/pkginfo.in \
ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS THANKS \ ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS THANKS \
compile config.guess config.rpath config.sub depcomp \ build-aux/compile build-aux/config.guess \
install-sh ltmain.sh missing mkinstalldirs build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
build-aux/install-sh build-aux/ltmain.sh build-aux/missing \
config.rpath mkinstalldirs
subdir = . subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/afs.m4 \ am__aclocal_m4_deps = $(top_srcdir)/m4/np_mysqlclient.m4 \
$(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/basename.m4 \ $(top_srcdir)/gl/m4/absolute-header.m4 \
$(top_srcdir)/m4/c-strtod.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/gl/m4/alloca.m4 \
$(top_srcdir)/m4/dos.m4 $(top_srcdir)/m4/exitfail.m4 \ $(top_srcdir)/gl/m4/arpa_inet_h.m4 \
$(top_srcdir)/m4/extensions.m4 $(top_srcdir)/m4/fcntl-safer.m4 \ $(top_srcdir)/gl/m4/c-strtod.m4 $(top_srcdir)/gl/m4/cloexec.m4 \
$(top_srcdir)/m4/fstypename.m4 $(top_srcdir)/m4/fsusage.m4 \ $(top_srcdir)/gl/m4/codeset.m4 $(top_srcdir)/gl/m4/dirname.m4 \
$(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/gettext.m4 \ $(top_srcdir)/gl/m4/dos.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/inttypes_h.m4 \ $(top_srcdir)/gl/m4/double-slash-root.m4 \
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/gl/m4/eoverflow.m4 $(top_srcdir)/gl/m4/error.m4 \
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/ls-mntd-fs.m4 \ $(top_srcdir)/gl/m4/exitfail.m4 \
$(top_srcdir)/m4/mountlist.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/gl/m4/extensions.m4 \
$(top_srcdir)/m4/np_coreutils.m4 $(top_srcdir)/m4/np_curl.m4 \ $(top_srcdir)/gl/m4/fcntl-safer.m4 \
$(top_srcdir)/m4/onceonly_2_57.m4 $(top_srcdir)/m4/po.m4 \ $(top_srcdir)/gl/m4/fstypename.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/gl/m4/fsusage.m4 \
$(top_srcdir)/m4/restrict.m4 $(top_srcdir)/m4/stdbool.m4 \ $(top_srcdir)/gl/m4/getaddrinfo.m4 \
$(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \ $(top_srcdir)/gl/m4/gethostname.m4 \
$(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/unistd-safer.m4 \ $(top_srcdir)/gl/m4/getloadavg.m4 \
$(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/gl/m4/getopt.m4 $(top_srcdir)/gl/m4/gettext.m4 \
$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in $(top_srcdir)/gl/m4/gnulib-common.m4 \
$(top_srcdir)/gl/m4/gnulib-comp.m4 \
$(top_srcdir)/gl/m4/iconv.m4 $(top_srcdir)/gl/m4/inet_ntop.m4 \
$(top_srcdir)/gl/m4/inline.m4 $(top_srcdir)/gl/m4/intmax_t.m4 \
$(top_srcdir)/gl/m4/inttypes_h.m4 \
$(top_srcdir)/gl/m4/lib-ld.m4 $(top_srcdir)/gl/m4/lib-link.m4 \
$(top_srcdir)/gl/m4/lib-prefix.m4 $(top_srcdir)/gl/m4/lock.m4 \
$(top_srcdir)/gl/m4/longdouble.m4 \
$(top_srcdir)/gl/m4/longlong.m4 \
$(top_srcdir)/gl/m4/ls-mntd-fs.m4 \
$(top_srcdir)/gl/m4/mbchar.m4 $(top_srcdir)/gl/m4/mbiter.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/memchr.m4 \
$(top_srcdir)/gl/m4/minmax.m4 $(top_srcdir)/gl/m4/mountlist.m4 \
$(top_srcdir)/gl/m4/netinet_in_h.m4 $(top_srcdir)/gl/m4/nls.m4 \
$(top_srcdir)/gl/m4/onceonly_2_57.m4 $(top_srcdir)/gl/m4/po.m4 \
$(top_srcdir)/gl/m4/progtest.m4 $(top_srcdir)/gl/m4/regex.m4 \
$(top_srcdir)/gl/m4/safe-read.m4 \
$(top_srcdir)/gl/m4/safe-write.m4 \
$(top_srcdir)/gl/m4/size_max.m4 \
$(top_srcdir)/gl/m4/snprintf.m4 $(top_srcdir)/gl/m4/socklen.m4 \
$(top_srcdir)/gl/m4/sockpfaf.m4 $(top_srcdir)/gl/m4/ssize_t.m4 \
$(top_srcdir)/gl/m4/stdbool.m4 $(top_srcdir)/gl/m4/stdint.m4 \
$(top_srcdir)/gl/m4/stdint_h.m4 $(top_srcdir)/gl/m4/strcase.m4 \
$(top_srcdir)/gl/m4/strdup.m4 $(top_srcdir)/gl/m4/strndup.m4 \
$(top_srcdir)/gl/m4/strnlen.m4 \
$(top_srcdir)/gl/m4/sys_socket_h.m4 \
$(top_srcdir)/gl/m4/ulonglong.m4 \
$(top_srcdir)/gl/m4/unistd-safer.m4 \
$(top_srcdir)/gl/m4/unistd_h.m4 \
$(top_srcdir)/gl/m4/vasnprintf.m4 \
$(top_srcdir)/gl/m4/vasprintf.m4 \
$(top_srcdir)/gl/m4/vsnprintf.m4 $(top_srcdir)/gl/m4/wchar.m4 \
$(top_srcdir)/gl/m4/wchar_t.m4 $(top_srcdir)/gl/m4/wctype.m4 \
$(top_srcdir)/gl/m4/wcwidth.m4 $(top_srcdir)/gl/m4/wint_t.m4 \
$(top_srcdir)/gl/m4/xalloc.m4 $(top_srcdir)/gl/m4/xsize.m4 \
$(top_srcdir)/gl/m4/xstrndup.m4 $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno configure.status.lineno configure.lineno configure.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = command.cfg test.pl pkg/solaris/pkginfo CONFIG_CLEAN_FILES = command.cfg test.pl pkg/solaris/pkginfo
SOURCES = SOURCES =
@ -92,6 +130,10 @@ GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print
INSTALL = @INSTALL@ INSTALL = @INSTALL@
ABSOLUTE_STDINT_H = @ABSOLUTE_STDINT_H@
ABSOLUTE_UNISTD_H = @ABSOLUTE_UNISTD_H@
ABSOLUTE_WCHAR_H = @ABSOLUTE_WCHAR_H@
ABSOLUTE_WCTYPE_H = @ABSOLUTE_WCTYPE_H@
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@ ALLOCA = @ALLOCA@
ALLOCA_H = @ALLOCA_H@ ALLOCA_H = @ALLOCA_H@
@ -99,11 +141,17 @@ AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@ AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AR = @AR@ AR = @AR@
ARPA_INET_H = @ARPA_INET_H@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
AWK = @AWK@ AWK = @AWK@
BASENAME = @BASENAME@ BASENAME = @BASENAME@
BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@
BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@
BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@
BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@
BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@
CC = @CC@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
@ -122,6 +170,7 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EOVERFLOW = @EOVERFLOW@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
EXTRAS = @EXTRAS@ EXTRAS = @EXTRAS@
EXTRAS_ROOT = @EXTRAS_ROOT@ EXTRAS_ROOT = @EXTRAS_ROOT@
@ -131,7 +180,22 @@ F77 = @F77@
FFLAGS = @FFLAGS@ FFLAGS = @FFLAGS@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GETOPT_H = @GETOPT_H@ GETOPT_H = @GETOPT_H@
GL_COND_LIBTOOL_FALSE = @GL_COND_LIBTOOL_FALSE@
GL_COND_LIBTOOL_TRUE = @GL_COND_LIBTOOL_TRUE@
GMSGFMT = @GMSGFMT@ GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@
HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@
HAVE_STDINT_H = @HAVE_STDINT_H@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
HAVE_WCTYPE_H = @HAVE_WCTYPE_H@
HAVE_WINT_T = @HAVE_WINT_T@
HAVE__BOOL = @HAVE__BOOL@ HAVE__BOOL = @HAVE__BOOL@
HOSTNAME = @HOSTNAME@ HOSTNAME = @HOSTNAME@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
@ -146,6 +210,8 @@ LDAPINCLUDE = @LDAPINCLUDE@
LDAPLIBS = @LDAPLIBS@ LDAPLIBS = @LDAPLIBS@
LDFLAGS = @LDFLAGS@ LDFLAGS = @LDFLAGS@
LIBGNUTLS_CONFIG = @LIBGNUTLS_CONFIG@ LIBGNUTLS_CONFIG = @LIBGNUTLS_CONFIG@
LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@
LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@
LIBICONV = @LIBICONV@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@ LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@ LIBOBJS = @LIBOBJS@
@ -157,15 +223,15 @@ LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MATHLIBS = @MATHLIBS@ MATHLIBS = @MATHLIBS@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@ MSGMERGE = @MSGMERGE@
MYSQLCFLAGS = @MYSQLCFLAGS@ MYSQLCFLAGS = @MYSQLCFLAGS@
MYSQLCONFIG = @MYSQLCONFIG@
MYSQLINCLUDE = @MYSQLINCLUDE@ MYSQLINCLUDE = @MYSQLINCLUDE@
MYSQLLIBS = @MYSQLLIBS@ MYSQLLIBS = @MYSQLLIBS@
NEED_SETGID = @NEED_SETGID@ NEED_SETGID = @NEED_SETGID@
NEED_VA_LIST = @NEED_VA_LIST@ NETINET_IN_H = @NETINET_IN_H@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -203,6 +269,7 @@ PKG_ARCH = @PKG_ARCH@
PLUGIN_TEST = @PLUGIN_TEST@ PLUGIN_TEST = @PLUGIN_TEST@
POSUB = @POSUB@ POSUB = @POSUB@
POW_LIB = @POW_LIB@ POW_LIB = @POW_LIB@
PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
PYTHON = @PYTHON@ PYTHON = @PYTHON@
RADIUSLIBS = @RADIUSLIBS@ RADIUSLIBS = @RADIUSLIBS@
RANLIB = @RANLIB@ RANLIB = @RANLIB@
@ -213,16 +280,26 @@ SCRIPT_TEST = @SCRIPT_TEST@
SET_MAKE = @SET_MAKE@ SET_MAKE = @SET_MAKE@
SH = @SH@ SH = @SH@
SHELL = @SHELL@ SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SOCKETLIBS = @SOCKETLIBS@ SOCKETLIBS = @SOCKETLIBS@
SSLINCLUDE = @SSLINCLUDE@ SSLINCLUDE = @SSLINCLUDE@
SSLLIBS = @SSLLIBS@ SSLLIBS = @SSLLIBS@
STDBOOL_H = @STDBOOL_H@ STDBOOL_H = @STDBOOL_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@ STRIP = @STRIP@
SUPPORT = @SUPPORT@ SUPPORT = @SUPPORT@
SYS_SOCKET_H = @SYS_SOCKET_H@
UNISTD_H = @UNISTD_H@
USE_NLS = @USE_NLS@ USE_NLS = @USE_NLS@
VERSION = @VERSION@ VERSION = @VERSION@
WARRANTY = @WARRANTY@ WARRANTY = @WARRANTY@
WCHAR_H = @WCHAR_H@
WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
WCTYPE_H = @WCTYPE_H@
WINT_T_SUFFIX = @WINT_T_SUFFIX@
XGETTEXT = @XGETTEXT@ XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
ac_ct_AR = @ac_ct_AR@ ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
@ -247,6 +324,8 @@ build_vendor = @build_vendor@
check_tcp_ssl = @check_tcp_ssl@ check_tcp_ssl = @check_tcp_ssl@
datadir = @datadir@ datadir = @datadir@
exec_prefix = @exec_prefix@ exec_prefix = @exec_prefix@
gl_LIBOBJS = @gl_LIBOBJS@
gl_LTLIBOBJS = @gl_LTLIBOBJS@
host = @host@ host = @host@
host_alias = @host_alias@ host_alias = @host_alias@
host_cpu = @host_cpu@ host_cpu = @host_cpu@
@ -257,9 +336,11 @@ infodir = @infodir@
install_sh = @install_sh@ install_sh = @install_sh@
libdir = @libdir@ libdir = @libdir@
libexecdir = @libexecdir@ libexecdir = @libexecdir@
localedir = $(datadir)/locale
localstatedir = @localstatedir@ localstatedir = @localstatedir@
mandir = @mandir@ mandir = @mandir@
mkdir_p = @mkdir_p@ mkdir_p = @mkdir_p@
np_mysql_config = @np_mysql_config@
oldincludedir = @oldincludedir@ oldincludedir = @oldincludedir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
@ -268,16 +349,15 @@ sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target_alias = @target_alias@ target_alias = @target_alias@
with_trusted_path = @with_trusted_path@ with_trusted_path = @with_trusted_path@
SUBDIRS = lib plugins plugins-scripts plugins-root m4 po SUBDIRS = gl lib plugins plugins-scripts plugins-root po
EXTRA_DIST = config.rpath \ EXTRA_DIST = config.rpath \
ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS BUGS CHANGES CODING FAQ LEGAL \ ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS BUGS CODING FAQ LEGAL NEWS \
REQUIREMENTS SUPPORT THANKS \ REQUIREMENTS SUPPORT THANKS \
NPTest.pm contrib pkg nagios-plugins.spec \ NPTest.pm contrib pkg nagios-plugins.spec \
config_test/Makefile config_test/run_tests config_test/child_test.c \ config_test/Makefile config_test/run_tests config_test/child_test.c \
tools/tinderbox_build tools/tinderbox_build
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I gl/m4 -I m4
localedir = $(datadir)/locale
# Solaris pkgmk # Solaris pkgmk
BUILDDIR = build-solaris BUILDDIR = build-solaris
@ -361,7 +441,13 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make'); # (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line. # (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS): $(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \ @failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \ dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \ target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(SUBDIRS)'; for subdir in $$list; do \
@ -373,7 +459,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \ local_target="$$target"; \
fi; \ fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ || eval $$failcom; \
done; \ done; \
if test "$$dot_seen" = "no"; then \ if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@ -381,7 +467,13 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \ mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive: maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \ @failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \ dot_seen=no; \
case "$@" in \ case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@ -402,7 +494,7 @@ maintainer-clean-recursive:
local_target="$$target"; \ local_target="$$target"; \
fi; \ fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ || eval $$failcom; \
done && test -z "$$fail" done && test -z "$$fail"
tags-recursive: tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(SUBDIRS)'; for subdir in $$list; do \
@ -477,7 +569,7 @@ distclean-tags:
distdir: $(DISTFILES) distdir: $(DISTFILES)
$(am__remove_distdir) $(am__remove_distdir)
mkdir $(distdir) mkdir $(distdir)
$(mkdir_p) $(distdir)/. $(distdir)/config_test $(distdir)/m4 $(distdir)/pkg/solaris $(distdir)/plugins-scripts $(distdir)/po $(distdir)/tools $(mkdir_p) $(distdir)/. $(distdir)/build-aux $(distdir)/config_test $(distdir)/gl/m4 $(distdir)/m4 $(distdir)/pkg/solaris $(distdir)/plugins-scripts $(distdir)/po $(distdir)/tools
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; for file in $$list; do \
@ -718,6 +810,7 @@ uninstall-info: uninstall-info-recursive
dist-hook: dist-hook:
make THANKS nagios-plugins.spec pkg/fedora/nagios-plugins.spec make THANKS nagios-plugins.spec pkg/fedora/nagios-plugins.spec
rm -rf `find $(distdir) -name CVS`
install-root: install-root:
cd plugins-root && $(MAKE) $@ cd plugins-root && $(MAKE) $@

75
NEWS
View file

@ -1,2 +1,73 @@
New in 1.2.9: This file documents the major additions and syntax changes between releases.
* Added support for multiplatform builds
1.4.8 11th April 2007
Respects --without-world-permissions for setuid plugins
check_disk extra options for regex matching of filesystems and grouping of filesystems
for collective thresholds
Better configure test for mysqlclient availability
Various check_ntp fixes
1.4.7 29th March 2007
check_procs uses /usr/ucb/ps if available - fixes pst3 problems on Solaris
Fixed MKINSTALLDIRS problem in po/
./configure now detects if possible to compile check_mysql
Fixed broken HELO in check_smtp
check_icmp now allows to set a minimum number of hosts required for successs (-m)
check_icmp fix for *BSD when running for long time
check_ping times out 1 second quicker if host is unreachable
Root plugins installed with world executable
check_sybase from contrib now maintained in NagiosExchange
--with-nagios-user/group reinstated ./configure option
New --without-world-permissions ./configure option
1.4.6 5th February 2007
Reduced number of DNS lookups in check_ping and netutils.c for IPv6 configurations
Fixed compile problems with *BSD re: alloca.h
Fixed Solaris problems with check_swap (tested on Solaris 9)
Fixed check_swap for HP/UX where swapinfo command was incorrect
Fixed check_disk inode threshold checks, regressed at r1.4.4.
Fixed crit/warn for check_disk perf data
Fixed buffer overflow in check_procs
Fixed error handling for UNIX sockets in netutils.c
New -q and -o options for check_by_ssh which are handed over to ssh(1) as is
Synced with latest GNUlib
Fixed check_jabber always returns warning
1.4.5
Fixed bug in perl's is_hostname routine
1.4.4
New C based check_ntp. The perl version is now deprecated.
New check_apt plugin
Notice: plugins in contrib/ will start to be removed from this distribution.
Please check at http://www.nagiosexchange.org for contributed plugins
Major bug fixes to check_disk where values were incorrectly calculated and alerted on.
check_udp2 removed. check_udp is now linked to check_tcp.c
check_mailq now errors if the sub-program run returns non-zero return code. This would appear
as if mailqs were okay when the nagios user could not query the mail-queues
Compile problems with check_snmp fixed
1.4.3
Setuid plugins (check_dhcp, check_icmp) separated into plugins-root/. Run make install as root to install
SSL plugins work with gnutls as well as OpenSSL
check_mysql_query added to run arbitrary SQL commands, with threshold checking
libtool now required for development systems
Notice: check_udp (compiled from check_udp.c) will be deprecated in the next release.
check_udp2 should be used instead and will be renamed to check_udp
1.4.2
Fix for Redhat ES4 for check_dns and check_dig
1.4
IPv6 support in check_ping, check_by_ssh, check_http, check_ldap, check_smtp, check_tcp
Internationalisation support
Performance data added to most plugins
check_disk now using GNU coreutils code
New plugins - check_dhcp, check_icmp
contrib/check_citrix has been replaced by contrib/check_ica* (requires packet_utils.pm in libexec)
check_http --min changed to --pagesize, added max so min:max in check
check_vsz and check_rss deprecated - functionality moved into check_procs
check_swap % thresholds changed to measure amount free, instead of amount used
check_disk syntax changes for -p, -m/-M, defaults to MB instead of kB
check_procs -C expects no path for the command name

View file

@ -21,7 +21,7 @@ use Data::Dumper;
use Test; use Test;
use vars qw($VERSION); use vars qw($VERSION);
$VERSION = do { my @r = (q$Revision: 1.13 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; # must be all one line, for MakeMaker $VERSION = do { my @r = (q$Revision: 1.14 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; # must be all one line, for MakeMaker
=head1 NAME =head1 NAME
@ -57,10 +57,10 @@ If a parameter needs to be entered and the test is run without a tty
attached (such as a cronjob), the parameter will be assigned as if it attached (such as a cronjob), the parameter will be assigned as if it
was "none". Tests can check for the parameter and skip if not set. was "none". Tests can check for the parameter and skip if not set.
Responses are stored in an external, file-based Responses are stored in an external, file-based cache so subsequent test
cache so subsequent test runs will use these values. The user is able runs will use these values. The user is able to change the values by
to change the values by amending the values in the file /var/tmp/NPTest.pm, amending the values in the file /var/tmp/NPTest.cache, or by setting
or by setting the appropriate environment variable before running the test. the appropriate environment variable before running the test.
The option exists to store parameters in a scoped means, allowing a The option exists to store parameters in a scoped means, allowing a
test harness to a localise a parameter should the need arise. This test harness to a localise a parameter should the need arise. This

10
README
View file

@ -5,7 +5,7 @@ Nagios Plugins README
see below. In addition, generic instructions for the GNU toolchain see below. In addition, generic instructions for the GNU toolchain
can be found in the INSTALL file. can be found in the INSTALL file.
* For major changes between releases, read the CHANGES file. * For major changes between releases, read the NEWS file.
* For information on detailed changes that have been made or plugins * For information on detailed changes that have been made or plugins
that have been added, read the Changelog file. that have been added, read the Changelog file.
@ -60,15 +60,11 @@ Nagios Plugins Quick-and-Dirty Installation Instructions
1) Run the configure script to initialize variables and create a Makefile, etc. 1) Run the configure script to initialize variables and create a Makefile, etc.
./configure --prefix=BASEDIRECTORY --with-nagios-user=SOMEUSER --with-nagios-group=SOMEGROUP --with-cgiurl=SOMEURL ./configure --prefix=BASEDIRECTORY --with-cgiurl=SOMEURL
a) Replace BASEDIRECTORY with the path of the directory under which Nagios a) Replace BASEDIRECTORY with the path of the directory under which Nagios
is installed (default is '/usr/local/nagios') is installed (default is '/usr/local/nagios')
b) Replace SOMEUSER with the name of a user on your system that will be b) Replace CGIURL with the path used to access the Nagios CGIs with
assigned permissions to the installed plugins (default is 'nagios')
c) Replace SOMEGRP with the name of a group on your system that will be
assigned permissions to the installed plugins (default is 'nagios')
d) Replace CGIURL with the path used to access the Nagios CGIs with
a web browser (default is '/nagios/cgi-bin') a web browser (default is '/nagios/cgi-bin')

View file

@ -10,32 +10,29 @@ below...
check_fping: check_fping:
- Requires the fping utility distributed with SATAN. Either - Requires the fping utility distributed with SATAN. Either
download and install SATAN or grab the fping program from download and install SATAN or grab the fping program from
http://www.fping.com http://www.fping.com/
http://www.stanford.edu/~schemers/docs/fping/fping.html RPM: http://rpmfind.net/linux/rpm2html/search.php?query=fping
ftp://ftp.redhat.com/pub/contrib/libc6/SRPMS/fping-2.2b1-1.src.rpm
ftp://ftp.redhat.com/pub/contrib/libc6/RPMS/fping-2.2b1-1.i386.rpm
Note that the fping command must be setuid root to function. Note that the fping command must be setuid root to function.
check_game: check_game:
- Requires the qstat utility available from - Requires the qstat utility available from
http://www.qstat.org http://sourceforge.net/projects/qstat/
http://www.activesw.com/people/steve/qstat.html
Last tested on qstat 2.3d BETA Last tested on qstat 2.3d BETA
check_hpjd: check_hpjd:
- Requires the NET-SNMP package available from - Requires the NET-SNMP package available from
http://net-snmp.sourceforge.net http://net-snmp.sourceforge.net/
The snmpget binary is all that is required. The snmpget binary is all that is required.
check_ldap: check_ldap:
- Requires the LDAP libraries available from - Requires the LDAP libraries available from
http://www.openldap.org http://www.openldap.org/
Lib: libldap, liblber Lib: libldap, liblber
Redhat Source: openldap-1.2.9-6.i386.rpm, openldap-devel-1.2.9-6.i386.rpm Redhat Source: openldap-1.2.9-6.i386.rpm, openldap-devel-1.2.9-6.i386.rpm
check_mysql, check_mysql_query: check_mysql, check_mysql_query:
- Requires the MySQL libraries available from - Requires the MySQL libraries available from
http://www.mysql.org http://www.mysql.org/
Lib: libmysql, libmysqlclient Lib: libmysql, libmysqlclient
Redhat Powertools Source: mysql-3.20.32a-3.i386.rpm, mysql-devel-3.20.32a-3.i386.rpm (these seem to be broken, however) Redhat Powertools Source: mysql-3.20.32a-3.i386.rpm, mysql-devel-3.20.32a-3.i386.rpm (these seem to be broken, however)
RPMS from www.mysql.org work better RPMS from www.mysql.org work better
@ -43,37 +40,37 @@ check_mysql, check_mysql_query:
check_pqsql: check_pqsql:
- Requires the PostgreSQL libraries available from - Requires the PostgreSQL libraries available from
http://www.postgresql.org http://www.postgresql.org/
check_radius: check_radius:
- Requires the radiusclient library available from - Requires the radiusclient library available from
http://www.cityline.net/~lf/radius/ ftp://ftp.cityline.net/pub/radiusclient/
RPM (rpmfind): radiusclient-0.3.1-1, radiusclient-devel-0.3.1-1 RPM (rpmfind): radiusclient 0.3.2, radiusclient-devel-0.3.2
check_snmp: check_snmp:
- Requires the NET-SNMP package available from - Requires the NET-SNMP package available from
http://net-snmp.sourceforge.net http://net-snmp.sourceforge.net/
check_ifstatus/check_ifoperstatus check_ifstatus/check_ifoperstatus
- Requires Net::SNMP perl module - Requires Net::SNMP perl module
http://www.perl.com/CPAN/modules/by-authors/id/D/DT/DTOWN/ http://www.perl.com/CPAN/modules/by-authors/id/D/DT/DTOWN/
check_nwstat: check_nwstat:
- Requires MRTGEXT NLM for Novell Servers - Requires MRTGEXT NLM for Novell Servers
http://www.engr.wisc.edu/~drews/mrtg/ http://forge.novell.com/modules/xfmod/project/?mrtgext
check_nt: check_nt:
- Requires NSClient to run on the NT server to monitor - Requires NSClient to run on the NT server to monitor
http://nsclient.ready2run.nl/ http://nsclient.ready2run.nl/
check_ups: check_ups:
- Requires Network UPS Tools (>= 1.4) to run on the server to monitor - Requires Network UPS Tools (>= 1.4) to run on the server to monitor
http://www.networkupstools.org/ http://www.networkupstools.org/
OS Specific Issues OS Specific Issues
------------------ ------------------
HP-UX 11.11 HP-UX 11.11
You need to use the version of gcc provided by HP at version 3.3.3. You need to use the version of gcc provided by HP at version 3.3.3.
Also, you need GNU make 3.8 Also, you need GNU make 3.8

15
THANKS
View file

@ -18,9 +18,11 @@ Daniel Austin
Markus Baertschi Markus Baertschi
Bradley Baetz Bradley Baetz
Michael Bakker Michael Bakker
Nobuhiro Ban
Jeremy Baumgartner Jeremy Baumgartner
Andreas Behal Andreas Behal
Lutz Behnke Lutz Behnke
Marlo Bell
Simon Bellwood Simon Bellwood
Allan Bennett Allan Bennett
Guy Van Den Bergh Guy Van Den Bergh
@ -30,6 +32,7 @@ Tom De Blende
Eric Bollengier Eric Bollengier
Richard Brodie Richard Brodie
Matthew Brown Matthew Brown
Dick van den Burg
Jason Burnett Jason Burnett
Carlos Canau Carlos Canau
Jim Carroll Jim Carroll
@ -53,6 +56,7 @@ Paul Dlug
Andy Doran Andy Doran
Rainer Duffner Rainer Duffner
Ian Duggan Ian Duggan
Matthias Eble
Edwin Eefting Edwin Eefting
Mike Emigh Mike Emigh
Hans Engelen Hans Engelen
@ -64,10 +68,13 @@ Merijn Evertse
Karl Ewald Karl Ewald
Paul Farrall Paul Farrall
Reuben Farrelly Reuben Farrelly
Mark Favas
Duncan Ferguson
Paulo Fessel Paulo Fessel
Paulo Afonso Graner Fessel Paulo Afonso Graner Fessel
James Fidell James Fidell
Johan Fischer Johan Fischer
Felix Frank
Rick Frey Rick Frey
Matt Garrett Matt Garrett
Robby Giffin Robby Giffin
@ -77,6 +84,7 @@ Aravind Gottipati
Kev Green Kev Green
Steve Greenland Steve Greenland
Olaf Greis Olaf Greis
Chris Grim
Steven Grimm Steven Grimm
Jon Hallett Jon Hallett
Steve Hanselman Steve Hanselman
@ -85,6 +93,7 @@ Gunnar Hellekson
Johannes Herlitz Johannes Herlitz
Ian Holsman Ian Holsman
Peter Hoogendijk Peter Hoogendijk
Jason Hoos
Chester Hosey Chester Hosey
Bob Ingraham Bob Ingraham
Cire Iriarte Cire Iriarte
@ -108,6 +117,7 @@ Pedro Leite
Larry Low Larry Low
Jacob Lundqvist Jacob Lundqvist
Guenther Mair Guenther Mair
Pawel Malachowski
Michael Markstaller Michael Markstaller
John Marquart John Marquart
Ernst-Dieter Martin Ernst-Dieter Martin
@ -115,9 +125,11 @@ Jason Martin
Christopher Maser Christopher Maser
Mathieu Masseboeuf Mathieu Masseboeuf
Alexander Matey Alexander Matey
Ville Mattila
Richard Mayhew Richard Mayhew
Patrick McCormick Patrick McCormick
Mike McHenry Mike McHenry
Stefan Meier
Jan-Piet Mens Jan-Piet Mens
Sven Meyer Sven Meyer
Christian Mies Christian Mies
@ -166,6 +178,8 @@ Thomas Schimpke
Benjamin Schmid Benjamin Schmid
Henning Schmiedehausen Henning Schmiedehausen
Cove Schneider Cove Schneider
Enrico Scholz
Sebastian Schubert
Russell Scibetti Russell Scibetti
Noel Sebastien Noel Sebastien
Lonny Selinger Lonny Selinger
@ -174,6 +188,7 @@ Tom Shields
Sean Shore Sean Shore
Antony Simmonds Antony Simmonds
John Sivak John Sivak
Lars Stavholm
Nikolay Sturm Nikolay Sturm
David Sullivan David Sullivan
Kjell Sundtjonn Kjell Sundtjonn

1870
aclocal.m4 vendored

File diff suppressed because it is too large Load diff

View file

@ -1,9 +1,9 @@
#! /bin/sh #! /bin/sh
# Wrapper for compilers which do not understand `-c -o'. # Wrapper for compilers which do not understand `-c -o'.
scriptversion=2004-10-12.08 scriptversion=2005-05-14.22
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc. # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>. # Written by Tom Tromey <tromey@cygnus.com>.
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
@ -18,7 +18,7 @@ scriptversion=2004-10-12.08
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
@ -47,11 +47,11 @@ right script to run: please start by reading the file `INSTALL'.
Report bugs to <bug-automake@gnu.org>. Report bugs to <bug-automake@gnu.org>.
EOF EOF
exit 0 exit $?
;; ;;
-v | --v*) -v | --v*)
echo "compile $scriptversion" echo "compile $scriptversion"
exit 0 exit $?
;; ;;
esac esac

View file

@ -1,9 +1,9 @@
#! /bin/sh #! /bin/sh
# Attempt to guess a canonical system name. # Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. # 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
timestamp='2004-11-12' timestamp='2005-04-22'
# This file is free software; you can redistribute it and/or modify it # This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by # under the terms of the GNU General Public License as published by
@ -53,7 +53,7 @@ version="\
GNU config.guess ($timestamp) GNU config.guess ($timestamp)
Originally written by Per Bothner. Originally written by Per Bothner.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc. Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
@ -804,6 +804,9 @@ EOF
i*:UWIN*:*) i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin echo ${UNAME_MACHINE}-pc-uwin
exit 0 ;; exit 0 ;;
amd64:CYGWIN*:*:*)
echo x86_64-unknown-cygwin
exit 0 ;;
p*:CYGWIN*:*) p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin echo powerpcle-unknown-cygwin
exit 0 ;; exit 0 ;;
@ -1137,6 +1140,10 @@ EOF
# From seanf@swdc.stratus.com. # From seanf@swdc.stratus.com.
echo i860-stratus-sysv4 echo i860-stratus-sysv4
exit 0 ;; exit 0 ;;
i*86:VOS:*:*)
# From Paul.Green@stratus.com.
echo ${UNAME_MACHINE}-stratus-vos
exit 0 ;;
*:VOS:*:*) *:VOS:*:*)
# From Paul.Green@stratus.com. # From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos echo hppa1.1-stratus-vos
@ -1197,6 +1204,9 @@ EOF
*:QNX:*:4*) *:QNX:*:4*)
echo i386-pc-qnx echo i386-pc-qnx
exit 0 ;; exit 0 ;;
NSE-?:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
NSR-?:NONSTOP_KERNEL:*:*) NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE} echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
@ -1413,7 +1423,9 @@ This script, last modified $timestamp, has failed to recognize
the operating system you are using. It is advised that you the operating system you are using. It is advised that you
download the most up to date version of the config scripts from download the most up to date version of the config scripts from
ftp://ftp.gnu.org/pub/gnu/config/ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
and
http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
If the version you run ($0) is already up to date, please If the version you run ($0) is already up to date, please
send the following data and any information you think might be send the following data and any information you think might be

660
build-aux/config.rpath Executable file
View file

@ -0,0 +1,660 @@
#! /bin/sh
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
# Copyright 1996-2006 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# The first argument passed to this file is the canonical host specification,
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
# should be set by the caller.
#
# The set of defined variables is at the end of this script.
# Known limitations:
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
# than 256 bytes, otherwise the compiler driver will dump core. The only
# known workaround is to choose shorter directory names for the build
# directory and/or the installation directory.
# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
shrext=.so
host="$1"
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
# Code taken from libtool.m4's _LT_CC_BASENAME.
for cc_temp in $CC""; do
case $cc_temp in
compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
\-*) ;;
*) break;;
esac
done
cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
wl=
if test "$GCC" = yes; then
wl='-Wl,'
else
case "$host_os" in
aix*)
wl='-Wl,'
;;
darwin*)
case $cc_basename in
xlc*)
wl='-Wl,'
;;
esac
;;
mingw* | pw32* | os2*)
;;
hpux9* | hpux10* | hpux11*)
wl='-Wl,'
;;
irix5* | irix6* | nonstopux*)
wl='-Wl,'
;;
newsos6)
;;
linux*)
case $cc_basename in
icc* | ecc*)
wl='-Wl,'
;;
pgcc | pgf77 | pgf90)
wl='-Wl,'
;;
ccc*)
wl='-Wl,'
;;
como)
wl='-lopt='
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
wl='-Wl,'
;;
esac
;;
esac
;;
osf3* | osf4* | osf5*)
wl='-Wl,'
;;
sco3.2v5*)
;;
solaris*)
wl='-Wl,'
;;
sunos4*)
wl='-Qoption ld '
;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
wl='-Wl,'
;;
sysv4*MP*)
;;
unicos*)
wl='-Wl,'
;;
uts4*)
;;
esac
fi
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
hardcode_libdir_flag_spec=
hardcode_libdir_separator=
hardcode_direct=no
hardcode_minus_L=no
case "$host_os" in
cygwin* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
if test "$GCC" != yes; then
with_gnu_ld=no
fi
;;
interix*)
# we just hope/assume this is gcc and not c89 (= MSVC++)
with_gnu_ld=yes
;;
openbsd*)
with_gnu_ld=no
;;
esac
ld_shlibs=yes
if test "$with_gnu_ld" = yes; then
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
# Unlike libtool, we use -rpath here, not --rpath, since the documented
# option of GNU ld is called -rpath, not --rpath.
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
case "$host_os" in
aix3* | aix4* | aix5*)
# On AIX/PPC, the GNU linker is very broken
if test "$host_cpu" != ia64; then
ld_shlibs=no
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
# that the semantics of dynamic libraries on AmigaOS, at least up
# to version 4, is to share data among multiple programs linked
# with the same dynamic library. Since this doesn't match the
# behavior of shared libraries on other platforms, we cannot use
# them.
ld_shlibs=no
;;
beos*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
cygwin* | mingw* | pw32*)
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir'
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
interix3*)
hardcode_direct=no
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
linux*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
netbsd*)
;;
solaris*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
case `$LD -v 2>&1` in
*\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
ld_shlibs=no
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
else
ld_shlibs=no
fi
;;
esac
;;
sunos4*)
hardcode_direct=yes
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
esac
if test "$ld_shlibs" = no; then
hardcode_libdir_flag_spec=
fi
else
case "$host_os" in
aix3*)
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
hardcode_minus_L=yes
if test "$GCC" = yes; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
hardcode_direct=unsupported
fi
;;
aix4* | aix5*)
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
else
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[23]|aix4.[23].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
fi
done
;;
esac
fi
hardcode_direct=yes
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
case $host_os in aix4.[012]|aix4.[012].*)
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
;;
esac
fi
# Begin _LT_AC_SYS_LIBPATH_AIX.
echo 'int main () { return 0; }' > conftest.c
${CC} ${LDFLAGS} conftest.c -o conftest
aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
if test -z "$aix_libpath"; then
aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
fi
if test -z "$aix_libpath"; then
aix_libpath="/usr/lib:/lib"
fi
rm -f conftest.c conftest
# End _LT_AC_SYS_LIBPATH_AIX.
if test "$aix_use_runtimelinking" = yes; then
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
else
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
fi
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# see comment about different semantics on the GNU ld section
ld_shlibs=no
;;
bsdi[45]*)
;;
cygwin* | mingw* | pw32*)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec=' '
libext=lib
;;
darwin* | rhapsody*)
hardcode_direct=no
if test "$GCC" = yes ; then
:
else
case $cc_basename in
xlc*)
;;
*)
ld_shlibs=no
;;
esac
fi
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
freebsd1*)
ld_shlibs=no
;;
freebsd2.2*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
freebsd2*)
hardcode_direct=yes
hardcode_minus_L=yes
;;
freebsd* | kfreebsd*-gnu | dragonfly*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
hpux9*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
hpux10*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
fi
;;
hpux11*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
case $host_cpu in
hppa*64*|ia64*)
hardcode_direct=no
;;
*)
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
esac
fi
;;
irix5* | irix6* | nonstopux*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
netbsd*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
newsos6)
hardcode_direct=yes
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
openbsd*)
hardcode_direct=yes
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
else
case "$host_os" in
openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
fi
;;
os2*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
;;
osf3*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
osf4* | osf5*)
if test "$GCC" = yes; then
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
# Both cc and cxx compiler support -rpath directly
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_separator=:
;;
solaris*)
hardcode_libdir_flag_spec='-R$libdir'
;;
sunos4*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
sysv4)
case $host_vendor in
sni)
hardcode_direct=yes # is this really true???
;;
siemens)
hardcode_direct=no
;;
motorola)
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
;;
sysv4.3*)
;;
sysv4*MP*)
if test -d /usr/nec; then
ld_shlibs=yes
fi
;;
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
;;
sysv5* | sco3.2v5* | sco5v6*)
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
hardcode_libdir_separator=':'
;;
uts4*)
hardcode_libdir_flag_spec='-L$libdir'
;;
*)
ld_shlibs=no
;;
esac
fi
# Check dynamic linker characteristics
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
# Unlike libtool.m4, here we don't care about _all_ names of the library, but
# only about the one the linker finds when passed -lNAME. This is the last
# element of library_names_spec in libtool.m4, or possibly two of them if the
# linker has special search rules.
library_names_spec= # the last element of library_names_spec in libtool.m4
libname_spec='lib$name'
case "$host_os" in
aix3*)
library_names_spec='$libname.a'
;;
aix4* | aix5*)
library_names_spec='$libname$shrext'
;;
amigaos*)
library_names_spec='$libname.a'
;;
beos*)
library_names_spec='$libname$shrext'
;;
bsdi[45]*)
library_names_spec='$libname$shrext'
;;
cygwin* | mingw* | pw32*)
shrext=.dll
library_names_spec='$libname.dll.a $libname.lib'
;;
darwin* | rhapsody*)
shrext=.dylib
library_names_spec='$libname$shrext'
;;
dgux*)
library_names_spec='$libname$shrext'
;;
freebsd1*)
;;
kfreebsd*-gnu)
library_names_spec='$libname$shrext'
;;
freebsd* | dragonfly*)
case "$host_os" in
freebsd[123]*)
library_names_spec='$libname$shrext$versuffix' ;;
*)
library_names_spec='$libname$shrext' ;;
esac
;;
gnu*)
library_names_spec='$libname$shrext'
;;
hpux9* | hpux10* | hpux11*)
case $host_cpu in
ia64*)
shrext=.so
;;
hppa*64*)
shrext=.sl
;;
*)
shrext=.sl
;;
esac
library_names_spec='$libname$shrext'
;;
interix3*)
library_names_spec='$libname$shrext'
;;
irix5* | irix6* | nonstopux*)
library_names_spec='$libname$shrext'
case "$host_os" in
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
case $LD in
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
*) libsuff= shlibsuff= ;;
esac
;;
esac
;;
linux*oldld* | linux*aout* | linux*coff*)
;;
linux*)
library_names_spec='$libname$shrext'
;;
knetbsd*-gnu)
library_names_spec='$libname$shrext'
;;
netbsd*)
library_names_spec='$libname$shrext'
;;
newsos6)
library_names_spec='$libname$shrext'
;;
nto-qnx*)
library_names_spec='$libname$shrext'
;;
openbsd*)
library_names_spec='$libname$shrext$versuffix'
;;
os2*)
libname_spec='$name'
shrext=.dll
library_names_spec='$libname.a'
;;
osf3* | osf4* | osf5*)
library_names_spec='$libname$shrext'
;;
solaris*)
library_names_spec='$libname$shrext'
;;
sunos4*)
library_names_spec='$libname$shrext$versuffix'
;;
sysv4 | sysv4.3*)
library_names_spec='$libname$shrext'
;;
sysv4*MP*)
library_names_spec='$libname$shrext'
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
library_names_spec='$libname$shrext'
;;
uts4*)
library_names_spec='$libname$shrext'
;;
esac
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
# How to pass a linker flag through the compiler.
wl="$escaped_wl"
# Static library suffix (normally "a").
libext="$libext"
# Shared library suffix (normally "so").
shlibext="$shlibext"
# Format of library name prefix.
libname_spec="$escaped_libname_spec"
# Library names that the linker finds when passed -lNAME.
library_names_spec="$escaped_library_names_spec"
# Flag to hardcode \$libdir into a binary during linking.
# This must work even if \$libdir does not exist.
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
# Whether we need a single -rpath flag with a separated argument.
hardcode_libdir_separator="$hardcode_libdir_separator"
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
# resulting binary.
hardcode_direct="$hardcode_direct"
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
# resulting binary.
hardcode_minus_L="$hardcode_minus_L"
EOF

View file

@ -1,9 +1,9 @@
#! /bin/sh #! /bin/sh
# Configuration validation subroutine script. # Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. # 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
timestamp='2004-11-30' timestamp='2005-04-22'
# This file is (in principle) common to ALL GNU software. # This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software # The presence of a machine in this file suggests that SOME GNU software
@ -70,7 +70,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\ version="\
GNU config.sub ($timestamp) GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc. Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
@ -231,13 +231,14 @@ case $basic_machine in
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \ | am33_2.0 \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| bfin \
| c4x | clipper \ | c4x | clipper \
| d10v | d30v | dlx | dsp16xx \ | d10v | d30v | dlx | dsp16xx \
| fr30 | frv \ | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \ | i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \ | ip2k | iq2000 \
| m32r | m32rle | m68000 | m68k | m88k | mcore \ | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
| mips | mipsbe | mipseb | mipsel | mipsle \ | mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \ | mips16 \
| mips64 | mips64el \ | mips64 | mips64el \
@ -262,7 +263,8 @@ case $basic_machine in
| pyramid \ | pyramid \
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \ | sh64 | sh64le \
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \ | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b \
| strongarm \ | strongarm \
| tahoe | thumb | tic4x | tic80 | tron \ | tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \ | v850 | v850e \
@ -298,7 +300,7 @@ case $basic_machine in
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* \ | avr-* \
| bs2000-* \ | bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \ | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \ | d10v-* | d30v-* | dlx-* \
@ -310,7 +312,7 @@ case $basic_machine in
| ip2k-* | iq2000-* \ | ip2k-* | iq2000-* \
| m32r-* | m32rle-* \ | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \ | m88110-* | m88k-* | maxq-* | mcore-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \ | mips16-* \
| mips64-* | mips64el-* \ | mips64-* | mips64el-* \
@ -336,7 +338,8 @@ case $basic_machine in
| romp-* | rs6000-* \ | romp-* | rs6000-* \
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
| sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \ | tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \

View file

@ -1,9 +1,9 @@
#! /bin/sh #! /bin/sh
# depcomp - compile a program generating dependencies as side-effects # depcomp - compile a program generating dependencies as side-effects
scriptversion=2004-05-31.23 scriptversion=2005-07-09.11
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc. # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -17,8 +17,8 @@ scriptversion=2004-05-31.23
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02111-1307, USA. # 02110-1301, USA.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
@ -50,11 +50,11 @@ Environment variables:
Report bugs to <bug-automake@gnu.org>. Report bugs to <bug-automake@gnu.org>.
EOF EOF
exit 0 exit $?
;; ;;
-v | --v*) -v | --v*)
echo "depcomp $scriptversion" echo "depcomp $scriptversion"
exit 0 exit $?
;; ;;
esac esac
@ -287,36 +287,43 @@ tru64)
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then if test "$libtool" = yes; then
# Dependencies are output in .lo.d with libtool 1.4. # With Tru64 cc, shared objects can also be used to make a
# With libtool 1.5 they are output both in $dir.libs/$base.o.d # static library. This mecanism is used in libtool 1.4 series to
# and in $dir.libs/$base.o.d and $dir$base.o.d. We process the # handle both shared and static libraries in a single compilation.
# latter, because the former will be cleaned when $dir.libs is # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
# erased. #
tmpdepfile1="$dir.libs/$base.lo.d" # With libtool 1.5 this exception was removed, and libtool now
tmpdepfile2="$dir$base.o.d" # generates 2 separate objects for the 2 libraries. These two
tmpdepfile3="$dir.libs/$base.d" # compilations output dependencies in in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
tmpdepfile2=$dir$base.o.d # libtool 1.5
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD "$@" -Wc,-MD
else else
tmpdepfile1="$dir$base.o.d" tmpdepfile1=$dir$base.o.d
tmpdepfile2="$dir$base.d" tmpdepfile2=$dir$base.d
tmpdepfile3="$dir$base.d" tmpdepfile3=$dir$base.d
tmpdepfile4=$dir$base.d
"$@" -MD "$@" -MD
fi fi
stat=$? stat=$?
if test $stat -eq 0; then : if test $stat -eq 0; then :
else else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
exit $stat exit $stat
fi fi
if test -f "$tmpdepfile1"; then for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
tmpdepfile="$tmpdepfile1" do
elif test -f "$tmpdepfile2"; then test -f "$tmpdepfile" && break
tmpdepfile="$tmpdepfile2" done
else
tmpdepfile="$tmpdepfile3"
fi
if test -f "$tmpdepfile"; then if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the []. # That's a tab and a space in the [].
@ -460,7 +467,8 @@ cpp)
done done
"$@" -E | "$@" -E |
sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile" sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile" rm -f "$depfile"
echo "$object : \\" > "$depfile" echo "$object : \\" > "$depfile"

View file

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
# install - install a program, script, or datafile # install - install a program, script, or datafile
scriptversion=2004-12-17.09 scriptversion=2005-05-14.22
# This originates from X11R5 (mit/util/scripts/install.sh), which was # This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the # later released in X11R6 (xc/config/util/install.sh) with the
@ -109,7 +109,7 @@ while test -n "$1"; do
shift shift
continue;; continue;;
--help) echo "$usage"; exit 0;; --help) echo "$usage"; exit $?;;
-m) chmodcmd="$chmodprog $2" -m) chmodcmd="$chmodprog $2"
shift shift
@ -134,7 +134,7 @@ while test -n "$1"; do
shift shift
continue;; continue;;
--version) echo "$0 $scriptversion"; exit 0;; --version) echo "$0 $scriptversion"; exit $?;;
*) # When -d is used, all remaining arguments are directories to create. *) # When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified. # When -t is used, the destination is already specified.

View file

@ -1,9 +1,9 @@
#! /bin/sh #! /bin/sh
# Common stub for a few missing GNU programs while installing. # Common stub for a few missing GNU programs while installing.
scriptversion=2004-09-07.08 scriptversion=2005-06-08.21
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
# Free Software Foundation, Inc. # Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
@ -19,8 +19,8 @@ scriptversion=2004-09-07.08
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02111-1307, USA. # 02110-1301, USA.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
@ -87,12 +87,12 @@ Supported PROGRAM values:
yacc create \`y.tab.[ch]', if possible, from existing .[ch] yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Send bug reports to <bug-automake@gnu.org>." Send bug reports to <bug-automake@gnu.org>."
exit 0 exit $?
;; ;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version) -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)" echo "missing $scriptversion (GNU Automake)"
exit 0 exit $?
;; ;;
-*) -*)
@ -288,11 +288,18 @@ WARNING: \`$1' is $msg. You should only need it if
call might also be the consequence of using a buggy \`make' (AIX, call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site." the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then if test -z "$file"; then
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` # ... or it is the one specified with @setfilename ...
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi fi
# If the file does not exist, the user really needs makeinfo;
# let's fail without touching anything.
test -f $file || exit 1
touch $file touch $file
;; ;;

View file

@ -1,7 +1,31 @@
/* config.h.in. Generated from configure.in by autoheader. */ /* config.h.in. Generated from configure.in by autoheader. */
/* Define if you have the Andrew File System. */ /* Define this to an absolute name of <stdint.h>. */
#undef AFS #undef ABSOLUTE_STDINT_H
/* Define this to an absolute name of <unistd.h>. */
#undef ABSOLUTE_UNISTD_H
/* Define this to an absolute name of <wchar.h>. */
#undef ABSOLUTE_WCHAR_H
/* Define this to an absolute name of <wctype.h>. */
#undef ABSOLUTE_WCTYPE_H
/* Define to the number of bits in type 'ptrdiff_t'. */
#undef BITSIZEOF_PTRDIFF_T
/* Define to the number of bits in type 'sig_atomic_t'. */
#undef BITSIZEOF_SIG_ATOMIC_T
/* Define to the number of bits in type 'size_t'. */
#undef BITSIZEOF_SIZE_T
/* Define to the number of bits in type 'wchar_t'. */
#undef BITSIZEOF_WCHAR_T
/* Define to the number of bits in type 'wint_t'. */
#undef BITSIZEOF_WINT_T
/* URL of CGI programs */ /* URL of CGI programs */
#undef CGIURL #undef CGIURL
@ -26,10 +50,16 @@
/* Define to 1 for DGUX with <sys/dg_sys_info.h>. */ /* Define to 1 for DGUX with <sys/dg_sys_info.h>. */
#undef DGUX #undef DGUX
/* Define to 1 if // is a file system root distinct from /. */
#undef DOUBLE_SLASH_IS_DISTINCT_ROOT
/* Define to 1 if translation of program messages to the user's native /* Define to 1 if translation of program messages to the user's native
language is requested. */ language is requested. */
#undef ENABLE_NLS #undef ENABLE_NLS
/* Define as good substitute value for EOVERFLOW. */
#undef EOVERFLOW
/* Define on systems for which file names may have a so-called `drive letter' /* Define on systems for which file names may have a so-called `drive letter'
prefix, define this to compute the length of that prefix, including the prefix, define this to compute the length of that prefix, including the
colon. */ colon. */
@ -39,18 +69,18 @@
separator. */ separator. */
#undef FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR #undef FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
#if FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX /* Define if a drive letter prefix denotes a relative path if it is not
# define FILE_SYSTEM_PREFIX_LEN(Filename) \ followed by a file name component separator. */
((Filename)[0] && (Filename)[1] == ':' ? 2 : 0) #undef FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
#else
# define FILE_SYSTEM_PREFIX_LEN(Filename) 0
#endif
/* Define to 1 if the `getloadavg' function needs to be run setuid or setgid. /* Define to 1 if the `getloadavg' function needs to be run setuid or setgid.
*/ */
#undef GETLOADAVG_PRIVILEGED #undef GETLOADAVG_PRIVILEGED
/* Define to 1 if you have `alloca' after including <alloca.h>, a header that /* Define to 1 when using the gnulib module fcntl-safer. */
#undef GNULIB_FCNTL_SAFER
/* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
may be supplied by this distribution. */ may be supplied by this distribution. */
#undef HAVE_ALLOCA #undef HAVE_ALLOCA
@ -58,14 +88,11 @@
includes <alloca.h> only if HAVE_ALLOCA_H is defined. */ includes <alloca.h> only if HAVE_ALLOCA_H is defined. */
#undef HAVE_ALLOCA_H #undef HAVE_ALLOCA_H
/* Define to 1 if you have the `asprintf' function. */ /* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ASPRINTF #undef HAVE_ARPA_INET_H
/* Define to 1 if strtold conforms to C99. */ /* Define to 1 if you have the <bp-sym.h> header file. */
#undef HAVE_C99_STRTOLD #undef HAVE_BP_SYM_H
/* Define if system has C99 compatible vsnprintf */
#undef HAVE_C99_VSNPRINTF
/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the /* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
CoreFoundation framework. */ CoreFoundation framework. */
@ -85,57 +112,57 @@
*/ */
#undef HAVE_DCGETTEXT #undef HAVE_DCGETTEXT
/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if /* Define to 1 if you have the declaration of `freeaddrinfo', and to 0 if you
you don't. */
#undef HAVE_DECL_CLEARERR_UNLOCKED
/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
don't. */ don't. */
#undef HAVE_DECL_FEOF_UNLOCKED #undef HAVE_DECL_FREEADDRINFO
/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if /* Define to 1 if you have the declaration of `gai_strerror', and to 0 if you
you don't. */
#undef HAVE_DECL_FERROR_UNLOCKED
/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FFLUSH_UNLOCKED
/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FGETS_UNLOCKED
/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FPUTC_UNLOCKED
/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FPUTS_UNLOCKED
/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FREAD_UNLOCKED
/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_FWRITE_UNLOCKED
/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if
you don't. */
#undef HAVE_DECL_GETCHAR_UNLOCKED
/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
don't. */ don't. */
#undef HAVE_DECL_GETC_UNLOCKED #undef HAVE_DECL_GAI_STRERROR
/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if /* Define to 1 if you have the declaration of `getaddrinfo', and to 0 if you
you don't. */
#undef HAVE_DECL_PUTCHAR_UNLOCKED
/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you
don't. */ don't. */
#undef HAVE_DECL_PUTC_UNLOCKED #undef HAVE_DECL_GETADDRINFO
/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
*/
#undef HAVE_DECL_GETENV
/* Define to 1 if you have the declaration of `getnameinfo', and to 0 if you
don't. */
#undef HAVE_DECL_GETNAMEINFO
/* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
don't. */
#undef HAVE_DECL_INET_NTOP
/* Define to 1 if you have the declaration of `isblank', and to 0 if you
don't. */
#undef HAVE_DECL_ISBLANK
/* Define to 1 if you have the declaration of `snprintf', and to 0 if you
don't. */
#undef HAVE_DECL_SNPRINTF
/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
*/
#undef HAVE_DECL_STRDUP
/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
don't. */
#undef HAVE_DECL_STRERROR_R
/* Define to 1 if you have the declaration of `strncasecmp', and to 0 if you
don't. */
#undef HAVE_DECL_STRNCASECMP
/* Define to 1 if you have the declaration of `strndup', and to 0 if you
don't. */
#undef HAVE_DECL_STRNDUP
/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
don't. */
#undef HAVE_DECL_STRNLEN
/* Define to 1 if you have the declaration of `swapctl', and to 0 if you /* Define to 1 if you have the declaration of `swapctl', and to 0 if you
don't. */ don't. */
@ -145,6 +172,14 @@
don't. */ don't. */
#undef HAVE_DECL_SYSCONF #undef HAVE_DECL_SYSCONF
/* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you
don't. */
#undef HAVE_DECL_VSNPRINTF
/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you
don't. */
#undef HAVE_DECL_WCWIDTH
/* Define to 1 if you have the <dlfcn.h> header file. */ /* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H #undef HAVE_DLFCN_H
@ -169,17 +204,17 @@
/* Define to 1 if you have the `fs_stat_dev' function. */ /* Define to 1 if you have the `fs_stat_dev' function. */
#undef HAVE_FS_STAT_DEV #undef HAVE_FS_STAT_DEV
/* Define if struct statfs has the f_fstypename member. */ /* Define to 1 if you have the `gai_strerror' function. */
#undef HAVE_F_FSTYPENAME_IN_STATFS #undef HAVE_GAI_STRERROR
/* Does system provide RFC 2553/Posix getaddrinfo? */ /* Define to 1 if you have the `getaddrinfo' function. */
#undef HAVE_GETADDRINFO #undef HAVE_GETADDRINFO
/* Number of parameters to gethostbyname_r or 0 if not available */ /* Define to 1 if you have the `gethostbyname' function. */
#undef HAVE_GETHOSTBYNAME_R #undef HAVE_GETHOSTBYNAME
/* Set when getipnodebyname is available */ /* Define to 1 if you have the `gethostname' function. */
#undef HAVE_GETIPNODEBYNAME #undef HAVE_GETHOSTNAME
/* Define to 1 if you have the `getloadavg' function. */ /* Define to 1 if you have the `getloadavg' function. */
#undef HAVE_GETLOADAVG #undef HAVE_GETLOADAVG
@ -205,9 +240,23 @@
/* Define to 1 if you have the <gnutls/openssl.h> header file. */ /* Define to 1 if you have the <gnutls/openssl.h> header file. */
#undef HAVE_GNUTLS_OPENSSL_H #undef HAVE_GNUTLS_OPENSSL_H
/* Define to 1 if you have the `hasmntopt' function. */
#undef HAVE_HASMNTOPT
/* Define if you have the iconv() function. */ /* Define if you have the iconv() function. */
#undef HAVE_ICONV #undef HAVE_ICONV
/* Define to 1 if you have the `inet_ntop' function. */
#undef HAVE_INET_NTOP
/* Define to 1 if the compiler supports one of the keywords 'inline',
'__inline__', '__inline' and effectively inlines functions marked as such.
*/
#undef HAVE_INLINE
/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
#undef HAVE_INTMAX_T
/* Define to 1 if you have the <inttypes.h> header file. */ /* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H #undef HAVE_INTTYPES_H
@ -215,8 +264,17 @@
declares uintmax_t. */ declares uintmax_t. */
#undef HAVE_INTTYPES_H_WITH_UINTMAX #undef HAVE_INTTYPES_H_WITH_UINTMAX
/* Define to 1 if you have the `isblank' function. */ /* Define to 1 if <sys/socket.h> defines AF_INET. */
#undef HAVE_ISBLANK #undef HAVE_IPV4
/* Define to 1 if <sys/socket.h> defines AF_INET6. */
#undef HAVE_IPV6
/* Define to 1 if you have the `iswcntrl' function. */
#undef HAVE_ISWCNTRL
/* Define to 1 if you have the `iswctype' function. */
#undef HAVE_ISWCTYPE
/* Define to 1 if you have the <krb5.h> header file. */ /* Define to 1 if you have the <krb5.h> header file. */
#undef HAVE_KRB5_H #undef HAVE_KRB5_H
@ -251,9 +309,6 @@
/* Define to 1 if you have the `ldap' library (-lldap). */ /* Define to 1 if you have the `ldap' library (-lldap). */
#undef HAVE_LIBLDAP #undef HAVE_LIBLDAP
/* Define to 1 if you have the `lwres' library (-llwres). */
#undef HAVE_LIBLWRES
/* Define to 1 if you have the `pq' library (-lpq). */ /* Define to 1 if you have the `pq' library (-lpq). */
#undef HAVE_LIBPQ #undef HAVE_LIBPQ
@ -269,8 +324,14 @@
/* Define to 1 if you have the <locale.h> header file. */ /* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H #undef HAVE_LOCALE_H
/* Define to 1 if you have the <lwres/netdb.h> header file. */ /* Define if you have the 'long double' type. */
#undef HAVE_LWRES_NETDB_H #undef HAVE_LONG_DOUBLE
/* Define if you have the 'long long' type. */
#undef HAVE_LONG_LONG
/* Define to 1 if the system has the type `long long int'. */
#undef HAVE_LONG_LONG_INT
/* Define to 1 if you have the <mach/mach.h> header file. */ /* Define to 1 if you have the <mach/mach.h> header file. */
#undef HAVE_MACH_MACH_H #undef HAVE_MACH_MACH_H
@ -285,6 +346,12 @@
/* Define to 1 if you have the `mbrtowc' function. */ /* Define to 1 if you have the `mbrtowc' function. */
#undef HAVE_MBRTOWC #undef HAVE_MBRTOWC
/* Define to 1 if <wchar.h> declares mbstate_t. */
#undef HAVE_MBSTATE_T
/* Define to 1 if you have the `memchr' function. */
#undef HAVE_MEMCHR
/* Define to 1 if you have the `memmove' function. */ /* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE #undef HAVE_MEMMOVE
@ -294,9 +361,24 @@
/* Define to 1 if you have the `mempcpy' function. */ /* Define to 1 if you have the `mempcpy' function. */
#undef HAVE_MEMPCPY #undef HAVE_MEMPCPY
/* Define to 1 if <limits.h> defines the MIN and MAX macros. */
#undef HAVE_MINMAX_IN_LIMITS_H
/* Define to 1 if <sys/param.h> defines the MIN and MAX macros. */
#undef HAVE_MINMAX_IN_SYS_PARAM_H
/* Define to 1 if you have the <mntent.h> header file. */ /* Define to 1 if you have the <mntent.h> header file. */
#undef HAVE_MNTENT_H #undef HAVE_MNTENT_H
/* Defined if mysqlclient is found and can compile */
#undef HAVE_MYSQLCLIENT
/* Define to 1 if you have the <netdb.h> header file. */
#undef HAVE_NETDB_H
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the `next_dev' function. */ /* Define to 1 if you have the `next_dev' function. */
#undef HAVE_NEXT_DEV #undef HAVE_NEXT_DEV
@ -327,24 +409,23 @@
/* Define to 1 if you have the <pgsql/libpq-fe.h> header file. */ /* Define to 1 if you have the <pgsql/libpq-fe.h> header file. */
#undef HAVE_PGSQL_LIBPQ_FE_H #undef HAVE_PGSQL_LIBPQ_FE_H
/* Define to 1 if you have the `pipe' function. */
#undef HAVE_PIPE
/* Define to 1 if you have the `poll' function. */ /* Define to 1 if you have the `poll' function. */
#undef HAVE_POLL #undef HAVE_POLL
/* Define to 1 if you have the <postgresql/libpq-fe.h> header file. */ /* Define to 1 if you have the <postgresql/libpq-fe.h> header file. */
#undef HAVE_POSTGRESQL_LIBPQ_FE_H #undef HAVE_POSTGRESQL_LIBPQ_FE_H
/* Define if /proc/loadavg or similar exists */
#undef HAVE_PROC_LOADAVG
/* Define if we have /proc/meminfo */ /* Define if we have /proc/meminfo */
#undef HAVE_PROC_MEMINFO #undef HAVE_PROC_MEMINFO
/* Define to 1 if you have the `pstat_getdynamic' function. */ /* Define to 1 if you have the `pstat_getdynamic' function. */
#undef HAVE_PSTAT_GETDYNAMIC #undef HAVE_PSTAT_GETDYNAMIC
/* Define to 1 if your system has a GNU libc compatible `realloc' function, /* Define to 1 if the system has the type `ptrdiff_t'. */
and to 0 otherwise. */ #undef HAVE_PTRDIFF_T
#undef HAVE_REALLOC
/* Define to 1 if you have the <rsa.h> header file. */ /* Define to 1 if you have the <rsa.h> header file. */
#undef HAVE_RSA_H #undef HAVE_RSA_H
@ -352,12 +433,18 @@
/* Define to 1 if you have the `select' function. */ /* Define to 1 if you have the `select' function. */
#undef HAVE_SELECT #undef HAVE_SELECT
/* Define to 1 if you have the `setlocale' function. */
#undef HAVE_SETLOCALE
/* Define to 1 if you have the <signal.h> header file. */ /* Define to 1 if you have the <signal.h> header file. */
#undef HAVE_SIGNAL_H #undef HAVE_SIGNAL_H
/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
#undef HAVE_SIGNED_SIG_ATOMIC_T
/* Define to 1 if 'wchar_t' is a signed integer type. */
#undef HAVE_SIGNED_WCHAR_T
/* Define to 1 if 'wint_t' is a signed integer type. */
#undef HAVE_SIGNED_WINT_T
/* Define to 1 if you have the `snprintf' function. */ /* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF #undef HAVE_SNPRINTF
@ -389,30 +476,42 @@
/* Define to 1 if you have the `strdup' function. */ /* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP #undef HAVE_STRDUP
/* Define to 1 if you have the `strerror_r' function. */
#undef HAVE_STRERROR_R
/* Define to 1 if you have the <strings.h> header file. */ /* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H #undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */ /* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H #undef HAVE_STRING_H
/* Define to 1 if you have the `strncasecmp' function. */
#undef HAVE_STRNCASECMP
/* Define if you have the strndup() function and it works. */
#undef HAVE_STRNDUP
/* Define to 1 if you have the `strstr' function. */ /* Define to 1 if you have the `strstr' function. */
#undef HAVE_STRSTR #undef HAVE_STRSTR
/* Define to 1 if you have the `strtod' function. */
#undef HAVE_STRTOD
/* Define to 1 if you have the `strtol' function. */ /* Define to 1 if you have the `strtol' function. */
#undef HAVE_STRTOL #undef HAVE_STRTOL
/* Define to 1 if you have the `strtoul' function. */ /* Define to 1 if you have the `strtoul' function. */
#undef HAVE_STRTOUL #undef HAVE_STRTOUL
/* Define to 1 if the system has the type `struct addrinfo'. */
#undef HAVE_STRUCT_ADDRINFO
/* Define to 1 if `f_fstypename' is member of `struct fsstat'. */ /* Define to 1 if `f_fstypename' is member of `struct fsstat'. */
#undef HAVE_STRUCT_FSSTAT_F_FSTYPENAME #undef HAVE_STRUCT_FSSTAT_F_FSTYPENAME
/* Define to 1 if `n_un.n_name' is member of `struct nlist'. */ /* Define to 1 if `n_un.n_name' is member of `struct nlist'. */
#undef HAVE_STRUCT_NLIST_N_UN_N_NAME #undef HAVE_STRUCT_NLIST_N_UN_N_NAME
/* Define to 1 if `f_fstypename' is member of `struct statfs'. */
#undef HAVE_STRUCT_STATFS_F_FSTYPENAME
/* Define to 1 if `se_nblks' is member of `struct swapent'. */ /* Define to 1 if `se_nblks' is member of `struct swapent'. */
#undef HAVE_STRUCT_SWAPENT_SE_NBLKS #undef HAVE_STRUCT_SWAPENT_SE_NBLKS
@ -431,6 +530,9 @@
/* Define to 1 if you have the <syslog.h> header file. */ /* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H #undef HAVE_SYSLOG_H
/* Define to 1 if you have the <sys/bitypes.h> header file. */
#undef HAVE_SYS_BITYPES_H
/* Define to 1 if you have the <sys/filsys.h> header file. */ /* Define to 1 if you have the <sys/filsys.h> header file. */
#undef HAVE_SYS_FILSYS_H #undef HAVE_SYS_FILSYS_H
@ -440,8 +542,8 @@
/* Define to 1 if you have the <sys/fs_types.h> header file. */ /* Define to 1 if you have the <sys/fs_types.h> header file. */
#undef HAVE_SYS_FS_TYPES_H #undef HAVE_SYS_FS_TYPES_H
/* Define to 1 if you have the <sys/loadavg.h> header file. */ /* Define to 1 if you have the <sys/inttypes.h> header file. */
#undef HAVE_SYS_LOADAVG_H #undef HAVE_SYS_INTTYPES_H
/* Define to 1 if you have the <sys/mntent.h> header file. */ /* Define to 1 if you have the <sys/mntent.h> header file. */
#undef HAVE_SYS_MNTENT_H #undef HAVE_SYS_MNTENT_H
@ -491,17 +593,20 @@
/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H #undef HAVE_SYS_WAIT_H
/* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
#undef HAVE_UINTMAX_T
/* Define to 1 if you have the <uio.h> header file. */ /* Define to 1 if you have the <uio.h> header file. */
#undef HAVE_UIO_H #undef HAVE_UIO_H
/* Define to 1 if you have the `uname' function. */
#undef HAVE_UNAME
/* Define to 1 if you have the <unistd.h> header file. */ /* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H #undef HAVE_UNISTD_H
/* Define if you have the 'unsigned long long' type. */ /* Define to 1 if the system has the type `unsigned long long int'. */
#undef HAVE_UNSIGNED_LONG_LONG #undef HAVE_UNSIGNED_LONG_LONG_INT
/* Define to 1 if you have the `vasnprintf' function. */
#undef HAVE_VASNPRINTF
/* Define to 1 if you have the `vasprintf' function. */ /* Define to 1 if you have the `vasprintf' function. */
#undef HAVE_VASPRINTF #undef HAVE_VASPRINTF
@ -515,15 +620,33 @@
/* Define to 1 if you have the <wchar.h> header file. */ /* Define to 1 if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H #undef HAVE_WCHAR_H
/* Define if you have the 'wchar_t' type. */
#undef HAVE_WCHAR_T
/* Define to 1 if you have the `wcrtomb' function. */ /* Define to 1 if you have the `wcrtomb' function. */
#undef HAVE_WCRTOMB #undef HAVE_WCRTOMB
/* Define to 1 if you have the `wcscoll' function. */ /* Define to 1 if you have the `wcscoll' function. */
#undef HAVE_WCSCOLL #undef HAVE_WCSCOLL
/* Define to 1 if you have the `wcslen' function. */
#undef HAVE_WCSLEN
/* Define to 1 if you have the <wctype.h> header file. */ /* Define to 1 if you have the <wctype.h> header file. */
#undef HAVE_WCTYPE_H #undef HAVE_WCTYPE_H
/* Define to 1 if you have the `wcwidth' function. */
#undef HAVE_WCWIDTH
/* Define to 1 if you have the <winsock2.h> header file. */
#undef HAVE_WINSOCK2_H
/* Define if you have the 'wint_t' type. */
#undef HAVE_WINT_T
/* Define to 1 if you have the <ws2tcpip.h> header file. */
#undef HAVE_WS2TCPIP_H
/* Define to 1 if you have the <x509.h> header file. */ /* Define to 1 if you have the <x509.h> header file. */
#undef HAVE_X509_H #undef HAVE_X509_H
@ -570,9 +693,15 @@
#undef MOUNTED_GETMNTENT2 #undef MOUNTED_GETMNTENT2
/* Define if there is a function named getmntinfo for reading the list of /* Define if there is a function named getmntinfo for reading the list of
mounted file systems. (4.4BSD, Darwin) */ mounted file systems and it returns an array of 'struct statfs'. (4.4BSD,
Darwin) */
#undef MOUNTED_GETMNTINFO #undef MOUNTED_GETMNTINFO
/* Define if there is a function named getmntinfo for reading the list of
mounted file systems and it returns an array of 'struct statvfs'. (NetBSD
3.0) */
#undef MOUNTED_GETMNTINFO2
/* Define if there is a function named listmntent that can be used to list all /* Define if there is a function named listmntent that can be used to list all
mounted file systems. (UNICOS) */ mounted file systems. (UNICOS) */
#undef MOUNTED_LISTMNTENT #undef MOUNTED_LISTMNTENT
@ -589,6 +718,9 @@
on `HAVE_STRUCT_NLIST_N_UN_N_NAME */ on `HAVE_STRUCT_NLIST_N_UN_N_NAME */
#undef NLIST_NAME_UNION #undef NLIST_NAME_UNION
/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#undef NO_MINUS_C_MINUS_O
/* path and args for nslookup */ /* path and args for nslookup */
#undef NSLOOKUP_COMMAND #undef NSLOOKUP_COMMAND
@ -658,9 +790,6 @@
/* Define if packet count must precede host */ /* Define if packet count must precede host */
#undef PING_PACKETS_FIRST #undef PING_PACKETS_FIRST
/* Location of /proc/loadavg */
#undef PROC_LOADAVG
/* path to /proc/meminfo if name changes */ /* path to /proc/meminfo if name changes */
#undef PROC_MEMINFO #undef PROC_MEMINFO
@ -679,12 +808,28 @@
/* Variable list for sscanf of 'ps' output */ /* Variable list for sscanf of 'ps' output */
#undef PS_VARLIST #undef PS_VARLIST
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'ptrdiff_t'. */
#undef PTRDIFF_T_SUFFIX
/* Forced workaround on redhat in spopen */ /* Forced workaround on redhat in spopen */
#undef REDHAT_SPOPEN_ERROR #undef REDHAT_SPOPEN_ERROR
/* Define as the return type of signal handlers (`int' or `void'). */ /* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE #undef RETSIGTYPE
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'sig_atomic_t'. */
#undef SIG_ATOMIC_T_SUFFIX
/* Define as the maximum value of type 'size_t', if the system doesn't define
it. */
#undef SIZE_MAX
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'size_t'. */
#undef SIZE_T_SUFFIX
/* Define type of socket size */ /* Define type of socket size */
#undef SOCKET_SIZE_TYPE #undef SOCKET_SIZE_TYPE
@ -733,6 +878,9 @@
/* Define to 1 if you have the ANSI C header files. */ /* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS #undef STDC_HEADERS
/* Define to 1 if strerror_r returns char *. */
#undef STRERROR_R_CHAR_P
/* Define to 1 on System V Release 4. */ /* Define to 1 on System V Release 4. */
#undef SVR4 #undef SVR4
@ -767,17 +915,20 @@
/* Define if using OpenSSL libraries */ /* Define if using OpenSSL libraries */
#undef USE_OPENSSL #undef USE_OPENSSL
/* Define to 1 if you want getc etc. to use unlocked I/O if available.
Unlocked I/O can improve performance in unithreaded apps, but it is not
safe for multithreaded apps. */
#undef USE_UNLOCKED_IO
/* Version number of package */ /* Version number of package */
#undef VERSION #undef VERSION
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'wchar_t'. */
#undef WCHAR_T_SUFFIX
/* path and arguments for invoking 'who' */ /* path and arguments for invoking 'who' */
#undef WHO_COMMAND #undef WHO_COMMAND
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'wint_t'. */
#undef WINT_T_SUFFIX
/* Define to 1 if on AIX 3. /* Define to 1 if on AIX 3.
System headers sometimes define this. System headers sometimes define this.
We just want to avoid a redefinition error message. */ We just want to avoid a redefinition error message. */
@ -785,23 +936,14 @@
# undef _ALL_SOURCE # undef _ALL_SOURCE
#endif #endif
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Enable GNU extensions on systems that have them. */ /* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE #ifndef _GNU_SOURCE
# undef _GNU_SOURCE # undef _GNU_SOURCE
#endif #endif
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* Define to 1 if on MINIX. */ /* Define to 1 if on MINIX. */
#undef _MINIX #undef _MINIX
/* OSF needs this for getaddrinfo */
#undef _OSF_SOURCE
/* Define to 2 if the system does not provide POSIX.1 features except with /* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */ this defined. */
#undef _POSIX_1_SOURCE #undef _POSIX_1_SOURCE
@ -819,6 +961,9 @@
#ifndef _POSIX_PTHREAD_SEMANTICS #ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS
#endif #endif
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Define to rpl_ if the getopt replacement functions and variables should be /* Define to rpl_ if the getopt replacement functions and variables should be
used. */ used. */
@ -845,9 +990,15 @@
#undef inline #undef inline
#endif #endif
/* Define to long or long long if <stdint.h> and <inttypes.h> don't define. */
#undef intmax_t
/* Define to rpl_malloc if the replacement function should be used. */ /* Define to rpl_malloc if the replacement function should be used. */
#undef malloc #undef malloc
/* Define to a type if <wchar.h> does not define. */
#undef mbstate_t
/* Define to `int' if <sys/types.h> does not define. */ /* Define to `int' if <sys/types.h> does not define. */
#undef pid_t #undef pid_t
@ -884,9 +1035,6 @@
/* Define to rpl_re_syntax_options if the replacement should be used. */ /* Define to rpl_re_syntax_options if the replacement should be used. */
#undef re_syntax_options #undef re_syntax_options
/* Define to rpl_realloc if the replacement function should be used. */
#undef realloc
/* Define to rpl_regcomp if the replacement should be used. */ /* Define to rpl_regcomp if the replacement should be used. */
#undef regcomp #undef regcomp
@ -909,6 +1057,8 @@
/* type to use in place of socklen_t if not defined */ /* type to use in place of socklen_t if not defined */
#undef socklen_t #undef socklen_t
/* Define to unsigned long or unsigned long long if <stdint.h> and /* Define as a signed type of the same size as size_t. */
<inttypes.h> don't define. */ #undef ssize_t
#undef uintmax_t
/* Define to rpl_strnlen if the replacement function should be used. */
#undef strnlen

View file

@ -2,28 +2,13 @@
# Output a system dependent set of variables, describing how to set the # Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable. # run time search path of shared libraries in an executable.
# #
# Copyright 1996-2002 Free Software Foundation, Inc. # Copyright 1996-2006 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001 # Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
# #
# This program is free software; you can redistribute it and/or modify # This file is free software; the Free Software Foundation gives
# it under the terms of the GNU General Public License as published by # unlimited permission to copy and/or distribute it, with or without
# the Free Software Foundation; either version 2 of the License, or # modifications, as long as this notice is preserved.
# (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.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# #
# The first argument passed to this file is the canonical host specification, # The first argument passed to this file is the canonical host specification,
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
@ -34,43 +19,89 @@
# #
# The set of defined variables is at the end of this script. # The set of defined variables is at the end of this script.
# All known linkers require a `.a' archive for static linking (except M$VC, # Known limitations:
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
# than 256 bytes, otherwise the compiler driver will dump core. The only
# known workaround is to choose shorter directory names for the build
# directory and/or the installation directory.
# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib'). # which needs '.lib').
libext=a libext=a
shlibext= shrext=.so
host="$1" host="$1"
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
# Code taken from libtool.m4's _LT_CC_BASENAME.
for cc_temp in $CC""; do
case $cc_temp in
compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
\-*) ;;
*) break;;
esac
done
cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
wl= wl=
if test "$GCC" = yes; then if test "$GCC" = yes; then
wl='-Wl,' wl='-Wl,'
else else
case "$host_os" in case "$host_os" in
aix3* | aix4* | aix5*) aix*)
wl='-Wl,' wl='-Wl,'
;; ;;
darwin*)
case $cc_basename in
xlc*)
wl='-Wl,'
;;
esac
;;
mingw* | pw32* | os2*)
;;
hpux9* | hpux10* | hpux11*) hpux9* | hpux10* | hpux11*)
wl='-Wl,' wl='-Wl,'
;; ;;
irix5* | irix6*) irix5* | irix6* | nonstopux*)
wl='-Wl,' wl='-Wl,'
;; ;;
newsos6)
;;
linux*) linux*)
echo '__INTEL_COMPILER' > conftest.$ac_ext case $cc_basename in
if $CC -E conftest.$ac_ext >/dev/null | grep __INTEL_COMPILER >/dev/null icc* | ecc*)
then wl='-Wl,'
: ;;
else pgcc | pgf77 | pgf90)
# Intel icc wl='-Wl,'
wl='-Qoption,ld,' ;;
fi ccc*)
wl='-Wl,'
;;
como)
wl='-lopt='
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
wl='-Wl,'
;;
esac
;;
esac
;; ;;
osf3* | osf4* | osf5*) osf3* | osf4* | osf5*)
wl='-Wl,' wl='-Wl,'
;; ;;
sco3.2v5*)
;;
solaris*) solaris*)
wl='-Wl,' wl='-Wl,'
;; ;;
@ -78,15 +109,20 @@ else
wl='-Qoption ld ' wl='-Qoption ld '
;; ;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
if test "x$host_vendor" = xsni; then wl='-Wl,'
wl='-LD' ;;
else sysv4*MP*)
wl='-Wl,' ;;
fi unicos*)
wl='-Wl,'
;;
uts4*)
;; ;;
esac esac
fi fi
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
hardcode_libdir_flag_spec= hardcode_libdir_flag_spec=
hardcode_libdir_separator= hardcode_libdir_separator=
hardcode_direct=no hardcode_direct=no
@ -101,6 +137,10 @@ case "$host_os" in
with_gnu_ld=no with_gnu_ld=no
fi fi
;; ;;
interix*)
# we just hope/assume this is gcc and not c89 (= MSVC++)
with_gnu_ld=yes
;;
openbsd*) openbsd*)
with_gnu_ld=no with_gnu_ld=no
;; ;;
@ -108,10 +148,18 @@ esac
ld_shlibs=yes ld_shlibs=yes
if test "$with_gnu_ld" = yes; then if test "$with_gnu_ld" = yes; then
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
# Unlike libtool, we use -rpath here, not --rpath, since the documented
# option of GNU ld is called -rpath, not --rpath.
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
case "$host_os" in case "$host_os" in
aix3* | aix4* | aix5*) aix3* | aix4* | aix5*)
# On AIX, the GNU linker is very broken # On AIX/PPC, the GNU linker is very broken
ld_shlibs=no if test "$host_cpu" != ia64; then
ld_shlibs=no
fi
;; ;;
amigaos*) amigaos*)
hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_flag_spec='-L$libdir'
@ -120,12 +168,12 @@ if test "$with_gnu_ld" = yes; then
# that the semantics of dynamic libraries on AmigaOS, at least up # that the semantics of dynamic libraries on AmigaOS, at least up
# to version 4, is to share data among multiple programs linked # to version 4, is to share data among multiple programs linked
# with the same dynamic library. Since this doesn't match the # with the same dynamic library. Since this doesn't match the
# behavior of shared libraries on other platforms, we can use # behavior of shared libraries on other platforms, we cannot use
# them. # them.
ld_shlibs=no ld_shlibs=no
;; ;;
beos*) beos*)
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
: :
else else
ld_shlibs=no ld_shlibs=no
@ -135,29 +183,61 @@ if test "$with_gnu_ld" = yes; then
# hardcode_libdir_flag_spec is actually meaningless, as there is # hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs. # no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_flag_spec='-L$libdir'
;; if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
solaris* | sysv5*)
if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no
elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
: :
else else
ld_shlibs=no ld_shlibs=no
fi fi
;; ;;
interix3*)
hardcode_direct=no
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
linux*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
netbsd*)
;;
solaris*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
case `$LD -v 2>&1` in
*\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
ld_shlibs=no
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
else
ld_shlibs=no
fi
;;
esac
;;
sunos4*) sunos4*)
hardcode_direct=yes hardcode_direct=yes
;; ;;
*) *)
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
: :
else else
ld_shlibs=no ld_shlibs=no
fi fi
;; ;;
esac esac
if test "$ld_shlibs" = yes; then if test "$ld_shlibs" = no; then
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_flag_spec=
fi fi
else else
case "$host_os" in case "$host_os" in
@ -188,6 +268,7 @@ else
break break
fi fi
done done
;;
esac esac
fi fi
hardcode_direct=yes hardcode_direct=yes
@ -207,15 +288,30 @@ else
hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator= hardcode_libdir_separator=
fi fi
;;
esac esac
fi fi
# Begin _LT_AC_SYS_LIBPATH_AIX.
echo 'int main () { return 0; }' > conftest.c
${CC} ${LDFLAGS} conftest.c -o conftest
aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
if test -z "$aix_libpath"; then
aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
fi
if test -z "$aix_libpath"; then
aix_libpath="/usr/lib:/lib"
fi
rm -f conftest.c conftest
# End _LT_AC_SYS_LIBPATH_AIX.
if test "$aix_use_runtimelinking" = yes; then if test "$aix_use_runtimelinking" = yes; then
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
else else
if test "$host_cpu" = ia64; then if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
else else
hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
fi fi
fi fi
;; ;;
@ -225,6 +321,8 @@ else
# see comment about different semantics on the GNU ld section # see comment about different semantics on the GNU ld section
ld_shlibs=no ld_shlibs=no
;; ;;
bsdi[45]*)
;;
cygwin* | mingw* | pw32*) cygwin* | mingw* | pw32*)
# When not using gcc, we currently assume that we are using # When not using gcc, we currently assume that we are using
# Microsoft Visual C++. # Microsoft Visual C++.
@ -234,7 +332,21 @@ else
libext=lib libext=lib
;; ;;
darwin* | rhapsody*) darwin* | rhapsody*)
hardcode_direct=yes hardcode_direct=no
if test "$GCC" = yes ; then
:
else
case $cc_basename in
xlc*)
;;
*)
ld_shlibs=no
;;
esac
fi
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;; ;;
freebsd1*) freebsd1*)
ld_shlibs=no ld_shlibs=no
@ -247,18 +359,46 @@ else
hardcode_direct=yes hardcode_direct=yes
hardcode_minus_L=yes hardcode_minus_L=yes
;; ;;
freebsd*) freebsd* | kfreebsd*-gnu | dragonfly*)
hardcode_libdir_flag_spec='-R$libdir' hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes hardcode_direct=yes
;; ;;
hpux9* | hpux10* | hpux11*) hpux9*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=: hardcode_libdir_separator=:
hardcode_direct=yes hardcode_direct=yes
hardcode_minus_L=yes # Not in the search PATH, but as the default # hardcode_minus_L: Not really in the search PATH,
# location of the library. # but as the default location of the library.
hardcode_minus_L=yes
;; ;;
irix5* | irix6*) hpux10*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
fi
;;
hpux11*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
case $host_cpu in
hppa*64*|ia64*)
hardcode_direct=no
;;
*)
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
esac
fi
;;
irix5* | irix6* | nonstopux*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=: hardcode_libdir_separator=:
;; ;;
@ -303,8 +443,6 @@ else
fi fi
hardcode_libdir_separator=: hardcode_libdir_separator=:
;; ;;
sco3.2v5*)
;;
solaris*) solaris*)
hardcode_libdir_flag_spec='-R$libdir' hardcode_libdir_flag_spec='-R$libdir'
;; ;;
@ -314,33 +452,33 @@ else
hardcode_minus_L=yes hardcode_minus_L=yes
;; ;;
sysv4) sysv4)
if test "x$host_vendor" = xsno; then case $host_vendor in
hardcode_direct=yes # is this really true??? sni)
else hardcode_direct=yes # is this really true???
hardcode_direct=no # Motorola manual says yes, but my tests say they lie ;;
fi siemens)
hardcode_direct=no
;;
motorola)
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
;; ;;
sysv4.3*) sysv4.3*)
;; ;;
sysv5*)
hardcode_libdir_flag_spec=
;;
uts4*)
hardcode_libdir_flag_spec='-L$libdir'
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
sysv4*MP*) sysv4*MP*)
if test -d /usr/nec; then if test -d /usr/nec; then
ld_shlibs=yes ld_shlibs=yes
fi fi
;; ;;
sysv4.2uw2*) sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
hardcode_direct=yes
hardcode_minus_L=no
;; ;;
sysv5uw7* | unixware7*) sysv5* | sco3.2v5* | sco5v6*)
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
hardcode_libdir_separator=':'
;;
uts4*)
hardcode_libdir_flag_spec='-L$libdir'
;; ;;
*) *)
ld_shlibs=no ld_shlibs=no
@ -349,136 +487,145 @@ else
fi fi
# Check dynamic linker characteristics # Check dynamic linker characteristics
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
# Unlike libtool.m4, here we don't care about _all_ names of the library, but
# only about the one the linker finds when passed -lNAME. This is the last
# element of library_names_spec in libtool.m4, or possibly two of them if the
# linker has special search rules.
library_names_spec= # the last element of library_names_spec in libtool.m4
libname_spec='lib$name' libname_spec='lib$name'
sys_lib_dlsearch_path_spec="/lib /usr/lib"
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
case "$host_os" in case "$host_os" in
aix3*) aix3*)
shlibext=so library_names_spec='$libname.a'
;; ;;
aix4* | aix5*) aix4* | aix5*)
shlibext=so library_names_spec='$libname$shrext'
;; ;;
amigaos*) amigaos*)
shlibext=ixlibrary library_names_spec='$libname.a'
;; ;;
beos*) beos*)
shlibext=so library_names_spec='$libname$shrext'
;; ;;
bsdi4*) bsdi[45]*)
shlibext=so library_names_spec='$libname$shrext'
sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
;; ;;
cygwin* | mingw* | pw32*) cygwin* | mingw* | pw32*)
case $GCC,$host_os in shrext=.dll
yes,cygwin*) library_names_spec='$libname.dll.a $libname.lib'
shlibext=dll.a
;;
yes,mingw*)
shlibext=dll
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
;;
yes,pw32*)
shlibext=dll
;;
*)
shlibext=dll
;;
esac
;; ;;
darwin* | rhapsody*) darwin* | rhapsody*)
shlibext=dylib shrext=.dylib
library_names_spec='$libname$shrext'
;;
dgux*)
library_names_spec='$libname$shrext'
;; ;;
freebsd1*) freebsd1*)
;; ;;
freebsd*) kfreebsd*-gnu)
shlibext=so library_names_spec='$libname$shrext'
;;
freebsd* | dragonfly*)
case "$host_os" in
freebsd[123]*)
library_names_spec='$libname$shrext$versuffix' ;;
*)
library_names_spec='$libname$shrext' ;;
esac
;; ;;
gnu*) gnu*)
shlibext=so library_names_spec='$libname$shrext'
;; ;;
hpux9* | hpux10* | hpux11*) hpux9* | hpux10* | hpux11*)
shlibext=sl case $host_cpu in
ia64*)
shrext=.so
;;
hppa*64*)
shrext=.sl
;;
*)
shrext=.sl
;;
esac
library_names_spec='$libname$shrext'
;; ;;
irix5* | irix6*) interix3*)
shlibext=so library_names_spec='$libname$shrext'
;;
irix5* | irix6* | nonstopux*)
library_names_spec='$libname$shrext'
case "$host_os" in case "$host_os" in
irix5*) irix5* | nonstopux*)
libsuff= shlibsuff= libsuff= shlibsuff=
;; ;;
*) *)
case $LD in case $LD in
*-32|*"-32 ") libsuff= shlibsuff= ;; *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
*-n32|*"-n32 ") libsuff=32 shlibsuff=N32 ;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
*-64|*"-64 ") libsuff=64 shlibsuff=64 ;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
*) libsuff= shlibsuff= ;; *) libsuff= shlibsuff= ;;
esac esac
;; ;;
esac esac
sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
;; ;;
linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) linux*oldld* | linux*aout* | linux*coff*)
;; ;;
linux-gnu*) linux*)
shlibext=so library_names_spec='$libname$shrext'
;;
knetbsd*-gnu)
library_names_spec='$libname$shrext'
;; ;;
netbsd*) netbsd*)
shlibext=so library_names_spec='$libname$shrext'
;; ;;
newsos6) newsos6)
shlibext=so library_names_spec='$libname$shrext'
;;
nto-qnx*)
library_names_spec='$libname$shrext'
;; ;;
openbsd*) openbsd*)
shlibext=so library_names_spec='$libname$shrext$versuffix'
;; ;;
os2*) os2*)
libname_spec='$name' libname_spec='$name'
shlibext=dll shrext=.dll
library_names_spec='$libname.a'
;; ;;
osf3* | osf4* | osf5*) osf3* | osf4* | osf5*)
shlibext=so library_names_spec='$libname$shrext'
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
;;
sco3.2v5*)
shlibext=so
;; ;;
solaris*) solaris*)
shlibext=so library_names_spec='$libname$shrext'
;; ;;
sunos4*) sunos4*)
shlibext=so library_names_spec='$libname$shrext$versuffix'
;; ;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) sysv4 | sysv4.3*)
shlibext=so library_names_spec='$libname$shrext'
case "$host_vendor" in
motorola)
sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
;;
esac
;;
uts4*)
shlibext=so
;;
dgux*)
shlibext=so
;; ;;
sysv4*MP*) sysv4*MP*)
if test -d /usr/nec; then library_names_spec='$libname$shrext'
shlibext=so ;;
fi sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
library_names_spec='$libname$shrext'
;;
uts4*)
library_names_spec='$libname$shrext'
;; ;;
esac esac
sed_quote_subst='s/\(["`$\\]\)/\\\1/g' sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_sys_lib_search_path_spec=`echo "X$sys_lib_search_path_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_sys_lib_dlsearch_path_spec=`echo "X$sys_lib_dlsearch_path_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
# How to pass a linker flag through the compiler. # How to pass a linker flag through the compiler.
wl="$escaped_wl" wl="$escaped_wl"
@ -489,6 +636,12 @@ libext="$libext"
# Shared library suffix (normally "so"). # Shared library suffix (normally "so").
shlibext="$shlibext" shlibext="$shlibext"
# Format of library name prefix.
libname_spec="$escaped_libname_spec"
# Library names that the linker finds when passed -lNAME.
library_names_spec="$escaped_library_names_spec"
# Flag to hardcode \$libdir into a binary during linking. # Flag to hardcode \$libdir into a binary during linking.
# This must work even if \$libdir does not exist. # This must work even if \$libdir does not exist.
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec" hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
@ -504,10 +657,4 @@ hardcode_direct="$hardcode_direct"
# resulting binary. # resulting binary.
hardcode_minus_L="$hardcode_minus_L" hardcode_minus_L="$hardcode_minus_L"
# Compile-time system search path for libraries
sys_lib_search_path_spec="$escaped_sys_lib_search_path_spec"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec="$escaped_sys_lib_dlsearch_path_spec"
EOF EOF

View file

@ -1,5 +1,5 @@
// Base code taken from http://www-h.eng.cam.ac.uk/help/tpl/unix/fork.html /* Base code taken from http://www-h.eng.cam.ac.uk/help/tpl/unix/fork.html
// Fix for redhat suggested by Ptere Pramberger, peter@pramberger.at * Fix for redhat suggested by Ptere Pramberger, peter@pramberger.at */
#include <unistd.h> #include <unistd.h>
#include <sys/wait.h> #include <sys/wait.h>
#include <stdio.h> #include <stdio.h>
@ -25,43 +25,43 @@ int main(){
printf("can't fork\n"); printf("can't fork\n");
_exit(-1); _exit(-1);
case 0 : // this is the code the child runs case 0 : /* this is the code the child runs */
close(1); // close stdout close(1); /* close stdout */
// pipefd[1] is for writing to the pipe. We want the output /* pipefd[1] is for writing to the pipe. We want the output
// that used to go to the standard output (file descriptor 1) * that used to go to the standard output (file descriptor 1)
// to be written to the pipe. The following command does this, * to be written to the pipe. The following command does this,
// creating a new file descripter 1 (the lowest available) * creating a new file descripter 1 (the lowest available)
// that writes where pipefd[1] goes. * that writes where pipefd[1] goes. */
dup (pipefd[1]); // points pipefd at file descriptor dup (pipefd[1]); /* points pipefd at file descriptor */
// the child isn't going to read from the pipe, so /* the child isn't going to read from the pipe, so
// pipefd[0] can be closed * pipefd[0] can be closed */
close (pipefd[0]); close (pipefd[0]);
//These are the commands to run, with success commented. dig and nslookup only problems /* These are the commands to run, with success commented. dig and nslookup only problems */
//execl ("/bin/date","date",0); // 100% /*execl ("/bin/date","date",0);*/ /* 100% */
//execl ("/bin/cat", "cat", "/etc/hosts", 0); // 100% /*execl ("/bin/cat", "cat", "/etc/hosts", 0);*/ /* 100% */
//execl ("/usr/bin/dig", "dig", "redhat.com", 0); // 69% /*execl ("/usr/bin/dig", "dig", "redhat.com", 0);*/ /* 69% */
//execl("/bin/sleep", "sleep", "1", 0); // 100% /*execl("/bin/sleep", "sleep", "1", 0);*/ /* 100% */
execl ("/usr/bin/nslookup","nslookup","redhat.com",0); // 90% (after 100 tests), 40% (after 10 tests) execl ("/usr/bin/nslookup","nslookup","redhat.com",0); /* 90% (after 100 tests), 40% (after 10 tests) */
//execl ("/bin/ping","ping","-c","1","localhost",0); // 100% /*execl ("/bin/ping","ping","-c","1","localhost",0);*/ /* 100% */
//execl ("/bin/ping","ping","-c","1","192.168.10.32",0); // 100% /*execl ("/bin/ping","ping","-c","1","192.168.10.32",0);*/ /* 100% */
_exit(0); _exit(0);
default: // this is the code the parent runs default: /* this is the code the parent runs */
close(0); // close stdin close(0); /* close stdin */
// Set file descriptor 0 (stdin) to read from the pipe /* Set file descriptor 0 (stdin) to read from the pipe */
dup (pipefd[0]); dup (pipefd[0]);
// the parent isn't going to write to the pipe /* the parent isn't going to write to the pipe */
close (pipefd[1]); close (pipefd[1]);
// Now read from the pipe /* Now read from the pipe */
fgets(str, 1023, stdin); fgets(str, 1023, stdin);
//printf("1st line output is %s\n", str); /*printf("1st line output is %s\n", str);*/
//while (!childtermd); // Uncomment this line to fix /*while (!childtermd);*/ /* Uncomment this line to fix */
died= wait(&status); died= wait(&status);
//printf("died=%d status=%d\n", died, status); /*printf("died=%d status=%d\n", died, status);*/
if (died > 0) _exit(0); if (died > 0) _exit(0);
else _exit(1); else _exit(1);
} }
@ -71,7 +71,7 @@ void
popen_sigchld_handler (int signo) popen_sigchld_handler (int signo)
{ {
if (signo == SIGCHLD) { if (signo == SIGCHLD) {
//printf("Caught sigchld\n"); /*printf("Caught sigchld\n");*/
childtermd = 1; childtermd = 1;
} }
} }

27387
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -1,8 +1,10 @@
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_REVISION ($Revision: 1.197 $) AC_REVISION ($Revision: 1.213 $)
AC_PREREQ(2.58) AC_PREREQ(2.59)
AC_INIT(nagios-plugins,1.4.5) AC_INIT(nagios-plugins,1.4.8)
AC_CONFIG_SRCDIR(NPTest.pm) AC_CONFIG_SRCDIR(NPTest.pm)
AC_CONFIG_FILES(gl/Makefile)
AC_CONFIG_AUX_DIR(build-aux)
AM_INIT_AUTOMAKE([1.8.3]) AM_INIT_AUTOMAKE([1.8.3])
AM_CONFIG_HEADER(config.h) AM_CONFIG_HEADER(config.h)
AC_CANONICAL_HOST AC_CANONICAL_HOST
@ -13,34 +15,40 @@ AC_SUBST(RELEASE)
AC_PREFIX_DEFAULT(/usr/local/nagios) AC_PREFIX_DEFAULT(/usr/local/nagios)
dnl Deprecated configure options dnl Deprecated configure options
AC_ARG_WITH(nagios_user,,
AC_MSG_ERROR([--with-nagios-user is a deprecated option]))
AC_ARG_WITH(nagios_group,,
AC_MSG_ERROR([--with-nagios-group is a deprecated option]))
dnl Figure out how to invoke "install" and what install options to use.
AC_PROG_INSTALL dnl Append user (-o), group (-g), mode (-m) to install command
dnl There is an assumption that this is possible with ./configure's chosen install command
extra_install_args=""
AC_ARG_WITH(nagios_user,
ACX_HELP_STRING([--with-nagios-user=USER],
[Installs executables with this user. Defaults to install user]),
extra_install_args="-o $withval")
AC_ARG_WITH(nagios_group,
ACX_HELP_STRING([--with-nagios-group=GROUP],
[Installs executables with this group. Defaults to install user]),
extra_install_args="$extra_install_args -g $withval")
AC_ARG_WITH(world_permissions,
ACX_HELP_STRING([--without-world-permissions],
[Installs executables without world permissions]))
if test "x$with_world_permissions" = xno ; then
extra_install_args="$extra_install_args -m 0550"
fi
INSTALL="$INSTALL $extra_install_args"
INSTALL_STRIP_PROGRAM="$INSTALL_STRIP_PROGRAM $extra_install_args"
AC_SUBST(INSTALL) AC_SUBST(INSTALL)
dnl Must come very early on due to coreutils requirement
dnl Takes care of AC_GNU_SOURCE, AC_AIX and AC_MINIX
gl_USE_SYSTEM_EXTENSIONS
AC_PROG_CC AC_PROG_CC
AC_PROG_CPP gl_EARLY
AC_PROG_GCC_TRADITIONAL AC_PROG_GCC_TRADITIONAL
AC_PROG_LIBTOOL AC_PROG_LIBTOOL
AC_PROG_MAKE_SET AM_PROG_CC_C_O
AC_PROG_AWK
AC_FUNC_MALLOC
AC_FUNC_REALLOC
AC_FUNC_ERROR_AT_LINE AC_FUNC_ERROR_AT_LINE
AC_CONFIG_LIBOBJ_DIR(lib)
AC_FUNC_GETLOADAVG([lib])
ifdef([AC_FUNC_STRTOD],[AC_FUNC_STRTOD],[AM_FUNC_STRTOD]) ifdef([AC_FUNC_STRTOD],[AC_FUNC_STRTOD],[AM_FUNC_STRTOD])
PLUGIN_TEST=`echo $srcdir/plugins/t/*.t|sed -e 's,\.*/plugins/,,g'` PLUGIN_TEST=`echo $srcdir/plugins/t/*.t|sed -e 's,\.*/plugins/,,g'`
@ -128,15 +136,6 @@ dnl the order should allow locally installed versions to override distros' ones
OPENSSL_DIRS="/usr /usr/local /usr/slocal /usr/local/openssl /usr/local/ssl \ OPENSSL_DIRS="/usr /usr/local /usr/slocal /usr/local/openssl /usr/local/ssl \
/opt /opt/openssl" /opt /opt/openssl"
dnl
dnl Check for miscellaneous stuff
dnl
case $host_vender-$host_os in
osf*)
AC_DEFINE(_OSF_SOURCE,1,[OSF needs this for getaddrinfo])
;;
esac
dnl dnl
dnl Checks for libraries. dnl Checks for libraries.
@ -156,7 +155,7 @@ AC_SUBST(MATHLIBS)
dnl Check for libtap, to run perl-like tests dnl Check for libtap, to run perl-like tests
AC_CHECK_LIB(tap, plan_tests, AC_CHECK_LIB(tap, plan_tests,
EXTRA_TEST=test_utils EXTRA_TEST="test_utils test_disk"
AC_SUBST(EXTRA_TEST) AC_SUBST(EXTRA_TEST)
) )
@ -242,40 +241,20 @@ fi
LIBS="$_SAVEDLIBS" LIBS="$_SAVEDLIBS"
dnl Check for mysql libraries dnl Check for mysql libraries
dnl Default is to search path for mysql_config np_mysqlclient
AC_ARG_WITH(mysql, if test $with_mysql = "no" ; then
ACX_HELP_STRING([--with-mysql=DIR], AC_MSG_WARN([Skipping mysql plugin])
[Compiles mysql plugins. Expects DIR/bin/mysql_config]), AC_MSG_WARN([install mysql client libs to compile this plugin (see REQUIREMENTS).])
with_mysql=$withval, else
with_mysql=yes) EXTRAS="$EXTRA check_mysql check_mysql_query"
if test $with_mysql != "no" ; then MYSQLINCLUDE="$np_mysql_include"
if test -x $with_mysql/bin/mysql_config ; then MYSQLLIBS="$np_mysql_libs"
MYSQLCONFIG="$with_mysql/bin/mysql_config" MYSQLCFLAGS="$np_mysql_cflags"
else AC_SUBST(MYSQLINCLUDE)
AC_PATH_PROG(MYSQLCONFIG, mysql_config) AC_SUBST(MYSQLLIBS)
fi AC_SUBST(MYSQLCFLAGS)
if test -z "$MYSQLCONFIG"; then
with_mysql="not found"
AC_MSG_WARN([Skipping mysql plugin])
AC_MSG_WARN([install mysql client libs to compile this plugin (see REQUIREMENTS).])
else
with_mysql=$MYSQLCONFIG
EXTRAS="$EXTRAS check_mysql check_mysql_query"
MYSQLINCLUDE=`$MYSQLCONFIG --include`
# Mysql 3 does not support --include. --cflags should be sufficient
if test $? -ne 0 ; then
MYSQLINCLUDE=""
fi
MYSQLLIBS=`$MYSQLCONFIG --libs`
MYSQLCFLAGS=`$MYSQLCONFIG --cflags`
AC_SUBST(MYSQLINCLUDE)
AC_SUBST(MYSQLLIBS)
AC_SUBST(MYSQLCFLAGS)
fi
fi fi
AC_CHECK_HEADERS(unistd.h)
dnl Check for AF_INET6 support - unistd.h required for Darwin dnl Check for AF_INET6 support - unistd.h required for Darwin
AC_CACHE_CHECK([for IPv6 support], with_ipv6, [ AC_CACHE_CHECK([for IPv6 support], with_ipv6, [
AC_TRY_COMPILE([#ifdef HAVE_UNISTD_H AC_TRY_COMPILE([#ifdef HAVE_UNISTD_H
@ -297,108 +276,6 @@ if test x"$with_ipv6" != xno ; then
AC_DEFINE(USE_IPV6,1,[Enable IPv6 support]) AC_DEFINE(USE_IPV6,1,[Enable IPv6 support])
fi fi
dnl #########################################################################
dnl Check if Posix getaddrinfo() is available. It is also possible to use
dnl the version from the lwres library distributed with BIND.
dnl #########################################################################
AC_ARG_ENABLE([emulate-getaddrinfo],
ACX_HELP_STRING([--enable-emulate-getaddrinfo],
[enable getaddrinfo emulation (default=no)]),
,
enable_emulate_getaddrinfo=no)
AC_ARG_WITH(lwres,
ACX_HELP_STRING([--with-lwres=DIR],
[use lwres library for getaddrinfo (default=no)]),
,
with_lwres=no)
dnl ## enable force to test getaddrinfo.c
if test x$enable_emulate_getaddrinfo = xforce ; then
enable_emulate_getaddrinfo=yes
have_getaddrinfo=no
else
have_getaddrinfo=no
if test x$with_lwres != xno ; then
if test "$with_lwres" != yes ; then
CPPFLAGS="-I${with_lwres}/include $CPPFLAGS"
LDFLAGS="-L${with_lwres}/lib $LDFLAGS"
fi
AC_CHECK_HEADERS(lwres/netdb.h, ,
[AC_MSG_ERROR([cannot find <lwres/netdb.h>])])
AC_CHECK_LIB(lwres, lwres_getaddrinfo, ,
[AC_MSG_ERROR([cannot find the lwres library])],
-lnsl -lpthread)
have_getaddrinfo=yes
fi
if test x$have_getaddrinfo != xyes ; then
AC_SEARCH_LIBS(getaddrinfo, socket resolv bind nsl c_r cr, have_getaddrinfo=yes)
fi
dnl # Special nonsense for systems that actually have getaddrinfo but
dnl # redefine the name to something else, e.g. OSF
if test x$have_getaddrinfo != xyes ; then
AC_MSG_CHECKING(if getaddrinfo is redefined in netdb.h)
AC_TRY_LINK([
# include <netdb.h>
], [
struct addrinfo hints, *res;
int err;
err = getaddrinfo ("host", "service", &hints, &res);
], [
have_getaddrinfo=yes
AC_MSG_RESULT(yes)
], [AC_MSG_RESULT(no)])
fi
fi
if test x$have_getaddrinfo != xno ; then
if test x$enable_emulate_getaddrinfo != xno ; then
AC_MSG_ERROR([getaddrinfo found but emulate-getaddrinfo was enabled])
fi
AC_DEFINE(HAVE_GETADDRINFO, 1,
[Does system provide RFC 2553/Posix getaddrinfo?])
else
if test x$enable_emulate_getaddrinfo != xyes ; then
dnl AC_MSG_ERROR([getaddrinfo not found: try --with-lwres or --enable-emulate-getaddrinfo])
enable_emulate_getaddrinfo=yes
AC_MSG_WARN([enabling getaddrinfo emulation])
fi
EXTRA_NETOBJS="$EXTRA_NETOBJS getaddrinfo.o"
fi
if test x"$enable_emulate_getaddrinfo" != xno ; then
have_resolver=no
dnl Try for getipnodebyname
AC_SEARCH_LIBS(getipnodebyname, resolv bind nsl c_r cr, have_resolver=yes)
if test x"$have_resolver" != xno ; then
AC_DEFINE(HAVE_GETIPNODEBYNAME, 1,
[Set when getipnodebyname is available])
fi
dnl Try for gethostbyname_r
if test x"$have_resolver" = xno ; then
AC_SEARCH_LIBS(gethostbyname_r, resolv bind nsl c_r cr,
[have_resolver=yes
ACX_WHICH_GETHOSTBYNAME_R])
fi
dnl Try for gethostbyname
if test x"$have_resolver" = xno ; then
if test x"$enable_pthreads" != xno ; then
AC_MSG_WARN([using threads but cannot find gethostbyname_r or getipnodebyname])
fi
AC_SEARCH_LIBS(gethostbyname, resolv bind nsl, ,
[AC_MSG_ERROR([cannot find gethostbyname])])
fi
EXTRA_NETOBJS="$EXTRA_NETOBJS gethostbyname.o"
fi
dnl Checks for Kerberos. Must come before openssl checks for Redhat EL 3 dnl Checks for Kerberos. Must come before openssl checks for Redhat EL 3
AC_CHECK_HEADERS(krb5.h,FOUNDINCLUDE=yes,FOUNDINCLUDE=no) AC_CHECK_HEADERS(krb5.h,FOUNDINCLUDE=yes,FOUNDINCLUDE=no)
@ -516,11 +393,10 @@ dnl
dnl Checks for header files. dnl Checks for header files.
dnl dnl
AC_HEADER_STDC
AC_HEADER_TIME AC_HEADER_TIME
AC_HEADER_SYS_WAIT AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(signal.h strings.h string.h syslog.h uio.h errno.h sys/types.h sys/time.h sys/socket.h sys/loadavg.h sys/un.h sys/poll.h) AC_CHECK_HEADERS(signal.h syslog.h uio.h errno.h sys/time.h sys/socket.h sys/un.h sys/poll.h)
AC_CHECK_HEADERS(features.h stdarg.h sys/unistd.h ctype.h stdlib.h) AC_CHECK_HEADERS(features.h stdarg.h sys/unistd.h ctype.h)
dnl Checks for typedefs, structures, and compiler characteristics. dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST AC_C_CONST
@ -547,37 +423,6 @@ else
fi fi
fi fi
AC_CHECK_FUNCS(vsnprintf snprintf asprintf vasprintf)
AC_CACHE_CHECK([for C99 vsnprintf],ac_cv_HAVE_C99_VSNPRINTF,[
AC_TRY_RUN([
#include <sys/types.h>
#include <stdarg.h>
void foo(const char *format, ...) {
va_list ap;
int len;
char buf[5];
va_start(ap, format);
len = vsnprintf(buf, 0, format, ap);
va_end(ap);
if (len != 5) exit(1);
va_start(ap, format);
len = vsnprintf(0, 0, format, ap);
va_end(ap);
if (len != 5) exit(1);
if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1);
exit(0);
}
main() { foo("hello"); }
],
ac_cv_HAVE_C99_VSNPRINTF=yes,ac_cv_HAVE_C99_VSNPRINTF=no,ac_cv_HAVE_C99_VSNPRINTF=cross)])
if test x"$ac_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
AC_DEFINE(HAVE_C99_VSNPRINTF,1,[Define if system has C99 compatible vsnprintf])
fi
AC_TRY_COMPILE([#include <sys/time.h>], AC_TRY_COMPILE([#include <sys/time.h>],
[struct timeval *tv; [struct timeval *tv;
struct timezone *tz;], struct timezone *tz;],
@ -590,7 +435,7 @@ AC_TRY_COMPILE([#include <sys/time.h>],
AC_DEFINE(NEED_GETTIMEOFDAY,1,[Define if gettimeofday is needed]))) AC_DEFINE(NEED_GETTIMEOFDAY,1,[Define if gettimeofday is needed])))
dnl Checks for library functions. dnl Checks for library functions.
AC_CHECK_FUNCS(memmove select socket strdup strstr strtod strtol strtoul floor) AC_CHECK_FUNCS(memmove select socket strdup strstr strtol strtoul floor)
AC_CHECK_FUNCS(poll) AC_CHECK_FUNCS(poll)
AC_MSG_CHECKING(return type of socket size) AC_MSG_CHECKING(return type of socket size)
@ -606,24 +451,6 @@ AC_TRY_COMPILE([#include <stdlib.h>
AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type , AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type ,
[Define type of socket size]) [Define type of socket size])
AC_ARG_WITH(proc-loadavg,
ACX_HELP_STRING([--with-proc-loadavg=PATH],
[path to /proc/loadavg or equivalent]),
ac_cv_proc_loadavg=$withval)
AC_MSG_CHECKING([for /proc/loadavg])
if test -n "$ac_cv_proc_loadavg"; then
AC_MSG_RESULT([(command line) $ac_cv_proc_loadavg])
elif test -f "/proc/loadavg"; then
AC_MSG_RESULT([found /proc/loadavg])
ac_cv_proc_loadavg="/proc/loadavg"
else
AC_MSG_RESULT([no])
fi
if test -n "$ac_cv_proc_loadavg"; then
AC_DEFINE(HAVE_PROC_LOADAVG,1,[Define if /proc/loadavg or similar exists])
AC_DEFINE_UNQUOTED(PROC_LOADAVG,"/proc/loadavg",[Location of /proc/loadavg])
fi
dnl #### Process table test dnl #### Process table test
@ -654,30 +481,16 @@ if test -n "$PS_COMMAND" && test -n "$PS_FORMAT" && test -n "$PS_COLS" && test -
ac_cv_ps_cols="$PS_COLS" ac_cv_ps_cols="$PS_COLS"
AC_MSG_RESULT([(command-line) $ac_cv_ps_command]) AC_MSG_RESULT([(command-line) $ac_cv_ps_command])
dnl Now using the pst3/kmem hack for solaris systems to avoid truncation dnl Using /usr/ucb/ps on Solaris systems, to avoid truncation
elif test "$ac_cv_uname_s" = "SunOS"; then dnl Limitation that command name is not available
# elif test "$ac_cv_uname_s" = "SunOS" && /usr/ucb/ps -alxwwn 2>/dev/null | \
# this is a very, very ugly hack, to hardcode the location for plugins egrep -i ["^ *F +UID +PID +PPID +%C +PRI +NI +SZ +RSS +WCHAN +S +TT +TIME +COMMAND"] > /dev/null
# then
if test "$libexecdir" = '${exec_prefix}/libexec'; then ac_cv_ps_varlist="[&procuid,&procpid,&procppid,&procpcpu,&procvsz,&procrss,procstat,&pos]"
if test "$exec_prefix" = "NONE"; then ac_cv_ps_command="/usr/ucb/ps -alxwwn"
if test "$prefix" = "NONE"; then ac_cv_ps_format=["%*s %d %d %d %d %*d %*d %d %d%*[ 0123456789abcdef]%[OSRZT]%*s %*s %n"]
pst3="$ac_default_prefix/libexec/pst3"
else
pst3="$prefix/libexec/pst3"
fi
else
pst3="$exec_prefix/libexec/pst3"
fi
else
pst3="$libexecdir/pst3"
fi
ac_cv_ps_command="$pst3"
ac_cv_ps_format="%s %d %d %d %d %f %s %n"
ac_cv_ps_varlist="[procstat,&procuid,&procppid,&procvsz,&procrss,&procpcpu,procprog,&pos]"
ac_cv_ps_cols=8 ac_cv_ps_cols=8
AC_MSG_RESULT([using nagios-plugins internal ps for solaris]) AC_MSG_RESULT([$ac_cv_ps_command])
EXTRAS_ROOT="$EXTRAS_ROOT pst3"
dnl Some gnu/linux systems (debian for one) don't like -axwo and need axwo. dnl Some gnu/linux systems (debian for one) don't like -axwo and need axwo.
dnl so test for this first... dnl so test for this first...
@ -931,7 +744,7 @@ if test -n "$ac_cv_ps_varlist" ; then
AC_DEFINE_UNQUOTED(PS_COLS,$ac_cv_ps_cols, AC_DEFINE_UNQUOTED(PS_COLS,$ac_cv_ps_cols,
[Number of columns in ps command]) [Number of columns in ps command])
EXTRAS="$EXTRAS check_procs check_nagios" EXTRAS="$EXTRAS check_procs check_nagios"
if echo "$ac_cv_ps_varlist" | grep -q "procetime"; then if echo "$ac_cv_ps_varlist" | grep "procetime" >/dev/null; then
AC_DEFINE(PS_USES_PROCETIME,"yes", AC_DEFINE(PS_USES_PROCETIME,"yes",
[Whether the ps utility uses the "procetime" field]) [Whether the ps utility uses the "procetime" field])
fi fi
@ -1439,7 +1252,7 @@ then
elif [$PATH_TO_SWAPINFO -dfM 2>/dev/null | egrep -i "^TYPE +AVAIL +USED +FREE" >/dev/null] elif [$PATH_TO_SWAPINFO -dfM 2>/dev/null | egrep -i "^TYPE +AVAIL +USED +FREE" >/dev/null]
then then
ac_cv_have_swap=yes ac_cv_have_swap=yes
ac_cv_swap_command="$PATH_TO_SWAPINFO -dfM", ac_cv_swap_command="$PATH_TO_SWAPINFO -dfM"
ac_cv_swap_format=["%*s %f %*d %f"] ac_cv_swap_format=["%*s %f %*d %f"]
ac_cv_swap_conv=1024 ac_cv_swap_conv=1024
AC_MSG_RESULT([using HP-UX format swapinfo]) AC_MSG_RESULT([using HP-UX format swapinfo])
@ -1615,21 +1428,6 @@ elif test -f ../plugins/check_nt.c ; then
EXTRAS="$EXTRAS check_nt" EXTRAS="$EXTRAS check_nt"
fi fi
AC_MSG_CHECKING(for va_list)
AC_TRY_COMPILE([#ifdef __STDC__
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#else
#include <sys/types.h>
#include <stdio.h>
#include <varargs.h>
#endif],
[va_list args;],
[AC_MSG_RESULT(yes)],
[NEED_VA_LIST=-DNEED_VA_LIST
AC_SUBST(NEED_VA_LIST)
AC_MSG_RESULT(no)])
case $host in case $host in
*bsd*) *bsd*)
@ -1682,13 +1480,16 @@ elif test "$ac_cv_enable_redhat_pthread_workaround" = "yes" ; then
fi fi
dnl External libraries - see ACKNOWLEDGEMENTS dnl External libraries - see ACKNOWLEDGEMENTS
np_COREUTILS gl_INIT
np_CURL
dnl Some helpful common compile errors checked here
if test "$ac_cv_uname_s" = 'SunOS' -a "$ac_cv_prog_ac_ct_AR" = 'false' ; then
AC_MSG_ERROR(No ar found for Solaris - is /usr/ccs/bin in PATH?)
fi
AC_OUTPUT( AC_OUTPUT(
Makefile Makefile
lib/Makefile lib/Makefile
m4/Makefile
plugins/Makefile plugins/Makefile
lib/tests/Makefile lib/tests/Makefile
plugins-root/Makefile plugins-root/Makefile
@ -1722,19 +1523,16 @@ dnl ACX_FEATURE([with],[snmpgetnext-command])
dnl ACX_FEATURE([with],[ssh-command]) dnl ACX_FEATURE([with],[ssh-command])
dnl ACX_FEATURE([with],[uptime-command]) dnl ACX_FEATURE([with],[uptime-command])
dnl ACX_FEATURE([with],[proc-loadavg])
dnl ACX_FEATURE([with],[proc-meminfo]) dnl ACX_FEATURE([with],[proc-meminfo])
dnl ACX_FEATURE([with],[ps-command]) dnl ACX_FEATURE([with],[ps-command])
dnl ACX_FEATURE([with],[ps-format]) dnl ACX_FEATURE([with],[ps-format])
dnl ACX_FEATURE([with],[ps-cols]) dnl ACX_FEATURE([with],[ps-cols])
dnl ACX_FEATURE([with],[ps-varlist]) dnl ACX_FEATURE([with],[ps-varlist])
ACX_FEATURE([with],[lwres])
ACX_FEATURE([with],[ipv6]) ACX_FEATURE([with],[ipv6])
ACX_FEATURE([with],[mysql]) ACX_FEATURE([with],[mysql])
ACX_FEATURE([with],[openssl]) ACX_FEATURE([with],[openssl])
ACX_FEATURE([with],[gnutls]) ACX_FEATURE([with],[gnutls])
ACX_FEATURE([enable],[emulate-getaddrinfo])
ACX_FEATURE([with],[perl]) ACX_FEATURE([with],[perl])
ACX_FEATURE([with],[cgiurl]) ACX_FEATURE([with],[cgiurl])
ACX_FEATURE([with],[trusted-path]) ACX_FEATURE([with],[trusted-path])

View file

@ -1,87 +0,0 @@
/README.TXT/1.4/Thu Jan 27 02:27:13 2005//Tr1_4_5
/check_adptraid.sh/1.1/Sun Feb 9 14:20:30 2003//Tr1_4_5
/check_apache.pl/1.1.1.1/Thu Feb 28 06:42:53 2002//Tr1_4_5
/check_apc_ups.pl/1.2/Wed Aug 14 19:02:31 2002//Tr1_4_5
/check_appletalk.pl/1.1/Tue Feb 18 04:05:01 2003//Tr1_4_5
/check_arping.pl/1.1/Thu Jan 27 04:44:29 2005//Tr1_4_5
/check_asterisk.pl/1.1/Tue Feb 1 04:19:31 2005//Tr1_4_5
/check_axis.sh/1.2/Mon May 26 10:09:23 2003//Tr1_4_5
/check_backup.pl/1.1/Sun Apr 7 05:13:57 2002//Tr1_4_5
/check_bgpstate.pl/1.2/Sun Feb 23 17:10:39 2003//Tr1_4_5
/check_breeze.pl/1.1/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_cluster.c/1.1/Tue Jun 18 01:05:26 2002//Tr1_4_5
/check_cluster2.c/1.1/Fri Mar 12 03:40:57 2004//Tr1_4_5
/check_compaq_insight.pl/1.1/Sun Feb 9 14:20:30 2003//Tr1_4_5
/check_cpqarray.c/1.1/Thu Jan 27 04:46:08 2005//Tr1_4_5
/check_digitemp.pl/1.1/Thu Aug 1 04:46:01 2002//Tr1_4_5
/check_dlswcircuit.pl/1.1.1.1/Thu Feb 28 06:42:53 2002//Tr1_4_5
/check_dns_random.pl/1.2/Wed Jan 29 05:27:20 2003//Tr1_4_5
/check_email_loop.pl/1.5/Tue Nov 29 23:21:06 2005//Tr1_4_5
/check_fan_cpq_present/1.1/Thu Jan 27 04:52:58 2005//Tr1_4_5
/check_fan_fsc_present/1.1/Thu Jan 27 04:53:21 2005//Tr1_4_5
/check_flexlm.pl/1.1/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_frontpage/1.1/Thu Jan 27 04:45:00 2005//Tr1_4_5
/check_hltherm.c/1.1/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_hprsc.pl/1.2/Thu Nov 25 03:01:23 2004//Tr1_4_5
/check_http-with-client-certificate.c/1.1/Tue Feb 1 04:19:42 2005//Tr1_4_5
/check_hw.sh/1.1/Thu Nov 25 04:30:04 2004//Tr1_4_5
/check_ica_master_browser.pl/1.1/Tue Jan 25 09:09:33 2005//Tr1_4_5
/check_ica_metaframe_pub_apps.pl/1.1/Tue Jan 25 09:07:39 2005//Tr1_4_5
/check_ica_program_neigbourhood.pl/1.1/Tue Jan 25 09:05:53 2005//Tr1_4_5
/check_inodes-freebsd.pl/1.1/Wed Aug 14 19:00:17 2002//Tr1_4_5
/check_inodes.pl/1.1/Thu Apr 18 21:59:26 2002//Tr1_4_5
/check_ipxping.c/1.2/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_javaproc.pl/1.1/Mon Nov 18 21:58:58 2002//Tr1_4_5
/check_joy.sh/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_linux_raid.pl/1.5/Wed Jun 7 14:28:33 2006//Tr1_4_5
/check_lmmon.pl/1.1/Tue Jun 25 13:55:07 2002//Tr1_4_5
/check_log2.pl/1.2/Fri Dec 16 18:41:45 2005//Tr1_4_5
/check_lotus.pl/1.1/Tue Jan 25 09:04:26 2005//Tr1_4_5
/check_maxchannels.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_maxwanstate.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_mem.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_ms_spooler.pl/1.1/Tue Jul 16 00:04:42 2002//Tr1_4_5
/check_mssql.sh/1.3/Tue Aug 5 09:56:13 2003//Tr1_4_5
/check_nagios.pl/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
/check_nagios_db.pl/1.1/Wed Aug 14 19:01:58 2002//Tr1_4_5
/check_nagios_db_pg.pl/1.1/Mon Apr 19 13:13:23 2004//Tr1_4_5
/check_netapp.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_nmap.py/1.2/Wed Dec 1 03:50:37 2004//Tr1_4_5
/check_ora_table_space.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_oracle_instance.pl/1.1/Wed Apr 3 02:58:47 2002//Tr1_4_5
/check_oracle_tbs/1.2/Fri Feb 4 00:27:38 2005//Tr1_4_5
/check_pcpmetric.py/1.1/Thu Jan 27 04:45:46 2005//Tr1_4_5
/check_pfstate/1.1/Thu Jan 27 04:43:49 2005//Tr1_4_5
/check_qmailq.pl/1.1.1.1/Thu Feb 28 06:42:53 2002//Tr1_4_5
/check_rbl.c/1.3/Thu Dec 2 00:30:32 2004//Tr1_4_5
/check_remote_nagios_status.pl/1.1/Sun Feb 9 14:16:28 2003//Tr1_4_5
/check_rrd_data.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_sap.sh/1.2/Tue May 27 13:10:01 2003//Tr1_4_5
/check_smart.pl/1.1/Thu Jan 27 10:32:48 2005//Tr1_4_5
/check_smb.sh/1.1/Wed Aug 14 15:29:58 2002//Tr1_4_5
/check_snmp_disk_monitor.pl/1.1/Thu Aug 22 14:42:43 2002//Tr1_4_5
/check_snmp_printer.pl/1.1/Sun Jan 18 20:07:01 2004//Tr1_4_5
/check_snmp_process_monitor.pl/1.2/Thu Aug 22 22:08:46 2002//Tr1_4_5
/check_snmp_procs.pl/1.1/Tue Feb 17 13:23:31 2004//Tr1_4_5
/check_sockets.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/check_sybase/1.3/Fri Apr 29 00:27:49 2005//Tr1_4_5
/check_temp_cpq/1.1/Thu Jan 27 04:53:41 2005//Tr1_4_5
/check_temp_fsc/1.1/Thu Jan 27 04:53:59 2005//Tr1_4_5
/check_timeout.c/1.1.1.1/Thu Feb 28 06:42:53 2002//Tr1_4_5
/check_traceroute-pure_perl.pl/1.1/Tue Feb 1 12:43:58 2005//Tr1_4_5
/check_traceroute.pl/1.1/Thu Jan 27 10:34:16 2005//Tr1_4_5
/check_uptime.c/1.2/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_vcs.pl/1.1/Thu May 23 16:39:59 2002//Tr1_4_5
/check_wave.pl/1.1/Fri Mar 1 02:42:56 2002//Tr1_4_5
/check_wins.pl/1.3/Thu Nov 25 04:46:16 2004//Tr1_4_5
/checkciscotemp.pl/1.3/Tue Jan 28 07:44:56 2003//Tr1_4_5
/mrtgext.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/nagios_sendim.pl/1.1/Mon Nov 18 21:58:58 2002//Tr1_4_5
/packet_utils.pm/1.1/Tue Jan 25 09:12:47 2005//Tr1_4_5
/rblcheck-dns/1.1/Mon Nov 29 05:07:33 2004//Tr1_4_5
/rblcheck-web/1.1/Mon Nov 29 05:07:33 2004//Tr1_4_5
/restrict.pl/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
/sched_downtime.pl/1.1/Sun Feb 9 14:16:29 2003//Tr1_4_5
/urlize.pl/1.2/Tue Jun 10 05:04:09 2003//Tr1_4_5
/utils.py/1.1.1.1/Thu Feb 28 06:42:54 2002//Tr1_4_5
D

View file

@ -1,2 +0,0 @@
A D/aix////
A D/tarballs////

View file

@ -1 +0,0 @@
nagiosplug/contrib

View file

@ -1 +0,0 @@
:ext:tonvoon@nagiosplug.cvs.sourceforge.net:/cvsroot/nagiosplug

View file

@ -1 +0,0 @@
Nr1_4_5

View file

@ -1,6 +0,0 @@
/check_failed/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
/check_io/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
/check_kerberos/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
/check_queue/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
/pg_stat/1.1.1.1/Thu Feb 28 06:42:55 2002//Tr1_4_5
D

View file

@ -1 +0,0 @@
nagiosplug/contrib/aix

View file

@ -1 +0,0 @@
:ext:tonvoon@nagiosplug.cvs.sourceforge.net:/cvsroot/nagiosplug

View file

@ -1 +0,0 @@
Nr1_4_5

View file

@ -1,370 +0,0 @@
#!/usr/bin/perl
# check_sybase
# A nagios plugin that connects to a Sybase database and checks free space.
#
# Copyright 2004-2005 Simon Bellwood, NetMan Network Management and IT
# Services GmbH
# Portions Copyright 2001 Michael Peppler.
# License: GPL
#
# Bugs and feedback to simon.bellwood@NOSPAM.net-man.at
# Latest version available from:
# http://www.net-man.at/software/check_sybase-LATEST.zip
#
# Revision history:
# 0.1 01-OCT-2004 Initial version.
# 0.2 08-NOV-2004 Initial release.
# 0.3 13-JAN-2005 Fixed lib path, improved timeouts.
# 0.4 26-JAN-2005 Added loginTimeout.
# 0.5 04-FEB-2005 Fixed dates in history. Oops.
# 0.6 29-MAR-2005 Added --explain option.
# 0.7 08-APR-2005 Added initial performance data support.
my $VERSION = "0.7";
#use warnings;
use strict;
use DBI;
use Getopt::Long;
use lib qw( /usr/lib/nagios/plugins/ /usr/local/nagios/libexec/ );
use utils qw(%ERRORS &print_revision &support &usage $TIMEOUT);
my $PROGNAME = "check_sybase";
my $DEFAULT_CHECKTYPE = "FREESPACE";
my $DEFAULT_WARNING = "25";
my $DEFAULT_CRITICAL = "10";
my $DEFAULT_TIMEOUT = "30";
my ($user, $pass, $dbsvr, $dbname, $config, $checktype, $explain,
$warn, $crit, $timeout, $help, $version);
my $options_okay = GetOptions(
"U|user=s" => \$user,
"P|pass:s" => \$pass, # ":" means optional
"S|dbsvr=s" => \$dbsvr,
"D|dbname=s" => \$dbname,
"config=s" => \$config,
"checktype=s" => \$checktype,
"explain" => \$explain,
"w|warning=i" => \$warn,
"c|critical=i" => \$crit,
"t|timeout=i" => \$timeout,
"h|help" => \$help,
"V|version" => \$version
);
if (! $options_okay) # Bad option passed
{
&help;
&nunk("Bad command line option passed!");
}
# Use defaults, if needed
$warn = $warn || $DEFAULT_WARNING;
$crit = $crit || $DEFAULT_CRITICAL;
$checktype = $checktype || $DEFAULT_CHECKTYPE;
$timeout = $timeout || $TIMEOUT || $DEFAULT_TIMEOUT;
if ($help)
{
&help;
&nok;
}
if ($version)
{
print_revision($PROGNAME,"\$Revision: 1.3 $VERSION \$");
&nok;
}
if ($config) # Read any of "user", "pass", "dbsvr", "dbname" from config file
{
&read_config;
}
# Some more descriptive syntax checks
my $syntax_error;
$syntax_error .= "No dbsvr given! " unless $dbsvr;
$syntax_error .= "No dbname given! " unless $dbname;
$syntax_error .= "No user given! " unless $user;
$syntax_error .= "Bad checktype given!"
unless $checktype =~ m/^CONNECT|FREESPACE$/;
&nunk($syntax_error) if $syntax_error;
# Just in case of problems, let's not hang Nagios
$SIG{'ALRM'} = sub {
&nunk("Timeout: no response from dbsvr $dbsvr within $timeout seconds");
};
alarm($timeout);
# Decide on what we are checking
if ($checktype eq "CONNECT")
{
&connect;
}
elsif ($checktype eq "FREESPACE")
{
&check_space;
}
my $dbh;
my $is_connected;
sub connect
{
$dbh = DBI->connect("dbi:Sybase:server=$dbsvr;database=$dbname;".
"timeout=$timeout,loginTimeout=$timeout", $user, $pass)
or &ncrit("Could not connect to '$dbname' on '$dbsvr'");
# Report success for a check of type CONNECT
&nok("Connect okay") if $checktype ne "FREESPACE";
}
sub disconnect
{
$dbh->disconnect if $is_connected;
$is_connected = 0;
}
sub check_space
{
&connect;
# Most of this sub based on Michael Peppler's check-space.pl
# For debugging purposes, more values are collected than needed.
$dbh->{syb_do_proc_status} = 1;
my $dbinfo;
# First check space in the database
my $sth = $dbh->prepare("sp_spaceused")
or &nunk("Failed to call sp_spaceused on '$dbsvr'");
$sth->execute
or &nunk("Failed to call sp_spaceused on '$dbsvr'");
do {
while(my $d = $sth->fetch)
{
if($d->[0] =~ /$dbname/)
{
# Grab "database_size"
$d->[1] =~ s/[^\d.]//g;
$dbinfo->{size} = $d->[1];
}
else
{
# Reserved, data, index, unused
foreach (@$d)
{
s/\D//g;
}
# Grab "reserved", "data", "index"
$dbinfo->{reserved} = $d->[0] / 1024;
$dbinfo->{data} = $d->[1] / 1024;
$dbinfo->{index} = $d->[2] / 1024;
$dbinfo->{unused} = $d->[3] / 1024;
}
}
} while($sth->{syb_more_results});
&explain("db size: ".$dbinfo->{size});
&explain("reserved: ".$dbinfo->{reserved});
&explain(" data: ".$dbinfo->{data});
&explain(" index: ".$dbinfo->{index});
&explain(" unused: ".$dbinfo->{unused});
# Get the actual device usage from sp_helpdb to get the free log space
$sth = $dbh->prepare("sp_helpdb $dbname")
or &nunk("Failed to call sp_helpdb $dbname on '$dbsvr'");
$sth->execute
or &nunk("Failed to call sp_helpdb $dbname on '$dbsvr'");
do {
while(my $d = $sth->fetch)
{
# Look for "usage" column with value "log only"
if($d->[2] && $d->[2] =~ /log only/)
{
# Grab "size", add it to our log size
$d->[1] =~ s/[^\d\.]//g;
$dbinfo->{log} += $d->[1];
}
# Look for "device fragments" column with "log only"
# followed by a number.
if($d->[0] =~ /log only .* (\d+)/)
{
$dbinfo->{logfree} = $1 / 1024;
}
}
} while($sth->{syb_more_results});
&explain("log: ".$dbinfo->{log});
&explain("logfree: ".$dbinfo->{logfree});
# Subtract the log size from the database size
$dbinfo->{realsize} = $dbinfo->{size} - $dbinfo->{log};
&explain("realsize (i.e. size - log) = ".$dbinfo->{realsize});
# The "reserved" space is free for use by the table that freed it, so
# it is not truly free space. To be safe, our calculation ignores it.
my $free = ($dbinfo->{realsize} - $dbinfo->{reserved})/$dbinfo->{realsize};
$free = sprintf("%.2f", $free*100);
&explain("(realsize-reserved)/realsize = $free%");
&explain("For safety, this calculation assumes no log space reuse. ".
"Because of this, you may get negative values.");
if ($free < $crit)
{
&ncrit("Free space is $free%! (critical threshold is $crit%)".
"|free_space=$free%");
}
if ($free < $warn)
{
&nwarn("Free space is $free%! (warning threshold is $warn%)".
"|free_space=$free%");
}
&nok("Free space within thresholds ($free% free)".
"|free_space=$free%");
}
sub read_config
{
open (CONFIG, "<$config")
or &nunk("Failed to open config file '$config': $!");
while (<CONFIG>)
{
chomp;
next if m/^#/; # skip comments
next if m/^$/; # skip blanks
# Each case-insensitive argument can be followed by an optional
# colon, then must be followed by whitespace and the value.
# Options in the config file override those given on the
# command line, but don't rely on this!
if (m/USER:?\s+(\S+)/i)
{
$user = $1;
}
elsif (m/PASS:?\s+(\S+)/i)
{
$pass = $1;
}
elsif (m/DBSVR:?\s+(\S+)/i)
{
$dbsvr = $1;
}
elsif (m/DBNAME:?\s+(\S+)/i)
{
$dbname = $1;
}
else
{
&nunk("Invalid line $. in config file '$config'");
}
}
close (CONFIG);
}
sub help
{
print <<_HELP_;
Usage: $PROGNAME OPTIONS
A nagios plugin that connects to a Sybase database and checks free space.
Mandatory arguments to long options are mandatory for short options too.
-U, --user Username to connect to database.
-P, --pass Password to connect to database.
-S, --dbsvr Database server (as in the interfaces file).
-D, --dbname Database name to check.
--config=FILE Config file (see SECURITY below)
--checktype=TYPE Type of check to run (see TYPEs below)
--explain Explains how we calculated the free space.
-w, --warning Warning threshold, in percent (default 25)
-c, --critical Critical threshold, in percent (default 10)
-t, --timeout Timeout value, in seconds (default 30)
-h, --help This help message
-V, --version Version information ($VERSION)
Examples:
$PROGNAME -U sa -P secret -S bigbox -D orders
$PROGNAME --config=/secure/nagios-sybase.cfg --checktype=CONNECT
TYPEs
There are two types of checks you can run:
--checktype=CONNECT
Checks just the connection to the database.
--checktype=FREESPACE
(Default) Checks both the connection to the database and the free space.
SECURITY - Using a config file
Since a "ps ax" will reveal your database username and password, you can
instead specify them in a config file. Pass the config file with --config.
The format of the file is:
USER value
PASS value
You can also specify a DBSVR and DBNAME in the file. Comments (#) and blank
lines are ignored. Use whitespace to separate argument and value.
_HELP_
}
sub explain
{
return unless $explain;
my $msg = shift;
print "$msg\n";
}
# Some wrappers..
# Returns code 0, OK
sub nok
{
my $msg = shift;
print "OK: $msg\n" if $msg;
&disconnect;
exit $ERRORS{OK};
}
# Returns code 1, Warning
sub nwarn
{
my $msg = shift;
print "WARNING: $msg\n";
&disconnect;
exit $ERRORS{WARNING};
}
# Returns code 2, Critical
sub ncrit
{
my $msg = shift;
print "CRITICAL: $msg\n";
&disconnect;
exit $ERRORS{CRITICAL};
}
# Returns code 3, Unknown
sub nunk
{
my $msg = shift;
print "ERROR: $msg\n";
&disconnect;
exit $ERRORS{UNKNOWN};
}

View file

@ -1,6 +0,0 @@
/bowen-langley_plugins.tar.gz/1.2/Fri Mar 1 02:42:56 2002/-kb/Tr1_4_5
/check_bgp-1.0.tar.gz/1.2/Fri Mar 1 02:42:56 2002/-kb/Tr1_4_5
/check_radius.tar.gz/1.2/Fri Mar 1 02:42:56 2002/-kb/Tr1_4_5
/check_traffic-0.91b.tar.gz/1.1/Tue Feb 1 04:20:04 2005/-kb/Tr1_4_5
/fetchlog-0.94.tar.gz/1.1/Sun Feb 9 14:03:22 2003/-kb/Tr1_4_5
D

View file

@ -1 +0,0 @@
nagiosplug/contrib/tarballs

View file

@ -1 +0,0 @@
:ext:tonvoon@nagiosplug.cvs.sourceforge.net:/cvsroot/nagiosplug

View file

@ -1 +0,0 @@
Nr1_4_5

607
gl/Makefile.am Normal file
View file

@ -0,0 +1,607 @@
## DO NOT EDIT! GENERATED AUTOMATICALLY!
## Process this file with automake to produce Makefile.in.
# Copyright (C) 2004-2007 Free Software Foundation, Inc.
#
# This file is free software, distributed under the terms of the GNU
# General Public License. As a special exception to the GNU General
# Public License, this file may be distributed as part of a program
# that contains a configuration script generated by Autoconf, under
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=. --no-libtool --macro-prefix=gl dirname fsusage getaddrinfo gethostname getloadavg getopt gettext mountlist regex vasprintf vsnprintf
AUTOMAKE_OPTIONS = 1.5 gnits
noinst_HEADERS =
noinst_LIBRARIES =
noinst_LTLIBRARIES =
EXTRA_DIST =
BUILT_SOURCES =
SUFFIXES =
MOSTLYCLEANFILES = core *.stackdump
MOSTLYCLEANDIRS =
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
AM_CPPFLAGS =
noinst_LIBRARIES += libgnu.a
libgnu_a_SOURCES =
libgnu_a_LIBADD = $(gl_LIBOBJS)
libgnu_a_DEPENDENCIES = $(gl_LIBOBJS)
EXTRA_libgnu_a_SOURCES =
## begin gnulib module alloca
EXTRA_DIST += alloca.c
EXTRA_libgnu_a_SOURCES += alloca.c
libgnu_a_LIBADD += @ALLOCA@
libgnu_a_DEPENDENCIES += @ALLOCA@
## end gnulib module alloca
## begin gnulib module alloca-opt
BUILT_SOURCES += $(ALLOCA_H)
# We need the following in order to create <alloca.h> when the system
# doesn't have one that works with the given compiler.
alloca.h: alloca_.h
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/alloca_.h; \
} > $@-t
mv -f $@-t $@
MOSTLYCLEANFILES += alloca.h alloca.h-t
EXTRA_DIST += alloca_.h
## end gnulib module alloca-opt
## begin gnulib module arpa_inet
BUILT_SOURCES += $(ARPA_INET_H)
# We need the following in order to create <arpa/inet.h> when the system
# doesn't have one.
arpa/inet.h:
test -d arpa || mkdir arpa
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
echo '#include <sys/socket.h>'; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += arpa/inet.h arpa/inet.h-t
MOSTLYCLEANDIRS += arpa
## end gnulib module arpa_inet
## begin gnulib module c-strtod
EXTRA_DIST += c-strtod.c c-strtod.h
EXTRA_libgnu_a_SOURCES += c-strtod.c
## end gnulib module c-strtod
## begin gnulib module cloexec
EXTRA_DIST += cloexec.c cloexec.h
EXTRA_libgnu_a_SOURCES += cloexec.c
## end gnulib module cloexec
## begin gnulib module dirname
EXTRA_DIST += basename.c dirname.c dirname.h stripslash.c
EXTRA_libgnu_a_SOURCES += basename.c dirname.c stripslash.c
## end gnulib module dirname
## begin gnulib module error
EXTRA_DIST += error.c error.h
EXTRA_libgnu_a_SOURCES += error.c
## end gnulib module error
## begin gnulib module exit
libgnu_a_SOURCES += exit.h
## end gnulib module exit
## begin gnulib module exitfail
EXTRA_DIST += exitfail.c exitfail.h
EXTRA_libgnu_a_SOURCES += exitfail.c
## end gnulib module exitfail
## begin gnulib module fcntl-safer
EXTRA_DIST += creat-safer.c fcntl--.h fcntl-safer.h open-safer.c
EXTRA_libgnu_a_SOURCES += creat-safer.c open-safer.c
## end gnulib module fcntl-safer
## begin gnulib module fsusage
EXTRA_DIST += fsusage.c fsusage.h
EXTRA_libgnu_a_SOURCES += fsusage.c
## end gnulib module fsusage
## begin gnulib module full-read
libgnu_a_SOURCES += full-read.h full-read.c
## end gnulib module full-read
## begin gnulib module full-write
libgnu_a_SOURCES += full-write.h full-write.c
## end gnulib module full-write
## begin gnulib module getaddrinfo
EXTRA_DIST += gai_strerror.c getaddrinfo.c getaddrinfo.h
EXTRA_libgnu_a_SOURCES += gai_strerror.c getaddrinfo.c
## end gnulib module getaddrinfo
## begin gnulib module gethostname
EXTRA_DIST += gethostname.c
EXTRA_libgnu_a_SOURCES += gethostname.c
## end gnulib module gethostname
## begin gnulib module getloadavg
EXTRA_DIST += getloadavg.c
EXTRA_libgnu_a_SOURCES += getloadavg.c
## end gnulib module getloadavg
## begin gnulib module getopt
BUILT_SOURCES += $(GETOPT_H)
# We need the following in order to create <getopt.h> when the system
# doesn't have one that works with the given compiler.
getopt.h: getopt_.h
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/getopt_.h; \
} > $@-t
mv -f $@-t $@
MOSTLYCLEANFILES += getopt.h getopt.h-t
EXTRA_DIST += getopt.c getopt1.c getopt_.h getopt_int.h
EXTRA_libgnu_a_SOURCES += getopt.c getopt1.c
## end gnulib module getopt
## begin gnulib module gettext
# This is for those projects which use "gettextize --intl" to put a source-code
# copy of libintl into their package. In such projects, every Makefile.am needs
# -I$(top_builddir)/intl, so that <libintl.h> can be found in this directory.
# For the Makefile.ams in other directories it is the maintainer's
# responsibility; for the one from gnulib we do it here.
# This option has no effect when the user disables NLS (because then the intl
# directory contains no libintl.h file) or when the project does not use
# "gettextize --intl".
AM_CPPFLAGS += -I$(top_builddir)/intl
## end gnulib module gettext
## begin gnulib module gettext-h
libgnu_a_SOURCES += gettext.h
## end gnulib module gettext-h
## begin gnulib module inet_ntop
EXTRA_DIST += inet_ntop.c inet_ntop.h
EXTRA_libgnu_a_SOURCES += inet_ntop.c
## end gnulib module inet_ntop
## begin gnulib module intprops
EXTRA_DIST += intprops.h
## end gnulib module intprops
## begin gnulib module malloc
EXTRA_DIST += malloc.c
EXTRA_libgnu_a_SOURCES += malloc.c
## end gnulib module malloc
## begin gnulib module mbchar
EXTRA_DIST += mbchar.c mbchar.h
EXTRA_libgnu_a_SOURCES += mbchar.c
## end gnulib module mbchar
## begin gnulib module mbuiter
libgnu_a_SOURCES += mbuiter.h
## end gnulib module mbuiter
## begin gnulib module memchr
EXTRA_DIST += memchr.c
EXTRA_libgnu_a_SOURCES += memchr.c
## end gnulib module memchr
## begin gnulib module minmax
libgnu_a_SOURCES += minmax.h
## end gnulib module minmax
## begin gnulib module mountlist
EXTRA_DIST += mountlist.c mountlist.h
EXTRA_libgnu_a_SOURCES += mountlist.c
## end gnulib module mountlist
## begin gnulib module netinet_in
BUILT_SOURCES += $(NETINET_IN_H)
# We need the following in order to create <netinet/in.h> when the system
# doesn't have one.
netinet/in.h:
test -d netinet || mkdir netinet
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
echo '#include <sys/socket.h>'; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += netinet/in.h netinet/in.h-t
MOSTLYCLEANDIRS += netinet
## end gnulib module netinet_in
## begin gnulib module regex
EXTRA_DIST += regcomp.c regex.c regex.h regex_internal.c regex_internal.h regexec.c
EXTRA_libgnu_a_SOURCES += regcomp.c regex.c regex_internal.c regexec.c
## end gnulib module regex
## begin gnulib module safe-read
EXTRA_DIST += safe-read.c safe-read.h
EXTRA_libgnu_a_SOURCES += safe-read.c
## end gnulib module safe-read
## begin gnulib module safe-write
EXTRA_DIST += safe-write.c safe-write.h
EXTRA_libgnu_a_SOURCES += safe-write.c
## end gnulib module safe-write
## begin gnulib module size_max
libgnu_a_SOURCES += size_max.h
## end gnulib module size_max
## begin gnulib module snprintf
EXTRA_DIST += snprintf.c snprintf.h
EXTRA_libgnu_a_SOURCES += snprintf.c
## end gnulib module snprintf
## begin gnulib module stdbool
BUILT_SOURCES += $(STDBOOL_H)
# We need the following in order to create <stdbool.h> when the system
# doesn't have one that works.
stdbool.h: stdbool_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool_.h; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += stdbool.h stdbool.h-t
EXTRA_DIST += stdbool_.h
## end gnulib module stdbool
## begin gnulib module stdint
BUILT_SOURCES += $(STDINT_H)
# We need the following in order to create <stdint.h> when the system
# doesn't have one that works with the given compiler.
stdint.h: stdint_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \
-e 's|@''ABSOLUTE_STDINT_H''@|$(ABSOLUTE_STDINT_H)|g' \
-e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \
-e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \
-e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
-e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
-e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
-e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
-e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \
-e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \
-e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \
-e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \
-e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \
-e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \
-e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \
-e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \
< $(srcdir)/stdint_.h; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += stdint.h stdint.h-t
EXTRA_DIST += stdint_.h
## end gnulib module stdint
## begin gnulib module strcase
EXTRA_DIST += strcase.h strcasecmp.c strncasecmp.c
EXTRA_libgnu_a_SOURCES += strcasecmp.c strncasecmp.c
## end gnulib module strcase
## begin gnulib module strdup
EXTRA_DIST += strdup.c strdup.h
EXTRA_libgnu_a_SOURCES += strdup.c
## end gnulib module strdup
## begin gnulib module strndup
EXTRA_DIST += strndup.c strndup.h
EXTRA_libgnu_a_SOURCES += strndup.c
## end gnulib module strndup
## begin gnulib module strnlen
EXTRA_DIST += strnlen.c strnlen.h
EXTRA_libgnu_a_SOURCES += strnlen.c
## end gnulib module strnlen
## begin gnulib module strnlen1
libgnu_a_SOURCES += strnlen1.h strnlen1.c
## end gnulib module strnlen1
## begin gnulib module sys_socket
BUILT_SOURCES += $(SYS_SOCKET_H)
# We need the following in order to create <sys/socket.h> when the system
# doesn't have one that works with the given compiler.
sys/socket.h: socket_.h
@MKDIR_P@ sys
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/socket_.h; \
} > $@-t
mv -f $@-t $@
MOSTLYCLEANFILES += sys/socket.h sys/socket.h-t
MOSTLYCLEANDIRS += sys
EXTRA_DIST += socket_.h
## end gnulib module sys_socket
## begin gnulib module unistd
BUILT_SOURCES += $(UNISTD_H)
# We need the following in order to create an empty placeholder for
# <unistd.h> when the system doesn't have one.
unistd.h: unistd_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's|@''ABSOLUTE_UNISTD_H''@|$(ABSOLUTE_UNISTD_H)|g' \
< $(srcdir)/unistd_.h; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += unistd.h unistd.h-t
EXTRA_DIST += unistd_.h
## end gnulib module unistd
## begin gnulib module unistd-safer
EXTRA_DIST += dup-safer.c fd-safer.c pipe-safer.c unistd--.h unistd-safer.h
EXTRA_libgnu_a_SOURCES += dup-safer.c fd-safer.c pipe-safer.c
## end gnulib module unistd-safer
## begin gnulib module vasnprintf
EXTRA_DIST += asnprintf.c printf-args.c printf-args.h printf-parse.c printf-parse.h vasnprintf.c vasnprintf.h
EXTRA_libgnu_a_SOURCES += asnprintf.c printf-args.c printf-parse.c vasnprintf.c
## end gnulib module vasnprintf
## begin gnulib module vasprintf
EXTRA_DIST += asprintf.c vasprintf.c vasprintf.h
EXTRA_libgnu_a_SOURCES += asprintf.c vasprintf.c
## end gnulib module vasprintf
## begin gnulib module vsnprintf
EXTRA_DIST += vsnprintf.c vsnprintf.h
EXTRA_libgnu_a_SOURCES += vsnprintf.c
## end gnulib module vsnprintf
## begin gnulib module wchar
BUILT_SOURCES += $(WCHAR_H)
# We need the following in order to create <wchar.h> when the system
# version does not work standalone.
wchar.h: wchar_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's|@''ABSOLUTE_WCHAR_H''@|$(ABSOLUTE_WCHAR_H)|g' \
< $(srcdir)/wchar_.h; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += wchar.h wchar.h-t
EXTRA_DIST += wchar_.h
## end gnulib module wchar
## begin gnulib module wctype
BUILT_SOURCES += $(WCTYPE_H)
# We need the following in order to create <wctype.h> when the system
# doesn't have one that works with the given compiler.
wctype.h: wctype_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \
-e 's|@''ABSOLUTE_WCTYPE_H''@|$(ABSOLUTE_WCTYPE_H)|g' \
-e 's/@''HAVE_WCTYPE_CTMP_BUG''@/$(HAVE_WCTYPE_CTMP_BUG)/g' \
-e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \
< $(srcdir)/wctype_.h; \
} > $@-t
mv $@-t $@
MOSTLYCLEANFILES += wctype.h wctype.h-t
EXTRA_DIST += wctype_.h
## end gnulib module wctype
## begin gnulib module wcwidth
libgnu_a_SOURCES += wcwidth.h
## end gnulib module wcwidth
## begin gnulib module xalloc
EXTRA_DIST += xalloc.h xmalloc.c
EXTRA_libgnu_a_SOURCES += xmalloc.c
## end gnulib module xalloc
## begin gnulib module xalloc-die
libgnu_a_SOURCES += xalloc-die.c
## end gnulib module xalloc-die
## begin gnulib module xsize
libgnu_a_SOURCES += xsize.h
## end gnulib module xsize
## begin gnulib module xstrndup
libgnu_a_SOURCES += xstrndup.h xstrndup.c
## end gnulib module xstrndup
mostlyclean-local: mostlyclean-generic
@for dir in '' $(MOSTLYCLEANDIRS); do \
if test -n "$$dir" && test -d $$dir; then \
echo "rmdir $$dir"; rmdir $$dir; \
fi; \
done

859
gl/Makefile.in Normal file
View file

@ -0,0 +1,859 @@
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# Copyright (C) 2004-2007 Free Software Foundation, Inc.
#
# This file is free software, distributed under the terms of the GNU
# General Public License. As a special exception to the GNU General
# Public License, this file may be distributed as part of a program
# that contains a configuration script generated by Autoconf, under
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=. --no-libtool --macro-prefix=gl dirname fsusage getaddrinfo gethostname getloadavg getopt gettext mountlist regex vasprintf vsnprintf
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = gl
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in alloca.c
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/np_mysqlclient.m4 \
$(top_srcdir)/gl/m4/absolute-header.m4 \
$(top_srcdir)/gl/m4/alloca.m4 \
$(top_srcdir)/gl/m4/arpa_inet_h.m4 \
$(top_srcdir)/gl/m4/c-strtod.m4 $(top_srcdir)/gl/m4/cloexec.m4 \
$(top_srcdir)/gl/m4/codeset.m4 $(top_srcdir)/gl/m4/dirname.m4 \
$(top_srcdir)/gl/m4/dos.m4 \
$(top_srcdir)/gl/m4/double-slash-root.m4 \
$(top_srcdir)/gl/m4/eoverflow.m4 $(top_srcdir)/gl/m4/error.m4 \
$(top_srcdir)/gl/m4/exitfail.m4 \
$(top_srcdir)/gl/m4/extensions.m4 \
$(top_srcdir)/gl/m4/fcntl-safer.m4 \
$(top_srcdir)/gl/m4/fstypename.m4 \
$(top_srcdir)/gl/m4/fsusage.m4 \
$(top_srcdir)/gl/m4/getaddrinfo.m4 \
$(top_srcdir)/gl/m4/gethostname.m4 \
$(top_srcdir)/gl/m4/getloadavg.m4 \
$(top_srcdir)/gl/m4/getopt.m4 $(top_srcdir)/gl/m4/gettext.m4 \
$(top_srcdir)/gl/m4/gnulib-common.m4 \
$(top_srcdir)/gl/m4/gnulib-comp.m4 \
$(top_srcdir)/gl/m4/iconv.m4 $(top_srcdir)/gl/m4/inet_ntop.m4 \
$(top_srcdir)/gl/m4/inline.m4 $(top_srcdir)/gl/m4/intmax_t.m4 \
$(top_srcdir)/gl/m4/inttypes_h.m4 \
$(top_srcdir)/gl/m4/lib-ld.m4 $(top_srcdir)/gl/m4/lib-link.m4 \
$(top_srcdir)/gl/m4/lib-prefix.m4 $(top_srcdir)/gl/m4/lock.m4 \
$(top_srcdir)/gl/m4/longdouble.m4 \
$(top_srcdir)/gl/m4/longlong.m4 \
$(top_srcdir)/gl/m4/ls-mntd-fs.m4 \
$(top_srcdir)/gl/m4/mbchar.m4 $(top_srcdir)/gl/m4/mbiter.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/memchr.m4 \
$(top_srcdir)/gl/m4/minmax.m4 $(top_srcdir)/gl/m4/mountlist.m4 \
$(top_srcdir)/gl/m4/netinet_in_h.m4 $(top_srcdir)/gl/m4/nls.m4 \
$(top_srcdir)/gl/m4/onceonly_2_57.m4 $(top_srcdir)/gl/m4/po.m4 \
$(top_srcdir)/gl/m4/progtest.m4 $(top_srcdir)/gl/m4/regex.m4 \
$(top_srcdir)/gl/m4/safe-read.m4 \
$(top_srcdir)/gl/m4/safe-write.m4 \
$(top_srcdir)/gl/m4/size_max.m4 \
$(top_srcdir)/gl/m4/snprintf.m4 $(top_srcdir)/gl/m4/socklen.m4 \
$(top_srcdir)/gl/m4/sockpfaf.m4 $(top_srcdir)/gl/m4/ssize_t.m4 \
$(top_srcdir)/gl/m4/stdbool.m4 $(top_srcdir)/gl/m4/stdint.m4 \
$(top_srcdir)/gl/m4/stdint_h.m4 $(top_srcdir)/gl/m4/strcase.m4 \
$(top_srcdir)/gl/m4/strdup.m4 $(top_srcdir)/gl/m4/strndup.m4 \
$(top_srcdir)/gl/m4/strnlen.m4 \
$(top_srcdir)/gl/m4/sys_socket_h.m4 \
$(top_srcdir)/gl/m4/ulonglong.m4 \
$(top_srcdir)/gl/m4/unistd-safer.m4 \
$(top_srcdir)/gl/m4/unistd_h.m4 \
$(top_srcdir)/gl/m4/vasnprintf.m4 \
$(top_srcdir)/gl/m4/vasprintf.m4 \
$(top_srcdir)/gl/m4/vsnprintf.m4 $(top_srcdir)/gl/m4/wchar.m4 \
$(top_srcdir)/gl/m4/wchar_t.m4 $(top_srcdir)/gl/m4/wctype.m4 \
$(top_srcdir)/gl/m4/wcwidth.m4 $(top_srcdir)/gl/m4/wint_t.m4 \
$(top_srcdir)/gl/m4/xalloc.m4 $(top_srcdir)/gl/m4/xsize.m4 \
$(top_srcdir)/gl/m4/xstrndup.m4 $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
LIBRARIES = $(noinst_LIBRARIES)
ARFLAGS = cru
libgnu_a_AR = $(AR) $(ARFLAGS)
am__DEPENDENCIES_1 =
am_libgnu_a_OBJECTS = full-read.$(OBJEXT) full-write.$(OBJEXT) \
strnlen1.$(OBJEXT) xalloc-die.$(OBJEXT) xstrndup.$(OBJEXT)
libgnu_a_OBJECTS = $(am_libgnu_a_OBJECTS)
LTLIBRARIES = $(noinst_LTLIBRARIES)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(libgnu_a_SOURCES) $(EXTRA_libgnu_a_SOURCES)
DIST_SOURCES = $(libgnu_a_SOURCES) $(EXTRA_libgnu_a_SOURCES)
HEADERS = $(noinst_HEADERS)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
INSTALL = @INSTALL@
ABSOLUTE_STDINT_H = @ABSOLUTE_STDINT_H@
ABSOLUTE_UNISTD_H = @ABSOLUTE_UNISTD_H@
ABSOLUTE_WCHAR_H = @ABSOLUTE_WCHAR_H@
ABSOLUTE_WCTYPE_H = @ABSOLUTE_WCTYPE_H@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
ALLOCA_H = @ALLOCA_H@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AR = @AR@
ARPA_INET_H = @ARPA_INET_H@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BASENAME = @BASENAME@
BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@
BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@
BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@
BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@
BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DEPLIBS = @DEPLIBS@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOVERFLOW = @EOVERFLOW@
EXEEXT = @EXEEXT@
EXTRAS = @EXTRAS@
EXTRAS_ROOT = @EXTRAS_ROOT@
EXTRA_NETOBJS = @EXTRA_NETOBJS@
EXTRA_TEST = @EXTRA_TEST@
F77 = @F77@
FFLAGS = @FFLAGS@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GETOPT_H = @GETOPT_H@
GL_COND_LIBTOOL_FALSE = @GL_COND_LIBTOOL_FALSE@
GL_COND_LIBTOOL_TRUE = @GL_COND_LIBTOOL_TRUE@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@
HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@
HAVE_STDINT_H = @HAVE_STDINT_H@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
HAVE_WCTYPE_H = @HAVE_WCTYPE_H@
HAVE_WINT_T = @HAVE_WINT_T@
HAVE__BOOL = @HAVE__BOOL@
HOSTNAME = @HOSTNAME@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
KMEM_GROUP = @KMEM_GROUP@
KRBINCLUDE = @KRBINCLUDE@
LDAPINCLUDE = @LDAPINCLUDE@
LDAPLIBS = @LDAPLIBS@
LDFLAGS = @LDFLAGS@
LIBGNUTLS_CONFIG = @LIBGNUTLS_CONFIG@
LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@
LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MATHLIBS = @MATHLIBS@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
MYSQLCFLAGS = @MYSQLCFLAGS@
MYSQLINCLUDE = @MYSQLINCLUDE@
MYSQLLIBS = @MYSQLLIBS@
NEED_SETGID = @NEED_SETGID@
NETINET_IN_H = @NETINET_IN_H@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PATH_TO_APTGET = @PATH_TO_APTGET@
PATH_TO_DIG = @PATH_TO_DIG@
PATH_TO_FPING = @PATH_TO_FPING@
PATH_TO_LMSTAT = @PATH_TO_LMSTAT@
PATH_TO_LSPS = @PATH_TO_LSPS@
PATH_TO_MAILQ = @PATH_TO_MAILQ@
PATH_TO_NSLOOKUP = @PATH_TO_NSLOOKUP@
PATH_TO_PING = @PATH_TO_PING@
PATH_TO_PING6 = @PATH_TO_PING6@
PATH_TO_PS = @PATH_TO_PS@
PATH_TO_QMAIL_QSTAT = @PATH_TO_QMAIL_QSTAT@
PATH_TO_QSTAT = @PATH_TO_QSTAT@
PATH_TO_QUAKESTAT = @PATH_TO_QUAKESTAT@
PATH_TO_RPCINFO = @PATH_TO_RPCINFO@
PATH_TO_SMBCLIENT = @PATH_TO_SMBCLIENT@
PATH_TO_SNMPGET = @PATH_TO_SNMPGET@
PATH_TO_SNMPGETNEXT = @PATH_TO_SNMPGETNEXT@
PATH_TO_SSH = @PATH_TO_SSH@
PATH_TO_SWAP = @PATH_TO_SWAP@
PATH_TO_SWAPINFO = @PATH_TO_SWAPINFO@
PATH_TO_UPTIME = @PATH_TO_UPTIME@
PATH_TO_WHO = @PATH_TO_WHO@
PERL = @PERL@
PGINCLUDE = @PGINCLUDE@
PGLIBS = @PGLIBS@
PKG_ARCH = @PKG_ARCH@
PLUGIN_TEST = @PLUGIN_TEST@
POSUB = @POSUB@
POW_LIB = @POW_LIB@
PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
PYTHON = @PYTHON@
RADIUSLIBS = @RADIUSLIBS@
RANLIB = @RANLIB@
RELEASE = @RELEASE@
REV_DATESTAMP = @REV_DATESTAMP@
REV_TIMESTAMP = @REV_TIMESTAMP@
SCRIPT_TEST = @SCRIPT_TEST@
SET_MAKE = @SET_MAKE@
SH = @SH@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SOCKETLIBS = @SOCKETLIBS@
SSLINCLUDE = @SSLINCLUDE@
SSLLIBS = @SSLLIBS@
STDBOOL_H = @STDBOOL_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
SUPPORT = @SUPPORT@
SYS_SOCKET_H = @SYS_SOCKET_H@
UNISTD_H = @UNISTD_H@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
WARRANTY = @WARRANTY@
WCHAR_H = @WCHAR_H@
WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
WCTYPE_H = @WCTYPE_H@
WINT_T_SUFFIX = @WINT_T_SUFFIX@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
check_tcp_ssl = @check_tcp_ssl@
datadir = @datadir@
exec_prefix = @exec_prefix@
gl_LIBOBJS = @gl_LIBOBJS@
gl_LTLIBOBJS = @gl_LTLIBOBJS@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
np_mysql_config = @np_mysql_config@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
with_trusted_path = @with_trusted_path@
AUTOMAKE_OPTIONS = 1.5 gnits
noinst_HEADERS =
noinst_LIBRARIES = libgnu.a
noinst_LTLIBRARIES =
EXTRA_DIST = alloca.c alloca_.h c-strtod.c c-strtod.h cloexec.c \
cloexec.h basename.c dirname.c dirname.h stripslash.c error.c \
error.h exitfail.c exitfail.h creat-safer.c fcntl--.h \
fcntl-safer.h open-safer.c fsusage.c fsusage.h gai_strerror.c \
getaddrinfo.c getaddrinfo.h gethostname.c getloadavg.c \
getopt.c getopt1.c getopt_.h getopt_int.h inet_ntop.c \
inet_ntop.h intprops.h malloc.c mbchar.c mbchar.h memchr.c \
mountlist.c mountlist.h regcomp.c regex.c regex.h \
regex_internal.c regex_internal.h regexec.c safe-read.c \
safe-read.h safe-write.c safe-write.h snprintf.c snprintf.h \
stdbool_.h stdint_.h strcase.h strcasecmp.c strncasecmp.c \
strdup.c strdup.h strndup.c strndup.h strnlen.c strnlen.h \
socket_.h unistd_.h dup-safer.c fd-safer.c pipe-safer.c \
unistd--.h unistd-safer.h asnprintf.c printf-args.c \
printf-args.h printf-parse.c printf-parse.h vasnprintf.c \
vasnprintf.h asprintf.c vasprintf.c vasprintf.h vsnprintf.c \
vsnprintf.h wchar_.h wctype_.h xalloc.h xmalloc.c
BUILT_SOURCES = $(ALLOCA_H) $(ARPA_INET_H) $(GETOPT_H) $(NETINET_IN_H) \
$(STDBOOL_H) $(STDINT_H) $(SYS_SOCKET_H) $(UNISTD_H) \
$(WCHAR_H) $(WCTYPE_H)
SUFFIXES =
MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t arpa/inet.h \
arpa/inet.h-t getopt.h getopt.h-t netinet/in.h netinet/in.h-t \
stdbool.h stdbool.h-t stdint.h stdint.h-t sys/socket.h \
sys/socket.h-t unistd.h unistd.h-t wchar.h wchar.h-t wctype.h \
wctype.h-t
MOSTLYCLEANDIRS = arpa netinet sys
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
# This is for those projects which use "gettextize --intl" to put a source-code
# copy of libintl into their package. In such projects, every Makefile.am needs
# -I$(top_builddir)/intl, so that <libintl.h> can be found in this directory.
# For the Makefile.ams in other directories it is the maintainer's
# responsibility; for the one from gnulib we do it here.
# This option has no effect when the user disables NLS (because then the intl
# directory contains no libintl.h file) or when the project does not use
# "gettextize --intl".
AM_CPPFLAGS = -I$(top_builddir)/intl
libgnu_a_SOURCES = exit.h full-read.h full-read.c full-write.h \
full-write.c gettext.h mbuiter.h minmax.h size_max.h \
strnlen1.h strnlen1.c wcwidth.h xalloc-die.c xsize.h \
xstrndup.h xstrndup.c
libgnu_a_LIBADD = $(gl_LIBOBJS) @ALLOCA@
libgnu_a_DEPENDENCIES = $(gl_LIBOBJS) @ALLOCA@
EXTRA_libgnu_a_SOURCES = alloca.c c-strtod.c cloexec.c basename.c \
dirname.c stripslash.c error.c exitfail.c creat-safer.c \
open-safer.c fsusage.c gai_strerror.c getaddrinfo.c \
gethostname.c getloadavg.c getopt.c getopt1.c inet_ntop.c \
malloc.c mbchar.c memchr.c mountlist.c regcomp.c regex.c \
regex_internal.c regexec.c safe-read.c safe-write.c snprintf.c \
strcasecmp.c strncasecmp.c strdup.c strndup.c strnlen.c \
dup-safer.c fd-safer.c pipe-safer.c asnprintf.c printf-args.c \
printf-parse.c vasnprintf.c asprintf.c vasprintf.c vsnprintf.c \
xmalloc.c
all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits gl/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnits gl/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libgnu.a: $(libgnu_a_OBJECTS) $(libgnu_a_DEPENDENCIES)
-rm -f libgnu.a
$(libgnu_a_AR) libgnu.a $(libgnu_a_OBJECTS) $(libgnu_a_LIBADD)
$(RANLIB) libgnu.a
clean-noinstLTLIBRARIES:
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
test "$$dir" != "$$p" || dir=.; \
echo "rm -f \"$${dir}/so_locations\""; \
rm -f "$${dir}/so_locations"; \
done
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strtod.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cloexec.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/creat-safer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup-safer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-safer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsusage.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/full-read.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/full-write.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gai_strerror.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getaddrinfo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gethostname.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getloadavg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inet_ntop.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbchar.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memchr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mountlist.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open-safer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe-safer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/safe-read.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/safe-write.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/snprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcasecmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strdup.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stripslash.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strncasecmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strndup.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vsnprintf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrndup.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
uninstall-info-am:
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-am
all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS)
installdirs:
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \
clean-noinstLTLIBRARIES mostlyclean-am
distclean: distclean-am
-rm -rf $(DEPDIR) ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
info: info-am
info-am:
install-data-am:
install-exec-am:
install-info: install-info-am
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf $(DEPDIR) ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool mostlyclean-local
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-info-am
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libtool clean-noinstLIBRARIES clean-noinstLTLIBRARIES \
ctags distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-exec install-exec-am install-info \
install-info-am install-man install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am
# We need the following in order to create <alloca.h> when the system
# doesn't have one that works with the given compiler.
alloca.h: alloca_.h
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/alloca_.h; \
} > $@-t
mv -f $@-t $@
# We need the following in order to create <arpa/inet.h> when the system
# doesn't have one.
arpa/inet.h:
test -d arpa || mkdir arpa
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
echo '#include <sys/socket.h>'; \
} > $@-t
mv $@-t $@
# We need the following in order to create <getopt.h> when the system
# doesn't have one that works with the given compiler.
getopt.h: getopt_.h
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/getopt_.h; \
} > $@-t
mv -f $@-t $@
# We need the following in order to create <netinet/in.h> when the system
# doesn't have one.
netinet/in.h:
test -d netinet || mkdir netinet
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
echo '#include <sys/socket.h>'; \
} > $@-t
mv $@-t $@
# We need the following in order to create <stdbool.h> when the system
# doesn't have one that works.
stdbool.h: stdbool_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool_.h; \
} > $@-t
mv $@-t $@
# We need the following in order to create <stdint.h> when the system
# doesn't have one that works with the given compiler.
stdint.h: stdint_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \
-e 's|@''ABSOLUTE_STDINT_H''@|$(ABSOLUTE_STDINT_H)|g' \
-e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \
-e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \
-e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
-e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
-e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
-e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
-e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \
-e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \
-e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \
-e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \
-e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \
-e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \
-e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \
-e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \
-e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \
< $(srcdir)/stdint_.h; \
} > $@-t
mv $@-t $@
# We need the following in order to create <sys/socket.h> when the system
# doesn't have one that works with the given compiler.
sys/socket.h: socket_.h
@MKDIR_P@ sys
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat $(srcdir)/socket_.h; \
} > $@-t
mv -f $@-t $@
# We need the following in order to create an empty placeholder for
# <unistd.h> when the system doesn't have one.
unistd.h: unistd_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's|@''ABSOLUTE_UNISTD_H''@|$(ABSOLUTE_UNISTD_H)|g' \
< $(srcdir)/unistd_.h; \
} > $@-t
mv $@-t $@
# We need the following in order to create <wchar.h> when the system
# version does not work standalone.
wchar.h: wchar_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's|@''ABSOLUTE_WCHAR_H''@|$(ABSOLUTE_WCHAR_H)|g' \
< $(srcdir)/wchar_.h; \
} > $@-t
mv $@-t $@
# We need the following in order to create <wctype.h> when the system
# doesn't have one that works with the given compiler.
wctype.h: wctype_.h
rm -f $@-t $@
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
sed -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \
-e 's|@''ABSOLUTE_WCTYPE_H''@|$(ABSOLUTE_WCTYPE_H)|g' \
-e 's/@''HAVE_WCTYPE_CTMP_BUG''@/$(HAVE_WCTYPE_CTMP_BUG)/g' \
-e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \
< $(srcdir)/wctype_.h; \
} > $@-t
mv $@-t $@
mostlyclean-local: mostlyclean-generic
@for dir in '' $(MOSTLYCLEANDIRS); do \
if test -n "$$dir" && test -d $$dir; then \
echo "rmdir $$dir"; rmdir $$dir; \
fi; \
done
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

489
gl/alloca.c Normal file
View file

@ -0,0 +1,489 @@
/* alloca.c -- allocate automatically reclaimed memory
(Mostly) portable public-domain implementation -- D A Gwyn
This implementation of the PWB library alloca function,
which is used to allocate space off the run-time stack so
that it is automatically reclaimed upon procedure exit,
was inspired by discussions with J. Q. Johnson of Cornell.
J.Otto Tennant <jot@cray.com> contributed the Cray support.
There are some preprocessor constants that can
be defined when compiling for your specific system, for
improved efficiency; however, the defaults should be okay.
The general concept of this implementation is to keep
track of all alloca-allocated blocks, and reclaim any
that are found to be deeper in the stack than the current
invocation. This heuristic does not reclaim storage as
soon as it becomes invalid, but it will do so eventually.
As a special case, alloca(0) reclaims storage without
allocating any. It is a good idea to use alloca(0) in
your main control loop, etc. to force garbage collection. */
#include <config.h>
#include <alloca.h>
#include <string.h>
#include <stdlib.h>
#ifdef emacs
# include "lisp.h"
# include "blockinput.h"
# ifdef EMACS_FREE
# undef free
# define free EMACS_FREE
# endif
#else
# define memory_full() abort ()
#endif
/* If compiling with GCC 2, this file's not needed. */
#if !defined (__GNUC__) || __GNUC__ < 2
/* If someone has defined alloca as a macro,
there must be some other way alloca is supposed to work. */
# ifndef alloca
# ifdef emacs
# ifdef static
/* actually, only want this if static is defined as ""
-- this is for usg, in which emacs must undefine static
in order to make unexec workable
*/
# ifndef STACK_DIRECTION
you
lose
-- must know STACK_DIRECTION at compile-time
/* Using #error here is not wise since this file should work for
old and obscure compilers. */
# endif /* STACK_DIRECTION undefined */
# endif /* static */
# endif /* emacs */
/* If your stack is a linked list of frames, you have to
provide an "address metric" ADDRESS_FUNCTION macro. */
# if defined (CRAY) && defined (CRAY_STACKSEG_END)
long i00afunc ();
# define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg))
# else
# define ADDRESS_FUNCTION(arg) &(arg)
# endif
/* Define STACK_DIRECTION if you know the direction of stack
growth for your system; otherwise it will be automatically
deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
# ifndef STACK_DIRECTION
# define STACK_DIRECTION 0 /* Direction unknown. */
# endif
# if STACK_DIRECTION != 0
# define STACK_DIR STACK_DIRECTION /* Known at compile-time. */
# else /* STACK_DIRECTION == 0; need run-time code. */
static int stack_dir; /* 1 or -1 once known. */
# define STACK_DIR stack_dir
static void
find_stack_direction (void)
{
static char *addr = NULL; /* Address of first `dummy', once known. */
auto char dummy; /* To get stack address. */
if (addr == NULL)
{ /* Initial entry. */
addr = ADDRESS_FUNCTION (dummy);
find_stack_direction (); /* Recurse once. */
}
else
{
/* Second entry. */
if (ADDRESS_FUNCTION (dummy) > addr)
stack_dir = 1; /* Stack grew upward. */
else
stack_dir = -1; /* Stack grew downward. */
}
}
# endif /* STACK_DIRECTION == 0 */
/* An "alloca header" is used to:
(a) chain together all alloca'ed blocks;
(b) keep track of stack depth.
It is very important that sizeof(header) agree with malloc
alignment chunk size. The following default should work okay. */
# ifndef ALIGN_SIZE
# define ALIGN_SIZE sizeof(double)
# endif
typedef union hdr
{
char align[ALIGN_SIZE]; /* To force sizeof(header). */
struct
{
union hdr *next; /* For chaining headers. */
char *deep; /* For stack depth measure. */
} h;
} header;
static header *last_alloca_header = NULL; /* -> last alloca header. */
/* Return a pointer to at least SIZE bytes of storage,
which will be automatically reclaimed upon exit from
the procedure that called alloca. Originally, this space
was supposed to be taken from the current stack frame of the
caller, but that method cannot be made to work for some
implementations of C, for example under Gould's UTX/32. */
void *
alloca (size_t size)
{
auto char probe; /* Probes stack depth: */
register char *depth = ADDRESS_FUNCTION (probe);
# if STACK_DIRECTION == 0
if (STACK_DIR == 0) /* Unknown growth direction. */
find_stack_direction ();
# endif
/* Reclaim garbage, defined as all alloca'd storage that
was allocated from deeper in the stack than currently. */
{
register header *hp; /* Traverses linked list. */
# ifdef emacs
BLOCK_INPUT;
# endif
for (hp = last_alloca_header; hp != NULL;)
if ((STACK_DIR > 0 && hp->h.deep > depth)
|| (STACK_DIR < 0 && hp->h.deep < depth))
{
register header *np = hp->h.next;
free (hp); /* Collect garbage. */
hp = np; /* -> next header. */
}
else
break; /* Rest are not deeper. */
last_alloca_header = hp; /* -> last valid storage. */
# ifdef emacs
UNBLOCK_INPUT;
# endif
}
if (size == 0)
return NULL; /* No allocation required. */
/* Allocate combined header + user data storage. */
{
/* Address of header. */
register header *new;
size_t combined_size = sizeof (header) + size;
if (combined_size < sizeof (header))
memory_full ();
new = malloc (combined_size);
if (! new)
memory_full ();
new->h.next = last_alloca_header;
new->h.deep = depth;
last_alloca_header = new;
/* User storage begins just after header. */
return (void *) (new + 1);
}
}
# if defined (CRAY) && defined (CRAY_STACKSEG_END)
# ifdef DEBUG_I00AFUNC
# include <stdio.h>
# endif
# ifndef CRAY_STACK
# define CRAY_STACK
# ifndef CRAY2
/* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */
struct stack_control_header
{
long shgrow:32; /* Number of times stack has grown. */
long shaseg:32; /* Size of increments to stack. */
long shhwm:32; /* High water mark of stack. */
long shsize:32; /* Current size of stack (all segments). */
};
/* The stack segment linkage control information occurs at
the high-address end of a stack segment. (The stack
grows from low addresses to high addresses.) The initial
part of the stack segment linkage control information is
0200 (octal) words. This provides for register storage
for the routine which overflows the stack. */
struct stack_segment_linkage
{
long ss[0200]; /* 0200 overflow words. */
long sssize:32; /* Number of words in this segment. */
long ssbase:32; /* Offset to stack base. */
long:32;
long sspseg:32; /* Offset to linkage control of previous
segment of stack. */
long:32;
long sstcpt:32; /* Pointer to task common address block. */
long sscsnm; /* Private control structure number for
microtasking. */
long ssusr1; /* Reserved for user. */
long ssusr2; /* Reserved for user. */
long sstpid; /* Process ID for pid based multi-tasking. */
long ssgvup; /* Pointer to multitasking thread giveup. */
long sscray[7]; /* Reserved for Cray Research. */
long ssa0;
long ssa1;
long ssa2;
long ssa3;
long ssa4;
long ssa5;
long ssa6;
long ssa7;
long sss0;
long sss1;
long sss2;
long sss3;
long sss4;
long sss5;
long sss6;
long sss7;
};
# else /* CRAY2 */
/* The following structure defines the vector of words
returned by the STKSTAT library routine. */
struct stk_stat
{
long now; /* Current total stack size. */
long maxc; /* Amount of contiguous space which would
be required to satisfy the maximum
stack demand to date. */
long high_water; /* Stack high-water mark. */
long overflows; /* Number of stack overflow ($STKOFEN) calls. */
long hits; /* Number of internal buffer hits. */
long extends; /* Number of block extensions. */
long stko_mallocs; /* Block allocations by $STKOFEN. */
long underflows; /* Number of stack underflow calls ($STKRETN). */
long stko_free; /* Number of deallocations by $STKRETN. */
long stkm_free; /* Number of deallocations by $STKMRET. */
long segments; /* Current number of stack segments. */
long maxs; /* Maximum number of stack segments so far. */
long pad_size; /* Stack pad size. */
long current_address; /* Current stack segment address. */
long current_size; /* Current stack segment size. This
number is actually corrupted by STKSTAT to
include the fifteen word trailer area. */
long initial_address; /* Address of initial segment. */
long initial_size; /* Size of initial segment. */
};
/* The following structure describes the data structure which trails
any stack segment. I think that the description in 'asdef' is
out of date. I only describe the parts that I am sure about. */
struct stk_trailer
{
long this_address; /* Address of this block. */
long this_size; /* Size of this block (does not include
this trailer). */
long unknown2;
long unknown3;
long link; /* Address of trailer block of previous
segment. */
long unknown5;
long unknown6;
long unknown7;
long unknown8;
long unknown9;
long unknown10;
long unknown11;
long unknown12;
long unknown13;
long unknown14;
};
# endif /* CRAY2 */
# endif /* not CRAY_STACK */
# ifdef CRAY2
/* Determine a "stack measure" for an arbitrary ADDRESS.
I doubt that "lint" will like this much. */
static long
i00afunc (long *address)
{
struct stk_stat status;
struct stk_trailer *trailer;
long *block, size;
long result = 0;
/* We want to iterate through all of the segments. The first
step is to get the stack status structure. We could do this
more quickly and more directly, perhaps, by referencing the
$LM00 common block, but I know that this works. */
STKSTAT (&status);
/* Set up the iteration. */
trailer = (struct stk_trailer *) (status.current_address
+ status.current_size
- 15);
/* There must be at least one stack segment. Therefore it is
a fatal error if "trailer" is null. */
if (trailer == 0)
abort ();
/* Discard segments that do not contain our argument address. */
while (trailer != 0)
{
block = (long *) trailer->this_address;
size = trailer->this_size;
if (block == 0 || size == 0)
abort ();
trailer = (struct stk_trailer *) trailer->link;
if ((block <= address) && (address < (block + size)))
break;
}
/* Set the result to the offset in this segment and add the sizes
of all predecessor segments. */
result = address - block;
if (trailer == 0)
{
return result;
}
do
{
if (trailer->this_size <= 0)
abort ();
result += trailer->this_size;
trailer = (struct stk_trailer *) trailer->link;
}
while (trailer != 0);
/* We are done. Note that if you present a bogus address (one
not in any segment), you will get a different number back, formed
from subtracting the address of the first block. This is probably
not what you want. */
return (result);
}
# else /* not CRAY2 */
/* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP.
Determine the number of the cell within the stack,
given the address of the cell. The purpose of this
routine is to linearize, in some sense, stack addresses
for alloca. */
static long
i00afunc (long address)
{
long stkl = 0;
long size, pseg, this_segment, stack;
long result = 0;
struct stack_segment_linkage *ssptr;
/* Register B67 contains the address of the end of the
current stack segment. If you (as a subprogram) store
your registers on the stack and find that you are past
the contents of B67, you have overflowed the segment.
B67 also points to the stack segment linkage control
area, which is what we are really interested in. */
stkl = CRAY_STACKSEG_END ();
ssptr = (struct stack_segment_linkage *) stkl;
/* If one subtracts 'size' from the end of the segment,
one has the address of the first word of the segment.
If this is not the first segment, 'pseg' will be
nonzero. */
pseg = ssptr->sspseg;
size = ssptr->sssize;
this_segment = stkl - size;
/* It is possible that calling this routine itself caused
a stack overflow. Discard stack segments which do not
contain the target address. */
while (!(this_segment <= address && address <= stkl))
{
# ifdef DEBUG_I00AFUNC
fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl);
# endif
if (pseg == 0)
break;
stkl = stkl - pseg;
ssptr = (struct stack_segment_linkage *) stkl;
size = ssptr->sssize;
pseg = ssptr->sspseg;
this_segment = stkl - size;
}
result = address - this_segment;
/* If you subtract pseg from the current end of the stack,
you get the address of the previous stack segment's end.
This seems a little convoluted to me, but I'll bet you save
a cycle somewhere. */
while (pseg != 0)
{
# ifdef DEBUG_I00AFUNC
fprintf (stderr, "%011o %011o\n", pseg, size);
# endif
stkl = stkl - pseg;
ssptr = (struct stack_segment_linkage *) stkl;
size = ssptr->sssize;
pseg = ssptr->sspseg;
result += size;
}
return (result);
}
# endif /* not CRAY2 */
# endif /* CRAY */
# endif /* no alloca */
#endif /* not GCC version 2 */

54
gl/alloca_.h Normal file
View file

@ -0,0 +1,54 @@
/* Memory allocation on the stack.
Copyright (C) 1995, 1999, 2001, 2002, 2003, 2004, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
USA. */
/* Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H
means there is a real alloca function. */
#ifndef _GNULIB_ALLOCA_H
# define _GNULIB_ALLOCA_H
/* alloca (N) returns a pointer to N bytes of memory
allocated on the stack, which will last until the function returns.
Use of alloca should be avoided:
- inside arguments of function calls - undefined behaviour,
- in inline functions - the allocation may actually last until the
calling function returns,
- for huge N (say, N >= 65536) - you never know how large (or small)
the stack is, and when the stack cannot fulfill the memory allocation
request, the program just crashes.
*/
#ifndef alloca
# ifdef __GNUC__
# define alloca __builtin_alloca
# elif defined _AIX
# define alloca __alloca
# elif defined _MSC_VER
# include <malloc.h>
# define alloca _alloca
# else
# include <stddef.h>
# ifdef __cplusplus
extern "C"
# endif
void *alloca (size_t);
# endif
#endif
#endif /* _GNULIB_ALLOCA_H */

35
gl/asnprintf.c Normal file
View file

@ -0,0 +1,35 @@
/* Formatted output to strings.
Copyright (C) 1999, 2002, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
/* Specification. */
#include "vasnprintf.h"
#include <stdarg.h>
char *
asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...)
{
va_list args;
char *result;
va_start (args, format);
result = vasnprintf (resultbuf, lengthp, format, args);
va_end (args);
return result;
}

35
gl/asprintf.c Normal file
View file

@ -0,0 +1,35 @@
/* Formatted output to strings.
Copyright (C) 1999, 2002, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
/* Specification. */
#include "vasprintf.h"
#include <stdarg.h>
int
asprintf (char **resultp, const char *format, ...)
{
va_list args;
int result;
va_start (args, format);
result = vasprintf (resultp, format, args);
va_end (args);
return result;
}

129
gl/basename.c Normal file
View file

@ -0,0 +1,129 @@
/* basename.c -- return the last element in a file name
Copyright (C) 1990, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
#include "dirname.h"
#include <string.h>
#include "xalloc.h"
#include "xstrndup.h"
/* Return the address of the last file name component of NAME. If
NAME has no relative file name components because it is a file
system root, return the empty string. */
char *
last_component (char const *name)
{
char const *base = name + FILE_SYSTEM_PREFIX_LEN (name);
char const *p;
bool saw_slash = false;
while (ISSLASH (*base))
base++;
for (p = base; *p; p++)
{
if (ISSLASH (*p))
saw_slash = true;
else if (saw_slash)
{
base = p;
saw_slash = false;
}
}
return (char *) base;
}
/* In general, we can't use the builtin `basename' function if available,
since it has different meanings in different environments.
In some environments the builtin `basename' modifies its argument.
Return the last file name component of NAME, allocated with
xmalloc. On systems with drive letters, a leading "./"
distinguishes relative names that would otherwise look like a drive
letter. Unlike POSIX basename(), NAME cannot be NULL,
base_name("") returns "", and the first trailing slash is not
stripped.
If lstat (NAME) would succeed, then { chdir (dir_name (NAME));
lstat (base_name (NAME)); } will access the same file. Likewise,
if the sequence { chdir (dir_name (NAME));
rename (base_name (NAME), "foo"); } succeeds, you have renamed NAME
to "foo" in the same directory NAME was in. */
char *
base_name (char const *name)
{
char const *base = last_component (name);
size_t length;
/* If there is no last component, then name is a file system root or the
empty string. */
if (! *base)
return xstrndup (name, base_len (name));
/* Collapse a sequence of trailing slashes into one. */
length = base_len (base);
if (ISSLASH (base[length]))
length++;
/* On systems with drive letters, `a/b:c' must return `./b:c' rather
than `b:c' to avoid confusion with a drive letter. On systems
with pure POSIX semantics, this is not an issue. */
if (FILE_SYSTEM_PREFIX_LEN (base))
{
char *p = xmalloc (length + 3);
p[0] = '.';
p[1] = '/';
memcpy (p + 2, base, length);
p[length + 2] = '\0';
return p;
}
/* Finally, copy the basename. */
return xstrndup (base, length);
}
/* Return the length of the basename NAME. Typically NAME is the
value returned by base_name or last_component. Act like strlen
(NAME), except omit all trailing slashes. */
size_t
base_len (char const *name)
{
size_t len;
size_t prefix_len = FILE_SYSTEM_PREFIX_LEN (name);
for (len = strlen (name); 1 < len && ISSLASH (name[len - 1]); len--)
continue;
if (DOUBLE_SLASH_IS_DISTINCT_ROOT && len == 1
&& ISSLASH (name[0]) && ISSLASH (name[1]) && ! name[2])
return 2;
if (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE && prefix_len
&& len == prefix_len && ISSLASH (name[prefix_len]))
return prefix_len + 1;
return len;
}

View file

@ -1,6 +1,6 @@
/* Convert string to double, using the C locale. /* Convert string to double, using the C locale.
Copyright (C) 2003, 2004 Free Software Foundation, Inc. Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -18,9 +18,7 @@
/* Written by Paul Eggert. */ /* Written by Paul Eggert. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "c-strtod.h" #include "c-strtod.h"

View file

@ -1,5 +1,6 @@
/* closexec.c - set or clear the close-on-exec descriptor flag /* closexec.c - set or clear the close-on-exec descriptor flag
Copyright (C) 1991, 2004, 2005 Free Software Foundation, Inc.
Copyright (C) 1991, 2004, 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -17,9 +18,7 @@
The code is taken from glibc/manual/llio.texi */ The code is taken from glibc/manual/llio.texi */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "cloexec.h" #include "cloexec.h"

View file

@ -1,5 +1,6 @@
/* Invoke creat, but avoid some glitches. /* Invoke creat, but avoid some glitches.
Copyright (C) 2005 Free Software Foundation, Inc.
Copyright (C) 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -17,9 +18,7 @@
/* Written by Jim Meyering. */ /* Written by Jim Meyering. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "fcntl-safer.h" #include "fcntl-safer.h"

85
gl/dirname.c Normal file
View file

@ -0,0 +1,85 @@
/* dirname.c -- return all but the last element in a file name
Copyright (C) 1990, 1998, 2000, 2001, 2003, 2004, 2005, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
#include "dirname.h"
#include <string.h>
#include "xalloc.h"
/* Return the length of the prefix of FILE that will be used by
dir_name. If FILE is in the working directory, this returns zero
even though `dir_name (FILE)' will return ".". Works properly even
if there are trailing slashes (by effectively ignoring them). */
size_t
dir_len (char const *file)
{
size_t prefix_length = FILE_SYSTEM_PREFIX_LEN (file);
size_t length;
/* Advance prefix_length beyond important leading slashes. */
prefix_length += (prefix_length != 0
? (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
&& ISSLASH (file[prefix_length]))
: (ISSLASH (file[0])
? ((DOUBLE_SLASH_IS_DISTINCT_ROOT
&& ISSLASH (file[1]) && ! ISSLASH (file[2])
? 2 : 1))
: 0));
/* Strip the basename and any redundant slashes before it. */
for (length = last_component (file) - file;
prefix_length < length; length--)
if (! ISSLASH (file[length - 1]))
break;
return length;
}
/* In general, we can't use the builtin `dirname' function if available,
since it has different meanings in different environments.
In some environments the builtin `dirname' modifies its argument.
Return the leading directories part of FILE, allocated with xmalloc.
Works properly even if there are trailing slashes (by effectively
ignoring them). Unlike POSIX dirname(), FILE cannot be NULL.
If lstat (FILE) would succeed, then { chdir (dir_name (FILE));
lstat (base_name (FILE)); } will access the same file. Likewise,
if the sequence { chdir (dir_name (FILE));
rename (base_name (FILE), "foo"); } succeeds, you have renamed FILE
to "foo" in the same directory FILE was in. */
char *
dir_name (char const *file)
{
size_t length = dir_len (file);
bool append_dot = (length == 0
|| (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
&& length == FILE_SYSTEM_PREFIX_LEN (file)
&& file[2] != '\0' && ! ISSLASH (file[2])));
char *dir = xmalloc (length + append_dot + 1);
memcpy (dir, file, length);
if (append_dot)
dir[length++] = '.';
dir[length] = '\0';
return dir;
}

View file

@ -1,6 +1,6 @@
/* Take file names apart into directory and base names. /* Take file names apart into directory and base names.
Copyright (C) 1998, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. Copyright (C) 1998, 2001, 2003-2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -31,16 +31,39 @@
# endif # endif
# ifndef FILE_SYSTEM_PREFIX_LEN # ifndef FILE_SYSTEM_PREFIX_LEN
# define FILE_SYSTEM_PREFIX_LEN(File_name) 0 # if FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX
/* This internal macro assumes ASCII, but all hosts that support drive
letters use ASCII. */
# define _IS_DRIVE_LETTER(c) (((unsigned int) (c) | ('a' - 'A')) - 'a' \
<= 'z' - 'a')
# define FILE_SYSTEM_PREFIX_LEN(Filename) \
(_IS_DRIVE_LETTER ((Filename)[0]) && (Filename)[1] == ':' ? 2 : 0)
# else
# define FILE_SYSTEM_PREFIX_LEN(Filename) 0
# endif
# endif # endif
# define IS_ABSOLUTE_FILE_NAME(F) ISSLASH ((F)[FILE_SYSTEM_PREFIX_LEN (F)]) # ifndef FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
# define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0
# endif
# ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
# endif
# if FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
# define IS_ABSOLUTE_FILE_NAME(F) ISSLASH ((F)[FILE_SYSTEM_PREFIX_LEN (F)])
# else
# define IS_ABSOLUTE_FILE_NAME(F) \
(ISSLASH ((F)[0]) || 0 < FILE_SYSTEM_PREFIX_LEN (F))
# endif
# define IS_RELATIVE_FILE_NAME(F) (! IS_ABSOLUTE_FILE_NAME (F)) # define IS_RELATIVE_FILE_NAME(F) (! IS_ABSOLUTE_FILE_NAME (F))
char *base_name (char const *file); char *base_name (char const *file);
char *dir_name (char const *file); char *dir_name (char const *file);
size_t base_len (char const *file); size_t base_len (char const *file);
size_t dir_len (char const *file); size_t dir_len (char const *file);
char *last_component (char const *file);
bool strip_trailing_slashes (char *file); bool strip_trailing_slashes (char *file);

View file

@ -1,5 +1,6 @@
/* Invoke dup, but avoid some glitches. /* Invoke dup, but avoid some glitches.
Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
Copyright (C) 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -17,9 +18,7 @@
/* Written by Paul Eggert. */ /* Written by Paul Eggert. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "unistd-safer.h" #include "unistd-safer.h"
@ -36,7 +35,7 @@
int int
dup_safer (int fd) dup_safer (int fd)
{ {
#ifdef F_DUPFD #if defined F_DUPFD && !defined FCHDIR_REPLACEMENT
return fcntl (fd, F_DUPFD, STDERR_FILENO + 1); return fcntl (fd, F_DUPFD, STDERR_FILENO + 1);
#else #else
/* fd_safer calls us back, but eventually the recursion unwinds and /* fd_safer calls us back, but eventually the recursion unwinds and

View file

@ -1,5 +1,5 @@
/* Error handler for noninteractive utilities /* Error handler for noninteractive utilities
Copyright (C) 1990-1998, 2000-2003, 2004 Free Software Foundation, Inc. Copyright (C) 1990-1998, 2000-2005, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -18,7 +18,7 @@
/* Written by David MacKenzie <djm@gnu.ai.mit.edu>. */ /* Written by David MacKenzie <djm@gnu.ai.mit.edu>. */
#ifdef HAVE_CONFIG_H #if !_LIBC
# include <config.h> # include <config.h>
#endif #endif
@ -34,6 +34,9 @@
#endif #endif
#ifdef _LIBC #ifdef _LIBC
# include <libintl.h>
# include <stdbool.h>
# include <stdint.h>
# include <wchar.h> # include <wchar.h>
# define mbsrtowcs __mbsrtowcs # define mbsrtowcs __mbsrtowcs
#endif #endif
@ -59,6 +62,7 @@ unsigned int error_message_count;
# define program_name program_invocation_name # define program_name program_invocation_name
# include <errno.h> # include <errno.h>
# include <limits.h>
# include <libio/libioP.h> # include <libio/libioP.h>
/* In GNU libc we want do not want to use the common name `error' directly. /* In GNU libc we want do not want to use the common name `error' directly.
@ -88,23 +92,19 @@ extern void __error_at_line (int status, int errnum, const char *file_name,
char *strerror_r (); char *strerror_r ();
# endif # endif
# ifndef SIZE_MAX
# define SIZE_MAX ((size_t) -1)
# endif
/* The calling program should define program_name and set it to the /* The calling program should define program_name and set it to the
name of the executing program. */ name of the executing program. */
extern char *program_name; extern char *program_name;
# if HAVE_STRERROR_R || defined strerror_r # if HAVE_STRERROR_R || defined strerror_r
# define __strerror_r strerror_r # define __strerror_r strerror_r
# endif # endif /* HAVE_STRERROR_R || defined strerror_r */
#endif /* not _LIBC */ #endif /* not _LIBC */
static void static void
print_errno_message (int errnum) print_errno_message (int errnum)
{ {
char const *s = NULL; char const *s;
#if defined HAVE_STRERROR_R || _LIBC #if defined HAVE_STRERROR_R || _LIBC
char errbuf[1024]; char errbuf[1024];
@ -113,23 +113,23 @@ print_errno_message (int errnum)
# else # else
if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0) if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0)
s = errbuf; s = errbuf;
else
s = 0;
# endif # endif
#else
s = strerror (errnum);
#endif #endif
#if !_LIBC #if !_LIBC
if (! s && ! (s = strerror (errnum))) if (! s)
s = _("Unknown system error"); s = _("Unknown system error");
#endif #endif
#if _LIBC #if _LIBC
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, ": %s", s);
{ #else
__fwprintf (stderr, L": %s", s);
return;
}
#endif
fprintf (stderr, ": %s", s); fprintf (stderr, ": %s", s);
#endif
} }
static void static void
@ -140,26 +140,65 @@ error_tail (int status, int errnum, const char *message, va_list args)
{ {
# define ALLOCA_LIMIT 2000 # define ALLOCA_LIMIT 2000
size_t len = strlen (message) + 1; size_t len = strlen (message) + 1;
const wchar_t *wmessage = L"out of memory"; wchar_t *wmessage = NULL;
wchar_t *wbuf = (len < ALLOCA_LIMIT mbstate_t st;
? alloca (len * sizeof *wbuf) size_t res;
: len <= SIZE_MAX / sizeof *wbuf const char *tmp;
? malloc (len * sizeof *wbuf) bool use_malloc = false;
: NULL);
if (wbuf) while (1)
{ {
size_t res; if (__libc_use_alloca (len * sizeof (wchar_t)))
mbstate_t st; wmessage = (wchar_t *) alloca (len * sizeof (wchar_t));
const char *tmp = message; else
{
if (!use_malloc)
wmessage = NULL;
wchar_t *p = (wchar_t *) realloc (wmessage,
len * sizeof (wchar_t));
if (p == NULL)
{
free (wmessage);
fputws_unlocked (L"out of memory\n", stderr);
return;
}
wmessage = p;
use_malloc = true;
}
memset (&st, '\0', sizeof (st)); memset (&st, '\0', sizeof (st));
res = mbsrtowcs (wbuf, &tmp, len, &st); tmp = message;
wmessage = res == (size_t) -1 ? L"???" : wbuf;
res = mbsrtowcs (wmessage, &tmp, len, &st);
if (res != len)
break;
if (__builtin_expect (len >= SIZE_MAX / 2, 0))
{
/* This really should not happen if everything is fine. */
res = (size_t) -1;
break;
}
len *= 2;
}
if (res == (size_t) -1)
{
/* The string cannot be converted. */
if (use_malloc)
{
free (wmessage);
use_malloc = false;
}
wmessage = (wchar_t *) L"???";
} }
__vfwprintf (stderr, wmessage, args); __vfwprintf (stderr, wmessage, args);
if (! (len < ALLOCA_LIMIT))
free (wbuf); if (use_malloc)
free (wmessage);
} }
else else
#endif #endif
@ -170,11 +209,10 @@ error_tail (int status, int errnum, const char *message, va_list args)
if (errnum) if (errnum)
print_errno_message (errnum); print_errno_message (errnum);
#if _LIBC #if _LIBC
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "\n");
putwc (L'\n', stderr); #else
else putc ('\n', stderr);
#endif #endif
putc ('\n', stderr);
fflush (stderr); fflush (stderr);
if (status) if (status)
exit (status); exit (status);
@ -207,11 +245,10 @@ error (int status, int errnum, const char *message, ...)
else else
{ {
#if _LIBC #if _LIBC
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s: ", program_name);
__fwprintf (stderr, L"%s: ", program_name); #else
else fprintf (stderr, "%s: ", program_name);
#endif #endif
fprintf (stderr, "%s: ", program_name);
} }
va_start (args, message); va_start (args, message);
@ -267,22 +304,19 @@ error_at_line (int status, int errnum, const char *file_name,
else else
{ {
#if _LIBC #if _LIBC
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s:", program_name);
__fwprintf (stderr, L"%s: ", program_name); #else
else fprintf (stderr, "%s:", program_name);
#endif #endif
fprintf (stderr, "%s:", program_name);
} }
if (file_name != NULL)
{
#if _LIBC #if _LIBC
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, file_name != NULL ? "%s:%d: " : " ",
__fwprintf (stderr, L"%s:%d: ", file_name, line_number); file_name, line_number);
else #else
fprintf (stderr, file_name != NULL ? "%s:%d: " : " ",
file_name, line_number);
#endif #endif
fprintf (stderr, "%s:%d: ", file_name, line_number);
}
va_start (args, message); va_start (args, message);
error_tail (status, errnum, message, args); error_tail (status, errnum, message, args);

View file

@ -1,5 +1,5 @@
/* Declaration for error-reporting function /* Declaration for error-reporting function
Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc. Copyright (C) 1995, 1996, 1997, 2003, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -21,7 +21,7 @@
#ifndef __attribute__ #ifndef __attribute__
/* This feature is available in gcc versions 2.5 and later. */ /* This feature is available in gcc versions 2.5 and later. */
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__
# define __attribute__(Spec) /* empty */ # define __attribute__(Spec) /* empty */
# endif # endif
/* The __-protected variants of `format' and `printf' attributes /* The __-protected variants of `format' and `printf' attributes

View file

@ -21,7 +21,7 @@
/* Get exit() declaration. */ /* Get exit() declaration. */
#include <stdlib.h> #include <stdlib.h>
/* Some systems do not define EXIT_*, even with STDC_HEADERS. */ /* Some systems do not define EXIT_*, despite otherwise supporting C89. */
#ifndef EXIT_SUCCESS #ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0 # define EXIT_SUCCESS 0
#endif #endif

View file

@ -1,6 +1,6 @@
/* Failure exit status /* Failure exit status
Copyright (C) 2002, 2003 Free Software Foundation, Inc. Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -17,9 +17,7 @@
If not, write to the Free Software Foundation, If not, write to the Free Software Foundation,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "exitfail.h" #include "exitfail.h"
#include "exit.h" #include "exit.h"

View file

@ -1,6 +1,6 @@
/* Return a safer copy of a file descriptor. /* Return a safer copy of a file descriptor.
Copyright (C) 2005 Free Software Foundation, Inc. Copyright (C) 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -18,9 +18,7 @@
/* Written by Paul Eggert. */ /* Written by Paul Eggert. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#include "unistd-safer.h" #include "unistd-safer.h"

View file

@ -1,6 +1,6 @@
/* fsusage.c -- return space usage of mounted file systems /* fsusage.c -- return space usage of mounted file systems
Copyright (C) 1991, 1992, 1996, 1998, 1999, 2002, 2003, 2004, 2005 Copyright (C) 1991, 1992, 1996, 1998, 1999, 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc. Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -17,62 +17,49 @@
along with this program; if not, write to the Free Software Foundation, along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
#if HAVE_INTTYPES_H
# include <inttypes.h>
#endif
#if HAVE_STDINT_H
# include <stdint.h>
#endif
#include <unistd.h>
#ifndef UINTMAX_MAX
# define UINTMAX_MAX ((uintmax_t) -1)
#endif
#include <sys/types.h>
#include <sys/stat.h>
#include "fsusage.h" #include "fsusage.h"
#include <limits.h> #include <limits.h>
#include <sys/types.h>
#if HAVE_SYS_PARAM_H #if STAT_STATVFS /* POSIX 1003.1-2001 (and later) with XSI */
# include <sys/param.h>
#endif
#if HAVE_SYS_MOUNT_H
# include <sys/mount.h>
#endif
#if HAVE_SYS_VFS_H
# include <sys/vfs.h>
#endif
#if HAVE_SYS_FS_S5PARAM_H /* Fujitsu UXP/V */
# include <sys/fs/s5param.h>
#endif
#if defined HAVE_SYS_FILSYS_H && !defined _CRAY
# include <sys/filsys.h> /* SVR2 */
#endif
#include <fcntl.h>
#if HAVE_SYS_STATFS_H
# include <sys/statfs.h>
#endif
#if HAVE_DUSTAT_H /* AIX PS/2 */
# include <sys/dustat.h>
#endif
#if HAVE_SYS_STATVFS_H /* SVR4 */
# include <sys/statvfs.h> # include <sys/statvfs.h>
#else
/* Don't include backward-compatibility files unless they're needed.
Eventually we'd like to remove all this cruft. */
# include <fcntl.h>
# include <unistd.h>
# include <sys/stat.h>
# if HAVE_SYS_PARAM_H
# include <sys/param.h>
# endif
# if HAVE_SYS_MOUNT_H
# include <sys/mount.h>
# endif
# if HAVE_SYS_VFS_H
# include <sys/vfs.h>
# endif
# if HAVE_SYS_FS_S5PARAM_H /* Fujitsu UXP/V */
# include <sys/fs/s5param.h>
# endif
# if defined HAVE_SYS_FILSYS_H && !defined _CRAY
# include <sys/filsys.h> /* SVR2 */
# endif
# if HAVE_SYS_STATFS_H
# include <sys/statfs.h>
# endif
# if HAVE_DUSTAT_H /* AIX PS/2 */
# include <sys/dustat.h>
# endif
# include "full-read.h"
#endif #endif
#include "full-read.h" /* The results of open() in this file are not used with fchdir,
therefore save some unnecessary work in fchdir.c. */
#undef open
#undef close
/* Many space usage primitives use all 1 bits to denote a value that is /* Many space usage primitives use all 1 bits to denote a value that is
not applicable or unknown. Propagate this information by returning not applicable or unknown. Propagate this information by returning
@ -83,7 +70,7 @@
&& (~ (x) == (sizeof (x) < sizeof (int) \ && (~ (x) == (sizeof (x) < sizeof (int) \
? - (1 << (sizeof (x) * CHAR_BIT)) \ ? - (1 << (sizeof (x) * CHAR_BIT)) \
: 0))) \ : 0))) \
? UINTMAX_MAX : (x)) ? UINTMAX_MAX : (uintmax_t) (x))
/* Extract the top bit of X as an uintmax_t value. */ /* Extract the top bit of X as an uintmax_t value. */
#define EXTRACT_TOP_BIT(x) ((x) \ #define EXTRACT_TOP_BIT(x) ((x) \
@ -108,18 +95,19 @@
int int
get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp) get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
{ {
#ifdef STAT_STATFS3_OSF1 #if defined STAT_STATVFS /* POSIX */
struct statfs fsd; struct statvfs fsd;
if (statfs (file, &fsd, sizeof (struct statfs)) != 0) if (statvfs (file, &fsd) < 0)
return -1; return -1;
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize); /* f_frsize isn't guaranteed to be supported. */
fsp->fsu_blocksize = (fsd.f_frsize
? PROPAGATE_ALL_ONES (fsd.f_frsize)
: PROPAGATE_ALL_ONES (fsd.f_bsize));
#endif /* STAT_STATFS3_OSF1 */ #elif defined STAT_STATFS2_FS_DATA /* Ultrix */
#ifdef STAT_STATFS2_FS_DATA /* Ultrix */
struct fs_data fsd; struct fs_data fsd;
@ -134,9 +122,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
fsp->fsu_files = PROPAGATE_ALL_ONES (fsd.fd_req.gtot); fsp->fsu_files = PROPAGATE_ALL_ONES (fsd.fd_req.gtot);
fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.fd_req.gfree); fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.fd_req.gfree);
#endif /* STAT_STATFS2_FS_DATA */ #elif defined STAT_READ_FILSYS /* SVR2 */
#ifdef STAT_READ_FILSYS /* SVR2 */
# ifndef SUPERBOFF # ifndef SUPERBOFF
# define SUPERBOFF (SUPERB * 512) # define SUPERBOFF (SUPERB * 512)
# endif # endif
@ -171,9 +157,16 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
: (fsd.s_isize - 2) * INOPB * (fsd.s_type == Fs2b ? 2 : 1)); : (fsd.s_isize - 2) * INOPB * (fsd.s_type == Fs2b ? 2 : 1));
fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.s_tinode); fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.s_tinode);
#endif /* STAT_READ_FILSYS */ #elif defined STAT_STATFS3_OSF1
#ifdef STAT_STATFS2_BSIZE /* 4.3BSD, SunOS 4, HP-UX, AIX */ struct statfs fsd;
if (statfs (file, &fsd, sizeof (struct statfs)) != 0)
return -1;
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize);
#elif defined STAT_STATFS2_BSIZE /* 4.3BSD, SunOS 4, HP-UX, AIX */
struct statfs fsd; struct statfs fsd;
@ -197,9 +190,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
} }
# endif /* STATFS_TRUNCATES_BLOCK_COUNTS */ # endif /* STATFS_TRUNCATES_BLOCK_COUNTS */
#endif /* STAT_STATFS2_BSIZE */ #elif defined STAT_STATFS2_FSIZE /* 4.4BSD */
#ifdef STAT_STATFS2_FSIZE /* 4.4BSD */
struct statfs fsd; struct statfs fsd;
@ -208,9 +199,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize); fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize);
#endif /* STAT_STATFS2_FSIZE */ #elif defined STAT_STATFS4 /* SVR3, Dynix, Irix, AIX */
#ifdef STAT_STATFS4 /* SVR3, Dynix, Irix, AIX */
# if !_AIX && !defined _SEQUENT_ && !defined DOLPHIN # if !_AIX && !defined _SEQUENT_ && !defined DOLPHIN
# define f_bavail f_bfree # define f_bavail f_bfree
@ -230,24 +219,10 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
fsp->fsu_blocksize = 512; fsp->fsu_blocksize = 512;
# endif # endif
#endif /* STAT_STATFS4 */ #endif
#ifdef STAT_STATVFS /* SVR4 */ #if (defined STAT_STATVFS \
|| (!defined STAT_STATFS2_FS_DATA && !defined STAT_READ_FILSYS))
struct statvfs fsd;
if (statvfs (file, &fsd) < 0)
return -1;
/* f_frsize isn't guaranteed to be supported. */
fsp->fsu_blocksize = (fsd.f_frsize
? PROPAGATE_ALL_ONES (fsd.f_frsize)
: PROPAGATE_ALL_ONES (fsd.f_bsize));
#endif /* STAT_STATVFS */
#if !defined STAT_STATFS2_FS_DATA && !defined STAT_READ_FILSYS
/* !Ultrix && !SVR2 */
fsp->fsu_blocks = PROPAGATE_ALL_ONES (fsd.f_blocks); fsp->fsu_blocks = PROPAGATE_ALL_ONES (fsd.f_blocks);
fsp->fsu_bfree = PROPAGATE_ALL_ONES (fsd.f_bfree); fsp->fsu_bfree = PROPAGATE_ALL_ONES (fsd.f_bfree);
@ -256,7 +231,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
fsp->fsu_files = PROPAGATE_ALL_ONES (fsd.f_files); fsp->fsu_files = PROPAGATE_ALL_ONES (fsd.f_files);
fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.f_ffree); fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.f_ffree);
#endif /* not STAT_STATFS2_FS_DATA && not STAT_READ_FILSYS */ #endif
return 0; return 0;
} }

View file

@ -1,6 +1,6 @@
/* fsusage.h -- declarations for file system space usage info /* fsusage.h -- declarations for file system space usage info
Copyright (C) 1991, 1992, 1997, 2003, 2004, 2005 Free Software Copyright (C) 1991, 1992, 1997, 2003, 2004, 2005, 2006 Free Software
Foundation, Inc. Foundation, Inc.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -22,6 +22,7 @@
#if !defined FSUSAGE_H_ #if !defined FSUSAGE_H_
# define FSUSAGE_H_ # define FSUSAGE_H_
# include <stdint.h>
# include <stdbool.h> # include <stdbool.h>
struct fs_usage struct fs_usage

View file

@ -1,7 +1,7 @@
/* An interface to read and write that retries (if necessary) until complete. /* An interface to read and write that retries (if necessary) until complete.
Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
2004 Free Software Foundation, Inc. 2004, 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -17,9 +17,7 @@
along with this program; if not, write to the Free Software Foundation, along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifdef HAVE_CONFIG_H #include <config.h>
# include <config.h>
#endif
/* Specification. */ /* Specification. */
#ifdef FULL_READ #ifdef FULL_READ
@ -62,7 +60,7 @@ size_t
full_rw (int fd, const void *buf, size_t count) full_rw (int fd, const void *buf, size_t count)
{ {
size_t total = 0; size_t total = 0;
const char *ptr = buf; const char *ptr = (const char *) buf;
while (count > 0) while (count > 0)
{ {

77
gl/gai_strerror.c Normal file
View file

@ -0,0 +1,77 @@
/* Copyright (C) 1997, 2001, 2002, 2004, 2005, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Philip Blundell <pjb27@cam.ac.uk>, 1997.
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifndef _LIBC
# include <config.h>
# include "getaddrinfo.h"
#endif
#include <stdio.h>
#ifdef HAVE_NETDB_H
# include <netdb.h>
#endif
#ifdef _LIBC
# include <libintl.h>
#else
# include "gettext.h"
# define _(String) gettext (String)
# define N_(String) String
#endif
static struct
{
int code;
const char *msg;
}
values[] =
{
{ EAI_ADDRFAMILY, N_("Address family for hostname not supported") },
{ EAI_AGAIN, N_("Temporary failure in name resolution") },
{ EAI_BADFLAGS, N_("Bad value for ai_flags") },
{ EAI_FAIL, N_("Non-recoverable failure in name resolution") },
{ EAI_FAMILY, N_("ai_family not supported") },
{ EAI_MEMORY, N_("Memory allocation failure") },
{ EAI_NODATA, N_("No address associated with hostname") },
{ EAI_NONAME, N_("Name or service not known") },
{ EAI_SERVICE, N_("Servname not supported for ai_socktype") },
{ EAI_SOCKTYPE, N_("ai_socktype not supported") },
{ EAI_SYSTEM, N_("System error") },
#ifdef __USE_GNU
{ EAI_INPROGRESS, N_("Processing request in progress") },
{ EAI_CANCELED, N_("Request canceled") },
{ EAI_NOTCANCELED, N_("Request not canceled") },
{ EAI_ALLDONE, N_("All requests done") },
{ EAI_INTR, N_("Interrupted by a signal") },
{ EAI_IDN_ENCODE, N_("Parameter string not correctly encoded") }
#endif
};
const char *
gai_strerror (int code)
{
size_t i;
for (i = 0; i < sizeof (values) / sizeof (values[0]); ++i)
if (values[i].code == code)
return _(values[i].msg);
return _("Unknown error");
}
#ifdef _LIBC
libc_hidden_def (gai_strerror)
#endif

417
gl/getaddrinfo.c Normal file
View file

@ -0,0 +1,417 @@
/* Get address information (partial implementation).
Copyright (C) 1997, 2001, 2002, 2004, 2005, 2006 Free Software
Foundation, Inc.
Contributed by Simon Josefsson <simon@josefsson.org>.
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
#include "getaddrinfo.h"
#if HAVE_NETINET_IN_H
# include <netinet/in.h>
#endif
/* Get calloc. */
#include <stdlib.h>
/* Get memcpy. */
#include <string.h>
#include <stdbool.h>
#include "gettext.h"
#define _(String) gettext (String)
#define N_(String) String
#include "inet_ntop.h"
#include "snprintf.h"
#include "strdup.h"
/* BeOS has AF_INET, but not PF_INET. */
#ifndef PF_INET
# define PF_INET AF_INET
#endif
/* BeOS also lacks PF_UNSPEC. */
#ifndef PF_UNSPEC
# define PF_UNSPEC 0
#endif
#if defined _WIN32 || defined __WIN32__
# define WIN32_NATIVE
#endif
#ifdef WIN32_NATIVE
typedef int (WSAAPI *getaddrinfo_func) (const char*, const char*,
const struct addrinfo*,
struct addrinfo**);
typedef void (WSAAPI *freeaddrinfo_func) (struct addrinfo*);
typedef int (WSAAPI *getnameinfo_func) (const struct sockaddr*,
socklen_t, char*, DWORD,
char*, DWORD, int);
static getaddrinfo_func getaddrinfo_ptr = NULL;
static freeaddrinfo_func freeaddrinfo_ptr = NULL;
static getnameinfo_func getnameinfo_ptr = NULL;
static int
use_win32_p (void)
{
static int done = 0;
HMODULE h;
if (done)
return getaddrinfo_ptr ? 1 : 0;
done = 1;
h = GetModuleHandle ("ws2_32.dll");
if (h)
{
getaddrinfo_ptr = (getaddrinfo_func) GetProcAddress (h, "getaddrinfo");
freeaddrinfo_ptr = (freeaddrinfo_func) GetProcAddress (h, "freeaddrinfo");
getnameinfo_ptr = (getnameinfo_func) GetProcAddress (h, "getnameinfo");
}
/* If either is missing, something is odd. */
if (!getaddrinfo_ptr || !freeaddrinfo_ptr || !getnameinfo_ptr)
{
getaddrinfo_ptr = NULL;
freeaddrinfo_ptr = NULL;
getnameinfo_ptr = NULL;
return 0;
}
return 1;
}
#endif
static inline bool
validate_family (int family)
{
/* FIXME: Support more families. */
#if HAVE_IPV4
if (family == PF_INET)
return true;
#endif
#if HAVE_IPV6
if (family == PF_INET6)
return true;
#endif
if (family == PF_UNSPEC)
return true;
return false;
}
/* Translate name of a service location and/or a service name to set of
socket addresses. */
int
getaddrinfo (const char *restrict nodename,
const char *restrict servname,
const struct addrinfo *restrict hints,
struct addrinfo **restrict res)
{
struct addrinfo *tmp;
int port = 0;
struct hostent *he;
void *storage;
size_t size;
#if HAVE_IPV6
struct v6_pair {
struct addrinfo addrinfo;
struct sockaddr_in6 sockaddr_in6;
};
#endif
#if HAVE_IPV4
struct v4_pair {
struct addrinfo addrinfo;
struct sockaddr_in sockaddr_in;
};
#endif
#ifdef WIN32_NATIVE
if (use_win32_p ())
return getaddrinfo_ptr (nodename, servname, hints, res);
#endif
if (hints && (hints->ai_flags & ~(AI_CANONNAME|AI_PASSIVE)))
/* FIXME: Support more flags. */
return EAI_BADFLAGS;
if (hints && !validate_family (hints->ai_family))
return EAI_FAMILY;
if (hints &&
hints->ai_socktype != SOCK_STREAM && hints->ai_socktype != SOCK_DGRAM)
/* FIXME: Support other socktype. */
return EAI_SOCKTYPE; /* FIXME: Better return code? */
if (!nodename)
{
if (!(hints->ai_flags & AI_PASSIVE))
return EAI_NONAME;
#ifdef HAVE_IPV6
nodename = (hints->ai_family == AF_INET6) ? "::" : "0.0.0.0";
#else
nodename = "0.0.0.0";
#endif
}
if (servname)
{
struct servent *se = NULL;
const char *proto =
(hints && hints->ai_socktype == SOCK_DGRAM) ? "udp" : "tcp";
if (!(hints->ai_flags & AI_NUMERICSERV))
/* FIXME: Use getservbyname_r if available. */
se = getservbyname (servname, proto);
if (!se)
{
char *c;
if (!(*servname >= '0' && *servname <= '9'))
return EAI_NONAME;
port = strtoul (servname, &c, 10);
if (*c || port > 0xffff)
return EAI_NONAME;
port = htons (port);
}
else
port = se->s_port;
}
/* FIXME: Use gethostbyname_r if available. */
he = gethostbyname (nodename);
if (!he || he->h_addr_list[0] == NULL)
return EAI_NONAME;
switch (he->h_addrtype)
{
#if HAVE_IPV6
case PF_INET6:
size = sizeof (struct v6_pair);
break;
#endif
#if HAVE_IPV4
case PF_INET:
size = sizeof (struct v4_pair);
break;
#endif
default:
return EAI_NODATA;
}
storage = calloc (1, size);
if (!storage)
return EAI_MEMORY;
switch (he->h_addrtype)
{
#if HAVE_IPV6
case PF_INET6:
{
struct v6_pair *p = storage;
struct sockaddr_in6 *sinp = &p->sockaddr_in6;
tmp = &p->addrinfo;
if (port)
sinp->sin6_port = port;
if (he->h_length != sizeof (sinp->sin6_addr))
{
free (storage);
return EAI_SYSTEM; /* FIXME: Better return code? Set errno? */
}
memcpy (&sinp->sin6_addr, he->h_addr_list[0], sizeof sinp->sin6_addr);
tmp->ai_addr = (struct sockaddr *) sinp;
tmp->ai_addrlen = sizeof *sinp;
}
break;
#endif
#if HAVE_IPV4
case PF_INET:
{
struct v4_pair *p = storage;
struct sockaddr_in *sinp = &p->sockaddr_in;
tmp = &p->addrinfo;
if (port)
sinp->sin_port = port;
if (he->h_length != sizeof (sinp->sin_addr))
{
free (storage);
return EAI_SYSTEM; /* FIXME: Better return code? Set errno? */
}
memcpy (&sinp->sin_addr, he->h_addr_list[0], sizeof sinp->sin_addr);
tmp->ai_addr = (struct sockaddr *) sinp;
tmp->ai_addrlen = sizeof *sinp;
}
break;
#endif
default:
free (storage);
return EAI_NODATA;
}
if (hints && hints->ai_flags & AI_CANONNAME)
{
const char *cn;
if (he->h_name)
cn = he->h_name;
else
cn = nodename;
tmp->ai_canonname = strdup (cn);
if (!tmp->ai_canonname)
{
free (storage);
return EAI_MEMORY;
}
}
tmp->ai_protocol = (hints) ? hints->ai_protocol : 0;
tmp->ai_socktype = (hints) ? hints->ai_socktype : 0;
tmp->ai_addr->sa_family = he->h_addrtype;
tmp->ai_family = he->h_addrtype;
/* FIXME: If more than one address, create linked list of addrinfo's. */
*res = tmp;
return 0;
}
/* Free `addrinfo' structure AI including associated storage. */
void
freeaddrinfo (struct addrinfo *ai)
{
#ifdef WIN32_NATIVE
if (use_win32_p ())
{
freeaddrinfo_ptr (ai);
return;
}
#endif
while (ai)
{
struct addrinfo *cur;
cur = ai;
ai = ai->ai_next;
if (cur->ai_canonname) free (cur->ai_canonname);
free (cur);
}
}
int getnameinfo(const struct sockaddr *restrict sa, socklen_t salen,
char *restrict node, socklen_t nodelen,
char *restrict service, socklen_t servicelen,
int flags)
{
#ifdef WIN32_NATIVE
if (use_win32_p ())
return getnameinfo_ptr (sa, salen, node, nodelen,
service, servicelen, flags);
#endif
/* FIXME: Support other flags. */
if ((node && nodelen > 0 && !(flags & NI_NUMERICHOST)) ||
(service && servicelen > 0 && !(flags & NI_NUMERICHOST)) ||
(flags & ~(NI_NUMERICHOST|NI_NUMERICSERV)))
return EAI_BADFLAGS;
if (sa == NULL || salen < sizeof (sa->sa_family))
return EAI_FAMILY;
switch (sa->sa_family)
{
#if HAVE_IPV4
case AF_INET:
if (salen < sizeof (struct sockaddr_in))
return EAI_FAMILY;
break;
#endif
#if HAVE_IPV6
case AF_INET6:
if (salen < sizeof (struct sockaddr_in6))
return EAI_FAMILY;
break;
#endif
default:
return EAI_FAMILY;
}
if (node && nodelen > 0 && flags & NI_NUMERICHOST)
{
switch (sa->sa_family)
{
#if HAVE_IPV4
case AF_INET:
if (!inet_ntop (AF_INET,
&(((const struct sockaddr_in *) sa)->sin_addr),
node, nodelen))
return EAI_SYSTEM;
break;
#endif
#if HAVE_IPV6
case AF_INET6:
if (!inet_ntop (AF_INET6,
&(((const struct sockaddr_in6 *) sa)->sin6_addr),
node, nodelen))
return EAI_SYSTEM;
break;
#endif
default:
return EAI_FAMILY;
}
}
if (service && servicelen > 0 && flags & NI_NUMERICSERV)
switch (sa->sa_family)
{
#if HAVE_IPV4
case AF_INET:
#endif
#if HAVE_IPV6
case AF_INET6:
#endif
{
unsigned short int port
= ntohs (((const struct sockaddr_in *) sa)->sin_port);
if (servicelen <= snprintf (service, servicelen, "%u", port))
return EAI_OVERFLOW;
}
break;
}
return 0;
}

155
gl/getaddrinfo.h Normal file
View file

@ -0,0 +1,155 @@
/* Get address information.
Copyright (C) 1996-2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
Contributed by Simon Josefsson <simon@josefsson.org>.
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifndef GETADDRINFO_H
#define GETADDRINFO_H
/* sys/socket.h in i386-unknown-freebsd4.10 and
powerpc-apple-darwin5.5 require sys/types.h, so include it first.
Then we'll also get 'socklen_t' and 'struct sockaddr' which are
used below. */
#include <sys/types.h>
/* Get all getaddrinfo related declarations, if available. */
#include <sys/socket.h>
#ifdef HAVE_NETDB_H
# include <netdb.h>
#endif
#ifndef HAVE_STRUCT_ADDRINFO
/* Structure to contain information about address of a service provider. */
struct addrinfo
{
int ai_flags; /* Input flags. */
int ai_family; /* Protocol family for socket. */
int ai_socktype; /* Socket type. */
int ai_protocol; /* Protocol for socket. */
socklen_t ai_addrlen; /* Length of socket address. */
struct sockaddr *ai_addr; /* Socket address for socket. */
char *ai_canonname; /* Canonical name for service location. */
struct addrinfo *ai_next; /* Pointer to next in list. */
};
#endif
/* Possible values for `ai_flags' field in `addrinfo' structure. */
#ifndef AI_PASSIVE
# define AI_PASSIVE 0x0001 /* Socket address is intended for `bind'. */
#endif
#ifndef AI_CANONNAME
# define AI_CANONNAME 0x0002 /* Request for canonical name. */
#endif
#ifndef AI_NUMERICSERV
# define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */
#endif
#if 0
/* The commented out definitions below are not yet implemented in the
GNULIB getaddrinfo() replacement, so are not yet needed and may, in fact,
cause conflicts on systems with a getaddrinfo() function which does not
define them.
If they are restored, be sure to protect the definitions with #ifndef. */
#define AI_NUMERICHOST 0x0004 /* Don't use name resolution. */
#define AI_V4MAPPED 0x0008 /* IPv4 mapped addresses are acceptable. */
#define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */
#define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose
returned address type.. */
#endif /* 0 */
/* Error values for `getaddrinfo' function. */
#ifndef EAI_BADFLAGS
# define EAI_BADFLAGS -1 /* Invalid value for `ai_flags' field. */
# define EAI_NONAME -2 /* NAME or SERVICE is unknown. */
# define EAI_AGAIN -3 /* Temporary failure in name resolution. */
# define EAI_FAIL -4 /* Non-recoverable failure in name res. */
# define EAI_NODATA -5 /* No address associated with NAME. */
# define EAI_FAMILY -6 /* `ai_family' not supported. */
# define EAI_SOCKTYPE -7 /* `ai_socktype' not supported. */
# define EAI_SERVICE -8 /* SERVICE not supported for `ai_socktype'. */
# define EAI_MEMORY -10 /* Memory allocation failure. */
#endif
#ifndef EAI_OVERFLOW
/* Not defined on mingw32. */
# define EAI_OVERFLOW -12 /* Argument buffer overflow. */
#endif
#ifndef EAI_ADDRFAMILY
/* Not defined on mingw32. */
# define EAI_ADDRFAMILY -9 /* Address family for NAME not supported. */
#endif
#ifndef EAI_SYSTEM
/* Not defined on mingw32. */
# define EAI_SYSTEM -11 /* System error returned in `errno'. */
#endif
#ifdef __USE_GNU
# ifndef EAI_INPROGRESS
# define EAI_INPROGRESS -100 /* Processing request in progress. */
# define EAI_CANCELED -101 /* Request canceled. */
# define EAI_NOTCANCELED -102 /* Request not canceled. */
# define EAI_ALLDONE -103 /* All requests done. */
# define EAI_INTR -104 /* Interrupted by a signal. */
# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
# endif
#endif
#if !HAVE_DECL_GETADDRINFO
/* Translate name of a service location and/or a service name to set of
socket addresses.
For more details, see the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/getaddrinfo.html>. */
extern int getaddrinfo (const char *restrict nodename,
const char *restrict servname,
const struct addrinfo *restrict hints,
struct addrinfo **restrict res);
#endif
#if !HAVE_DECL_FREEADDRINFO
/* Free `addrinfo' structure AI including associated storage.
For more details, see the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/getaddrinfo.html>. */
extern void freeaddrinfo (struct addrinfo *ai);
#endif
#if !HAVE_DECL_GAI_STRERROR
/* Convert error return from getaddrinfo() to a string.
For more details, see the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/gai_strerror.html>. */
extern const char *gai_strerror (int ecode);
#endif
#if !HAVE_DECL_GETNAMEINFO
/* Convert socket address to printable node and service names.
For more details, see the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/getnameinfo.html>. */
extern int getnameinfo(const struct sockaddr *restrict sa, socklen_t salen,
char *restrict node, socklen_t nodelen,
char *restrict service, socklen_t servicelen,
int flags);
#endif
/* Possible flags for getnameinfo. */
#ifndef NI_NUMERICHOST
# define NI_NUMERICHOST 1
#endif
#ifndef NI_NUMERICSERV
# define NI_NUMERICSERV 2
#endif
#endif /* GETADDRINFO_H */

52
gl/gethostname.c Normal file
View file

@ -0,0 +1,52 @@
/* gethostname emulation for SysV and POSIX.1.
Copyright (C) 1992, 2003, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
/* David MacKenzie <djm@gnu.ai.mit.edu> */
#include <config.h>
#ifdef HAVE_UNAME
# include <sys/utsname.h>
#endif
/* Put up to LEN chars of the host name into NAME.
Null terminate it if the name is shorter than LEN.
Return 0 if ok, -1 if error. */
#include <stddef.h>
int
gethostname (char *name, size_t len)
{
#ifdef HAVE_UNAME
struct utsname uts;
if (uname (&uts) == -1)
return -1;
if (len > sizeof (uts.nodename))
{
/* More space than we need is available. */
name[sizeof (uts.nodename)] = '\0';
len = sizeof (uts.nodename);
}
strncpy (name, uts.nodename, len);
#else
strcpy (name, ""); /* Hardcode your system name if you want. */
#endif
return 0;
}

View file

@ -1,7 +1,8 @@
/* Get the system load averages. /* Get the system load averages.
Copyright (C) 1985, 1986, 1987, 1988, 1989, 1991, 1992, 1993, 1994, Copyright (C) 1985, 1986, 1987, 1988, 1989, 1991, 1992, 1993, 1994,
1995, 1997, 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. 1995, 1997, 1999, 2000, 2003, 2004, 2005, 2006 Free Software
Foundation, Inc.
NOTE: The canonical source of this file is maintained with gnulib. NOTE: The canonical source of this file is maintained with gnulib.
Bugs can be reported to bug-gnulib@gnu.org. Bugs can be reported to bug-gnulib@gnu.org.
@ -80,13 +81,15 @@
We also #define LDAV_PRIVILEGED if a program will require We also #define LDAV_PRIVILEGED if a program will require
special installation to be able to call getloadavg. */ special installation to be able to call getloadavg. */
/* This should always be first. */ /* "configure" defines CONFIGURING_GETLOADAVG to sidestep problems
#ifdef HAVE_CONFIG_H with partially-configured source directories. */
#ifndef CONFIGURING_GETLOADAVG
# include <config.h> # include <config.h>
# include <stdbool.h>
#endif #endif
#include <errno.h> #include <errno.h>
#include <stdbool.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
@ -279,7 +282,7 @@
# endif # endif
# ifndef FSCALE # ifndef FSCALE
/* SunOS and some others define FSCALE in sys/param.h. */ /* SunOS and some others define FSCALE in sys/param.h. */
@ -358,7 +361,7 @@
# ifdef LOAD_AVE_TYPE # ifdef LOAD_AVE_TYPE
# ifndef VMS # ifndef __VMS
# ifndef __linux__ # ifndef __linux__
# ifndef NLIST_STRUCT # ifndef NLIST_STRUCT
# include <a.out.h> # include <a.out.h>
@ -385,7 +388,7 @@
# endif /* LDAV_SYMBOL */ # endif /* LDAV_SYMBOL */
# endif /* __linux__ */ # endif /* __linux__ */
# else /* VMS */ # else /* __VMS */
# ifndef eunice # ifndef eunice
# include <iodef.h> # include <iodef.h>
@ -393,7 +396,7 @@
# else /* eunice */ # else /* eunice */
# include <vms/iodef.h> # include <vms/iodef.h>
# endif /* eunice */ # endif /* eunice */
# endif /* VMS */ # endif /* __VMS */
# ifndef LDAV_CVT # ifndef LDAV_CVT
# define LDAV_CVT(n) ((double) (n)) # define LDAV_CVT(n) ((double) (n))
@ -473,9 +476,9 @@ static bool getloadavg_initialized;
/* Offset in kmem to seek to read load average, or 0 means invalid. */ /* Offset in kmem to seek to read load average, or 0 means invalid. */
static long offset; static long offset;
# if !defined (VMS) && !defined (sgi) && !defined (__linux__) # if ! defined __VMS && ! defined sgi && ! defined __linux__
static struct nlist nl[2]; static struct nlist nl[2];
# endif /* Not VMS or sgi */ # endif
# ifdef SUNOS_5 # ifdef SUNOS_5
static kvm_t *kd; static kvm_t *kd;
@ -813,7 +816,7 @@ getloadavg (double loadavg[], int nelem)
: (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale)); : (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale));
# endif /* OSF_ALPHA */ # endif /* OSF_ALPHA */
# if !defined (LDAV_DONE) && defined (VMS) # if ! defined LDAV_DONE && defined __VMS
/* VMS specific code -- read from the Load Ave driver. */ /* VMS specific code -- read from the Load Ave driver. */
LOAD_AVE_TYPE load_ave[3]; LOAD_AVE_TYPE load_ave[3];
@ -851,9 +854,9 @@ getloadavg (double loadavg[], int nelem)
if (!getloadavg_initialized) if (!getloadavg_initialized)
return -1; return -1;
# endif /* VMS */ # endif /* ! defined LDAV_DONE && defined __VMS */
# if !defined (LDAV_DONE) && defined (LOAD_AVE_TYPE) && !defined (VMS) # if ! defined LDAV_DONE && defined LOAD_AVE_TYPE && ! defined __VMS
/* UNIX-specific code -- read the average from /dev/kmem. */ /* UNIX-specific code -- read the average from /dev/kmem. */
@ -953,7 +956,7 @@ getloadavg (double loadavg[], int nelem)
if (offset == 0 || !getloadavg_initialized) if (offset == 0 || !getloadavg_initialized)
return -1; return -1;
# endif /* LOAD_AVE_TYPE and not VMS */ # endif /* ! defined LDAV_DONE && defined LOAD_AVE_TYPE && ! defined __VMS */
# if !defined (LDAV_DONE) && defined (LOAD_AVE_TYPE) /* Including VMS. */ # if !defined (LDAV_DONE) && defined (LOAD_AVE_TYPE) /* Including VMS. */
if (nelem > 0) if (nelem > 0)

View file

@ -2,7 +2,7 @@
NOTE: getopt is now part of the C library, so if you don't know what 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 drepper@gnu.org "Keep this file name-space clean" means, talk to drepper@gnu.org
before changing it! before changing it!
Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003,2004 Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003,2004,2006
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
@ -20,30 +20,18 @@
with this program; if not, write to the Free Software Foundation, with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>. #ifndef _LIBC
Ditto for AIX 3.2 and <stdlib.h>. */
#ifndef _NO_PROTO
# define _NO_PROTO
#endif
#ifdef HAVE_CONFIG_H
# include <config.h> # include <config.h>
#endif #endif
#include "getopt.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
/* 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. */
#include <string.h> #include <string.h>
#include <unistd.h>
#ifdef VMS #ifdef __VMS
# include <unixlib.h> # include <unixlib.h>
#endif #endif
@ -76,7 +64,6 @@
GNU application programs can use a third alternative mode in which GNU application programs can use a third alternative mode in which
they can distinguish the relative order of options and other arguments. */ they can distinguish the relative order of options and other arguments. */
#include "getopt.h"
#include "getopt_int.h" #include "getopt_int.h"
/* For communication from `getopt' to the caller. /* For communication from `getopt' to the caller.
@ -118,16 +105,9 @@ int optopt = '?';
static struct _getopt_data getopt_data; static struct _getopt_data getopt_data;
#ifndef __GNU_LIBRARY__ #if defined HAVE_DECL_GETENV && !HAVE_DECL_GETENV
/* Avoid depending on library functions or files
whose names are inconsistent. */
#ifndef getenv
extern char *getenv (); extern char *getenv ();
#endif #endif
#endif /* not __GNU_LIBRARY__ */
#ifdef _LIBC #ifdef _LIBC
/* Stored original parameters. /* Stored original parameters.
@ -556,10 +536,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -634,10 +611,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
((_IO_FILE *) stderr)->_flags2 ((_IO_FILE *) stderr)->_flags2
|= _IO_FLAGS2_NOTCANCEL; |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -674,10 +648,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
((_IO_FILE *) stderr)->_flags2 ((_IO_FILE *) stderr)->_flags2
|= _IO_FLAGS2_NOTCANCEL; |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -751,10 +722,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -817,10 +785,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -868,10 +833,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -940,10 +902,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -985,10 +944,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
((_IO_FILE *) stderr)->_flags2 ((_IO_FILE *) stderr)->_flags2
|= _IO_FLAGS2_NOTCANCEL; |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -1027,10 +983,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
((_IO_FILE *) stderr)->_flags2 ((_IO_FILE *) stderr)->_flags2
|= _IO_FLAGS2_NOTCANCEL; |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);
@ -1101,10 +1054,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring,
int old_flags2 = ((_IO_FILE *) stderr)->_flags2; int old_flags2 = ((_IO_FILE *) stderr)->_flags2;
((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL;
if (_IO_fwide (stderr, 0) > 0) __fxprintf (NULL, "%s", buf);
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
((_IO_FILE *) stderr)->_flags2 = old_flags2; ((_IO_FILE *) stderr)->_flags2 = old_flags2;
_IO_funlockfile (stderr); _IO_funlockfile (stderr);

View file

@ -1,5 +1,5 @@
/* getopt_long and getopt_long_only entry points for GNU getopt. /* getopt_long and getopt_long_only entry points for GNU getopt.
Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98,2004 Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98,2004,2006
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
@ -17,13 +17,10 @@
with this program; if not, write to the Free Software Foundation, with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#ifdef _LIBC #ifdef _LIBC
# include <getopt.h> # include <getopt.h>
#else #else
# include <config.h>
# include "getopt.h" # include "getopt.h"
#endif #endif
#include "getopt_int.h" #include "getopt_int.h"

View file

@ -1,5 +1,5 @@
/* Declarations for getopt. /* Declarations for getopt.
Copyright (C) 1989-1994,1996-1999,2001,2003,2004,2005 Copyright (C) 1989-1994,1996-1999,2001,2003,2004,2005,2006
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
@ -196,9 +196,10 @@ struct option
scanning, explicitly telling `getopt' that there are no more scanning, explicitly telling `getopt' that there are no more
options. options.
If OPTS begins with `--', then non-option arguments are treated as If OPTS begins with `-', then non-option arguments are treated as
arguments to the option '\0'. This behavior is specific to the GNU arguments to the option '\1'. This behavior is specific to the GNU
`getopt'. */ `getopt'. If OPTS begins with `+', or POSIXLY_CORRECT is set in
the environment, then do not permute arguments. */
extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
__THROW; __THROW;

270
gl/gettext.h Normal file
View file

@ -0,0 +1,270 @@
/* Convenience header for conditional use of GNU <libintl.h>.
Copyright (C) 1995-1998, 2000-2002, 2004-2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#ifndef _LIBGETTEXT_H
#define _LIBGETTEXT_H 1
/* NLS can be disabled through the configure --disable-nls option. */
#if ENABLE_NLS
/* Get declarations of GNU message catalog functions. */
# include <libintl.h>
/* You can set the DEFAULT_TEXT_DOMAIN macro to specify the domain used by
the gettext() and ngettext() macros. This is an alternative to calling
textdomain(), and is useful for libraries. */
# ifdef DEFAULT_TEXT_DOMAIN
# undef gettext
# define gettext(Msgid) \
dgettext (DEFAULT_TEXT_DOMAIN, Msgid)
# undef ngettext
# define ngettext(Msgid1, Msgid2, N) \
dngettext (DEFAULT_TEXT_DOMAIN, Msgid1, Msgid2, N)
# endif
#else
/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which
chokes if dcgettext is defined as a macro. So include it now, to make
later inclusions of <locale.h> a NOP. We don't include <libintl.h>
as well because people using "gettext.h" will not include <libintl.h>,
and also including <libintl.h> would fail on SunOS 4, whereas <locale.h>
is OK. */
#if defined(__sun)
# include <locale.h>
#endif
/* Many header files from the libstdc++ coming with g++ 3.3 or newer include
<libintl.h>, which chokes if dcgettext is defined as a macro. So include
it now, to make later inclusions of <libintl.h> a NOP. */
#if defined(__cplusplus) && defined(__GNUG__) && (__GNUC__ >= 3)
# include <cstdlib>
# if (__GLIBC__ >= 2) || _GLIBCXX_HAVE_LIBINTL_H
# include <libintl.h>
# endif
#endif
/* Disabled NLS.
The casts to 'const char *' serve the purpose of producing warnings
for invalid uses of the value returned from these functions.
On pre-ANSI systems without 'const', the config.h file is supposed to
contain "#define const". */
# define gettext(Msgid) ((const char *) (Msgid))
# define dgettext(Domainname, Msgid) ((void) (Domainname), gettext (Msgid))
# define dcgettext(Domainname, Msgid, Category) \
((void) (Category), dgettext (Domainname, Msgid))
# define ngettext(Msgid1, Msgid2, N) \
((N) == 1 \
? ((void) (Msgid2), (const char *) (Msgid1)) \
: ((void) (Msgid1), (const char *) (Msgid2)))
# define dngettext(Domainname, Msgid1, Msgid2, N) \
((void) (Domainname), ngettext (Msgid1, Msgid2, N))
# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
((void) (Category), dngettext(Domainname, Msgid1, Msgid2, N))
# define textdomain(Domainname) ((const char *) (Domainname))
# define bindtextdomain(Domainname, Dirname) \
((void) (Domainname), (const char *) (Dirname))
# define bind_textdomain_codeset(Domainname, Codeset) \
((void) (Domainname), (const char *) (Codeset))
#endif
/* A pseudo function call that serves as a marker for the automated
extraction of messages, but does not call gettext(). The run-time
translation is done at a different place in the code.
The argument, String, should be a literal string. Concatenated strings
and other string expressions won't work.
The macro's expansion is not parenthesized, so that it is suitable as
initializer for static 'char[]' or 'const char[]' variables. */
#define gettext_noop(String) String
/* The separator between msgctxt and msgid in a .mo file. */
#define GETTEXT_CONTEXT_GLUE "\004"
/* Pseudo function calls, taking a MSGCTXT and a MSGID instead of just a
MSGID. MSGCTXT and MSGID must be string literals. MSGCTXT should be
short and rarely need to change.
The letter 'p' stands for 'particular' or 'special'. */
#ifdef DEFAULT_TEXT_DOMAIN
# define pgettext(Msgctxt, Msgid) \
pgettext_aux (DEFAULT_TEXT_DOMAIN, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES)
#else
# define pgettext(Msgctxt, Msgid) \
pgettext_aux (NULL, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES)
#endif
#define dpgettext(Domainname, Msgctxt, Msgid) \
pgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES)
#define dcpgettext(Domainname, Msgctxt, Msgid, Category) \
pgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, Category)
#ifdef DEFAULT_TEXT_DOMAIN
# define npgettext(Msgctxt, Msgid, MsgidPlural, N) \
npgettext_aux (DEFAULT_TEXT_DOMAIN, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES)
#else
# define npgettext(Msgctxt, Msgid, MsgidPlural, N) \
npgettext_aux (NULL, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES)
#endif
#define dnpgettext(Domainname, Msgctxt, Msgid, MsgidPlural, N) \
npgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES)
#define dcnpgettext(Domainname, Msgctxt, Msgid, MsgidPlural, N, Category) \
npgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, Category)
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static const char *
pgettext_aux (const char *domain,
const char *msg_ctxt_id, const char *msgid,
int category)
{
const char *translation = dcgettext (domain, msg_ctxt_id, category);
if (translation == msg_ctxt_id)
return msgid;
else
return translation;
}
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static const char *
npgettext_aux (const char *domain,
const char *msg_ctxt_id, const char *msgid,
const char *msgid_plural, unsigned long int n,
int category)
{
const char *translation =
dcngettext (domain, msg_ctxt_id, msgid_plural, n, category);
if (translation == msg_ctxt_id || translation == msgid_plural)
return (n == 1 ? msgid : msgid_plural);
else
return translation;
}
/* The same thing extended for non-constant arguments. Here MSGCTXT and MSGID
can be arbitrary expressions. But for string literals these macros are
less efficient than those above. */
#include <string.h>
#define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS \
(((__GNUC__ >= 3 || __GNUG__ >= 2) && !__STRICT_ANSI__) \
/* || __STDC_VERSION__ >= 199901L */ )
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
#include <stdlib.h>
#endif
#define pgettext_expr(Msgctxt, Msgid) \
dcpgettext_expr (NULL, Msgctxt, Msgid, LC_MESSAGES)
#define dpgettext_expr(Domainname, Msgctxt, Msgid) \
dcpgettext_expr (Domainname, Msgctxt, Msgid, LC_MESSAGES)
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static const char *
dcpgettext_expr (const char *domain,
const char *msgctxt, const char *msgid,
int category)
{
size_t msgctxt_len = strlen (msgctxt) + 1;
size_t msgid_len = strlen (msgid) + 1;
const char *translation;
#if _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
char msg_ctxt_id[msgctxt_len + msgid_len];
#else
char buf[1024];
char *msg_ctxt_id =
(msgctxt_len + msgid_len <= sizeof (buf)
? buf
: (char *) malloc (msgctxt_len + msgid_len));
if (msg_ctxt_id != NULL)
#endif
{
memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1);
msg_ctxt_id[msgctxt_len - 1] = '\004';
memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len);
translation = dcgettext (domain, msg_ctxt_id, category);
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
if (msg_ctxt_id != buf)
free (msg_ctxt_id);
#endif
if (translation != msg_ctxt_id)
return translation;
}
return msgid;
}
#define npgettext_expr(Msgctxt, Msgid, MsgidPlural, N) \
dcnpgettext_expr (NULL, Msgctxt, Msgid, MsgidPlural, N, LC_MESSAGES)
#define dnpgettext_expr(Domainname, Msgctxt, Msgid, MsgidPlural, N) \
dcnpgettext_expr (Domainname, Msgctxt, Msgid, MsgidPlural, N, LC_MESSAGES)
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static const char *
dcnpgettext_expr (const char *domain,
const char *msgctxt, const char *msgid,
const char *msgid_plural, unsigned long int n,
int category)
{
size_t msgctxt_len = strlen (msgctxt) + 1;
size_t msgid_len = strlen (msgid) + 1;
const char *translation;
#if _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
char msg_ctxt_id[msgctxt_len + msgid_len];
#else
char buf[1024];
char *msg_ctxt_id =
(msgctxt_len + msgid_len <= sizeof (buf)
? buf
: (char *) malloc (msgctxt_len + msgid_len));
if (msg_ctxt_id != NULL)
#endif
{
memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1);
msg_ctxt_id[msgctxt_len - 1] = '\004';
memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len);
translation = dcngettext (domain, msg_ctxt_id, msgid_plural, n, category);
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
if (msg_ctxt_id != buf)
free (msg_ctxt_id);
#endif
if (!(translation == msg_ctxt_id || translation == msgid_plural))
return translation;
}
return (n == 1 ? msgid : msgid_plural);
}
#endif /* _LIBGETTEXT_H */

238
gl/inet_ntop.c Normal file
View file

@ -0,0 +1,238 @@
/* inet_ntop.c -- convert IPv4 and IPv6 addresses from binary to text form
Copyright (C) 2005, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
/*
* Copyright (c) 1996-1999 by Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
* ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
* CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
* ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
* SOFTWARE.
*/
#include <config.h>
/* Specification. */
#include "inet_ntop.h"
#include <stdio.h>
#include <string.h>
#include <errno.h>
#ifndef EAFNOSUPPORT
# define EAFNOSUPPORT EINVAL
#endif
#define NS_IN6ADDRSZ 16
#define NS_INT16SZ 2
/*
* WARNING: Don't even consider trying to compile this on a system where
* sizeof(int) < 4. sizeof(int) > 4 is fine; all the world's not a VAX.
*/
typedef int verify_int_size[2 * sizeof (int) - 7];
static const char *inet_ntop4 (const unsigned char *src, char *dst, socklen_t size);
#if HAVE_IPV6
static const char *inet_ntop6 (const unsigned char *src, char *dst, socklen_t size);
#endif
/* char *
* inet_ntop(af, src, dst, size)
* convert a network format address to presentation format.
* return:
* pointer to presentation format address (`dst'), or NULL (see errno).
* author:
* Paul Vixie, 1996.
*/
const char *
inet_ntop (int af, const void *restrict src,
char *restrict dst, socklen_t cnt)
{
switch (af)
{
#if HAVE_IPV4
case AF_INET:
return (inet_ntop4 (src, dst, cnt));
#endif
#if HAVE_IPV6
case AF_INET6:
return (inet_ntop6 (src, dst, cnt));
#endif
default:
errno = EAFNOSUPPORT;
return (NULL);
}
/* NOTREACHED */
}
/* const char *
* inet_ntop4(src, dst, size)
* format an IPv4 address
* return:
* `dst' (as a const)
* notes:
* (1) uses no statics
* (2) takes a u_char* not an in_addr as input
* author:
* Paul Vixie, 1996.
*/
static const char *
inet_ntop4 (const unsigned char *src, char *dst, socklen_t size)
{
char tmp[sizeof "255.255.255.255"];
int len;
len = sprintf (tmp, "%u.%u.%u.%u", src[0], src[1], src[2], src[3]);
if (len < 0)
return NULL;
if (len > size)
{
errno = ENOSPC;
return NULL;
}
return strcpy (dst, tmp);
}
#if HAVE_IPV6
/* const char *
* inet_ntop6(src, dst, size)
* convert IPv6 binary address into presentation (printable) format
* author:
* Paul Vixie, 1996.
*/
static const char *
inet_ntop6 (const unsigned char *src, char *dst, socklen_t size)
{
/*
* Note that int32_t and int16_t need only be "at least" large enough
* to contain a value of the specified size. On some systems, like
* Crays, there is no such thing as an integer variable with 16 bits.
* Keep this in mind if you think this function should have been coded
* to use pointer overlays. All the world's not a VAX.
*/
char tmp[sizeof "ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255"], *tp;
struct
{
int base, len;
} best, cur;
unsigned int words[NS_IN6ADDRSZ / NS_INT16SZ];
int i;
/*
* Preprocess:
* Copy the input (bytewise) array into a wordwise array.
* Find the longest run of 0x00's in src[] for :: shorthanding.
*/
memset (words, '\0', sizeof words);
for (i = 0; i < NS_IN6ADDRSZ; i += 2)
words[i / 2] = (src[i] << 8) | src[i + 1];
best.base = -1;
cur.base = -1;
for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
{
if (words[i] == 0)
{
if (cur.base == -1)
cur.base = i, cur.len = 1;
else
cur.len++;
}
else
{
if (cur.base != -1)
{
if (best.base == -1 || cur.len > best.len)
best = cur;
cur.base = -1;
}
}
}
if (cur.base != -1)
{
if (best.base == -1 || cur.len > best.len)
best = cur;
}
if (best.base != -1 && best.len < 2)
best.base = -1;
/*
* Format the result.
*/
tp = tmp;
for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
{
/* Are we inside the best run of 0x00's? */
if (best.base != -1 && i >= best.base && i < (best.base + best.len))
{
if (i == best.base)
*tp++ = ':';
continue;
}
/* Are we following an initial run of 0x00s or any real hex? */
if (i != 0)
*tp++ = ':';
/* Is this address an encapsulated IPv4? */
if (i == 6 && best.base == 0 &&
(best.len == 6 || (best.len == 5 && words[5] == 0xffff)))
{
if (!inet_ntop4 (src + 12, tp, sizeof tmp - (tp - tmp)))
return (NULL);
tp += strlen (tp);
break;
}
{
int len = sprintf (tp, "%x", words[i]);
if (len < 0)
return NULL;
tp += len;
}
}
/* Was it a trailing run of 0x00's? */
if (best.base != -1 && (best.base + best.len) ==
(NS_IN6ADDRSZ / NS_INT16SZ))
*tp++ = ':';
*tp++ = '\0';
/*
* Check for overflow, copy, and we're done.
*/
if ((socklen_t) (tp - tmp) > size)
{
errno = ENOSPC;
return NULL;
}
return strcpy (dst, tmp);
}
#endif

42
gl/inet_ntop.h Normal file
View file

@ -0,0 +1,42 @@
/* Convert internet address from internal to printable, presentable format.
Copyright (C) 2005, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
/* Converts an internet address from internal format to a printable,
presentable format.
AF is an internet address family, such as AF_INET or AF_INET6.
SRC points to a 'struct in_addr' (for AF_INET) or 'struct in6_addr'
(for AF_INET6).
DST points to a buffer having room for CNT bytes.
The printable representation of the address (in numeric form, not
surrounded by [...], no reverse DNS is done) is placed in DST, and
DST is returned. If an error occurs, the return value is NULL and
errno is set. If CNT bytes are not sufficient to hold the result,
the return value is NULL and errno is set to ENOSPC. A good value
for CNT is 46.
For more details, see the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/inet_ntop.html>. */
#if !HAVE_DECL_INET_NTOP
extern const char *inet_ntop (int af, const void *restrict src,
char *restrict dst, socklen_t cnt);
#endif

View file

@ -53,12 +53,25 @@
? (t) -1 \ ? (t) -1 \
: ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))) : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1))))
/* Return zero if T can be determined to be an unsigned type.
Otherwise, return 1.
When compiling with GCC, INT_STRLEN_BOUND uses this macro to obtain a
tighter bound. Otherwise, it overestimates the true bound by one byte
when applied to unsigned types of size 2, 4, 16, ... bytes.
The symbol signed_type_or_expr__ is private to this header file. */
#if __GNUC__ >= 2
# define signed_type_or_expr__(t) TYPE_SIGNED (__typeof__ (t))
#else
# define signed_type_or_expr__(t) 1
#endif
/* Bound on length of the string representing an integer type or expression T. /* Bound on length of the string representing an integer type or expression T.
Subtract 1 for the sign bit if t is signed; log10 (2.0) < 146/485; Subtract 1 for the sign bit if T is signed; log10 (2.0) < 146/485;
add 1 for integer division truncation; add 1 more for a minus sign add 1 for integer division truncation; add 1 more for a minus sign
if needed. */ if needed. */
#define INT_STRLEN_BOUND(t) \ #define INT_STRLEN_BOUND(t) \
((sizeof (t) * CHAR_BIT - 1) * 146 / 485 + 2) ((sizeof (t) * CHAR_BIT - signed_type_or_expr__ (t)) * 146 / 485 \
+ signed_type_or_expr__ (t) + 1)
/* Bound on buffer size needed to represent an integer type or expression T, /* Bound on buffer size needed to represent an integer type or expression T,
including the terminating null. */ including the terminating null. */

44
gl/m4/absolute-header.m4 Normal file
View file

@ -0,0 +1,44 @@
# absolute-header.m4 serial 6
dnl Copyright (C) 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl From Derek Price.
# gl_ABSOLUTE_HEADER(HEADER1 HEADER2 ...)
# ---------------------------------------
# Find the absolute name of a header file, assuming the header exists.
# If the header were sys/inttypes.h, this macro would define
# ABSOLUTE_SYS_INTTYPES_H to the `""' quoted absolute name of sys/inttypes.h
# in config.h
# (e.g. `#define ABSOLUTE_SYS_INTTYPES_H "///usr/include/sys/inttypes.h"').
# The three "///" are to pacify Sun C 5.8, which otherwise would say
# "warning: #include of /usr/include/... may be non-portable".
# Use `""', not `<>', so that the /// cannot be confused with a C99 comment.
AC_DEFUN([gl_ABSOLUTE_HEADER],
[AC_LANG_PREPROC_REQUIRE()dnl
AC_FOREACH([gl_HEADER_NAME], [$1],
[AS_VAR_PUSHDEF([gl_absolute_header],
[gl_cv_absolute_]m4_quote(m4_defn([gl_HEADER_NAME])))dnl
AC_CACHE_CHECK([absolute name of <]m4_quote(m4_defn([gl_HEADER_NAME]))[>],
m4_quote(m4_defn([gl_absolute_header])),
[AS_VAR_PUSHDEF([ac_header_exists],
[ac_cv_header_]m4_quote(m4_defn([gl_HEADER_NAME])))dnl
AC_CHECK_HEADERS_ONCE(m4_quote(m4_defn([gl_HEADER_NAME])))dnl
if test AS_VAR_GET(ac_header_exists) = yes; then
AC_LANG_CONFTEST([AC_LANG_SOURCE([[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]])])
dnl eval is necessary to expand ac_cpp.
dnl Ultrix and Pyramid sh refuse to redirect output of eval, so use subshell.
AS_VAR_SET(gl_absolute_header,
[`(eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD |
sed -n '\#/]m4_quote(m4_defn([gl_HEADER_NAME]))[#{s#.*"\(.*/]m4_quote(m4_defn([gl_HEADER_NAME]))[\)".*#\1#;s#^/[^/]#//&#;p;q;}'`])
fi
AS_VAR_POPDEF([ac_header_exists])dnl
])dnl
AC_DEFINE_UNQUOTED(AS_TR_CPP([ABSOLUTE_]m4_quote(m4_defn([gl_HEADER_NAME]))),
["AS_VAR_GET(gl_absolute_header)"],
[Define this to an absolute name of <]m4_quote(m4_defn([gl_HEADER_NAME]))[>.])
AS_VAR_POPDEF([gl_absolute_header])dnl
])dnl
])# gl_ABSOLUTE_HEADER

View file

@ -1,5 +1,5 @@
# alloca.m4 serial 5 # alloca.m4 serial 7
dnl Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. dnl Copyright (C) 2002-2004, 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -17,16 +17,24 @@ AC_DEFUN([gl_FUNC_ALLOCA],
# Define an additional variable used in the Makefile substitution. # Define an additional variable used in the Makefile substitution.
if test $ac_cv_working_alloca_h = yes; then if test $ac_cv_working_alloca_h = yes; then
AC_EGREP_CPP([Need own alloca], [ AC_CACHE_CHECK([for alloca as a compiler built-in], [gl_cv_rpl_alloca], [
AC_EGREP_CPP([Need own alloca], [
#if defined __GNUC__ || defined _AIX || defined _MSC_VER #if defined __GNUC__ || defined _AIX || defined _MSC_VER
Need own alloca Need own alloca
#endif #endif
], ], [gl_cv_rpl_alloca=yes], [gl_cv_rpl_alloca=no])
[AC_DEFINE(HAVE_ALLOCA, 1, ])
[Define to 1 if you have `alloca' after including <alloca.h>, if test $gl_cv_rpl_alloca = yes; then
a header that may be supplied by this distribution.]) dnl OK, alloca can be implemented through a compiler built-in.
ALLOCA_H=alloca.h], AC_DEFINE([HAVE_ALLOCA], 1,
[ALLOCA_H=]) [Define to 1 if you have 'alloca' after including <alloca.h>,
a header that may be supplied by this distribution.])
ALLOCA_H=alloca.h
else
dnl alloca exists as a library function, i.e. it is slow and probably
dnl a memory leak. Don't define HAVE_ALLOCA in this case.
ALLOCA_H=
fi
else else
ALLOCA_H=alloca.h ALLOCA_H=alloca.h
fi fi

18
gl/m4/arpa_inet_h.m4 Normal file
View file

@ -0,0 +1,18 @@
# arpa_inet_h.m4 serial 1
dnl Copyright (C) 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl Written by Simon Josefsson
AC_DEFUN([gl_HEADER_ARPA_INET],
[
AC_CHECK_HEADERS_ONCE([arpa/inet.h])
if test $ac_cv_header_arpa_inet_h = yes; then
ARPA_INET_H=''
else
ARPA_INET_H='arpa/inet.h'
fi
AC_SUBST(ARPA_INET_H)
])

View file

@ -1,6 +1,6 @@
# c-strtod.m4 serial 6 # c-strtod.m4 serial 9
# Copyright (C) 2004, 2005 Free Software Foundation, Inc. # Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -11,7 +11,7 @@ AC_DEFUN([gl_C99_STRTOLD],
[ [
AC_CACHE_CHECK([whether strtold conforms to C99], AC_CACHE_CHECK([whether strtold conforms to C99],
[gl_cv_func_c99_strtold], [gl_cv_func_c99_strtold],
[AC_COMPILE_IFELSE( [AC_LINK_IFELSE(
[AC_LANG_PROGRAM( [AC_LANG_PROGRAM(
[[/* On HP-UX before 11.23, strtold returns a struct instead of [[/* On HP-UX before 11.23, strtold returns a struct instead of
long double. Reject implementations like that, by requiring long double. Reject implementations like that, by requiring
@ -35,7 +35,6 @@ AC_DEFUN([gl_C99_STRTOLD],
AC_DEFUN([gl_C_STRTOD], AC_DEFUN([gl_C_STRTOD],
[ [
AC_LIBSOURCES([c-strtod.c, c-strtod.h])
AC_LIBOBJ([c-strtod]) AC_LIBOBJ([c-strtod])
dnl Prerequisites of lib/c-strtod.c. dnl Prerequisites of lib/c-strtod.c.
@ -45,11 +44,10 @@ AC_DEFUN([gl_C_STRTOD],
AC_DEFUN([gl_C_STRTOLD], AC_DEFUN([gl_C_STRTOLD],
[ [
AC_LIBSOURCES([c-strtold.c, c-strtod.h])
AC_LIBOBJ([c-strtold]) AC_LIBOBJ([c-strtold])
dnl Prerequisites of lib/c-strtold.c. dnl Prerequisites of lib/c-strtold.c.
AC_REQUIRE([gl_C_STRTOD]) AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
AC_REQUIRE([gl_C99_STRTOLD]) AC_REQUIRE([gl_C99_STRTOLD])
: :
]) ])

10
gl/m4/cloexec.m4 Normal file
View file

@ -0,0 +1,10 @@
#serial 6
dnl Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_CLOEXEC],
[
AC_LIBOBJ([cloexec])
])

View file

@ -1,5 +1,5 @@
# codeset.m4 serial AM1 (gettext-0.10.40) # codeset.m4 serial 2 (gettext-0.16)
dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. dnl Copyright (C) 2000-2002, 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -10,7 +10,7 @@ AC_DEFUN([AM_LANGINFO_CODESET],
[ [
AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
[AC_TRY_LINK([#include <langinfo.h>], [AC_TRY_LINK([#include <langinfo.h>],
[char* cs = nl_langinfo(CODESET);], [char* cs = nl_langinfo(CODESET); return !cs;],
am_cv_langinfo_codeset=yes, am_cv_langinfo_codeset=yes,
am_cv_langinfo_codeset=no) am_cv_langinfo_codeset=no)
]) ])

18
gl/m4/dirname.m4 Normal file
View file

@ -0,0 +1,18 @@
#serial 7 -*- autoconf -*-
dnl Copyright (C) 2002-2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_DIRNAME],
[
AC_LIBOBJ([basename])
AC_LIBOBJ([dirname])
AC_LIBOBJ([stripslash])
dnl Prerequisites of lib/dirname.h.
AC_REQUIRE([gl_AC_DOS])
AC_REQUIRE([gl_DOUBLE_SLASH_ROOT])
dnl No prerequisites of lib/basename.c, lib/dirname.c, lib/stripslash.c.
])

View file

@ -1,9 +1,9 @@
#serial 9 #serial 10 -*- autoconf -*-
# Define some macros required for proper operation of code in lib/*.c # Define some macros required for proper operation of code in lib/*.c
# on MSDOS/Windows systems. # on MSDOS/Windows systems.
# Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc. # Copyright (C) 2000, 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,30 +14,38 @@ AC_DEFUN([gl_AC_DOS],
[ [
AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos], AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos],
[ [
AC_TRY_COMPILE([], AC_TRY_COMPILE([],
[#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __CYGWIN__ [#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __CYGWIN__
neither MSDOS nor Windows neither MSDOS nor Windows
#endif], #endif],
[ac_cv_win_or_dos=yes], [ac_cv_win_or_dos=yes],
[ac_cv_win_or_dos=no]) [ac_cv_win_or_dos=no])
]) ])
if test x"$ac_cv_win_or_dos" = xyes; then if test x"$ac_cv_win_or_dos" = xyes; then
ac_fs_accepts_drive_letter_prefix=1 ac_fs_accepts_drive_letter_prefix=1
ac_fs_backslash_is_file_name_separator=1 ac_fs_backslash_is_file_name_separator=1
AC_CACHE_CHECK([whether drive letter can start relative path],
[ac_cv_drive_letter_can_be_relative],
[
AC_TRY_COMPILE([],
[#if defined __CYGWIN__
drive letters are always absolute
#endif],
[ac_cv_drive_letter_can_be_relative=yes],
[ac_cv_drive_letter_can_be_relative=no])
])
if test x"$ac_cv_drive_letter_can_be_relative" = xyes; then
ac_fs_drive_letter_can_be_relative=1
else
ac_fs_drive_letter_can_be_relative=0
fi
else else
ac_fs_accepts_drive_letter_prefix=0 ac_fs_accepts_drive_letter_prefix=0
ac_fs_backslash_is_file_name_separator=0 ac_fs_backslash_is_file_name_separator=0
ac_fs_drive_letter_can_be_relative=0
fi fi
AH_VERBATIM(FILE_SYSTEM_PREFIX_LEN,
[#if FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX
# define FILE_SYSTEM_PREFIX_LEN(Filename) \
((Filename)[0] && (Filename)[1] == ':' ? 2 : 0)
#else
# define FILE_SYSTEM_PREFIX_LEN(Filename) 0
#endif])
AC_DEFINE_UNQUOTED([FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX], AC_DEFINE_UNQUOTED([FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX],
$ac_fs_accepts_drive_letter_prefix, $ac_fs_accepts_drive_letter_prefix,
[Define on systems for which file names may have a so-called [Define on systems for which file names may have a so-called
@ -55,4 +63,9 @@ neither MSDOS nor Windows
$ac_fs_backslash_is_file_name_separator, $ac_fs_backslash_is_file_name_separator,
[Define if the backslash character may also serve as a file name [Define if the backslash character may also serve as a file name
component separator.]) component separator.])
AC_DEFINE_UNQUOTED([FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE],
$ac_fs_drive_letter_can_be_relative,
[Define if a drive letter prefix denotes a relative path if it is
not followed by a file name component separator.])
]) ])

View file

@ -0,0 +1,38 @@
# double-slash-root.m4 serial 2 -*- Autoconf -*-
dnl Copyright (C) 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_DOUBLE_SLASH_ROOT],
[
AC_REQUIRE([AC_CANONICAL_HOST])
AC_CACHE_CHECK([whether // is distinct from /], [gl_cv_double_slash_root],
[ if test x"$cross_compiling" = xyes ; then
# When cross-compiling, there is no way to tell whether // is special
# short of a list of hosts. However, the only known hosts to date
# that have a distinct // are Apollo DomainOS (too old to port to),
# Cygwin, and z/OS. If anyone knows of another system for which // has
# special semantics and is distinct from /, please report it to
# <bug-gnulib@gnu.org>.
case $host in
*-cygwin | i370-ibm-openedition)
gl_cv_double_slash_root=yes ;;
*)
# Be optimistic and assume that / and // are the same when we
# don't know.
gl_cv_double_slash_root='unknown, assuming no' ;;
esac
else
set x `ls -di / //`
if test $[2] = $[4] && wc //dev/null >/dev/null 2>&1; then
gl_cv_double_slash_root=no
else
gl_cv_double_slash_root=yes
fi
fi])
if test "$gl_cv_double_slash_root" = yes; then
AC_DEFINE([DOUBLE_SLASH_IS_DISTINCT_ROOT], 1,
[Define to 1 if // is a file system root distinct from /.])
fi
])

70
gl/m4/eoverflow.m4 Normal file
View file

@ -0,0 +1,70 @@
# eoverflow.m4 serial 2
dnl Copyright (C) 2004, 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl From Bruno Haible.
# The EOVERFLOW errno value ought to be defined in <errno.h>, according to
# POSIX. But some systems (like AIX 3) don't define it, and some systems
# (like OSF/1) define it when _XOPEN_SOURCE_EXTENDED is defined.
# Define EOVERFLOW as a C macro and as a substituted macro in such a way that
# 1. on all systems, after inclusion of <errno.h>, EOVERFLOW is usable,
# 2. on systems where EOVERFLOW is defined elsewhere, we use the same numeric
# value.
AC_DEFUN([gl_EOVERFLOW],
[
AC_REQUIRE([AC_PROG_CC])dnl
AC_CACHE_CHECK([for EOVERFLOW], ac_cv_decl_EOVERFLOW, [
AC_EGREP_CPP(yes,[
#include <errno.h>
#ifdef EOVERFLOW
yes
#endif
], have_eoverflow=1)
if test -n "$have_eoverflow"; then
dnl EOVERFLOW exists in <errno.h>. Don't need to define EOVERFLOW ourselves.
ac_cv_decl_EOVERFLOW=yes
else
AC_EGREP_CPP(yes,[
#define _XOPEN_SOURCE_EXTENDED 1
#include <errno.h>
#ifdef EOVERFLOW
yes
#endif
], have_eoverflow=1)
if test -n "$have_eoverflow"; then
dnl EOVERFLOW exists but is hidden.
dnl Define it to the same value.
AC_COMPUTE_INT([ac_cv_decl_EOVERFLOW], [EOVERFLOW], [
#define _XOPEN_SOURCE_EXTENDED 1
#include <errno.h>
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
])
else
dnl EOVERFLOW isn't defined by the system. Define EOVERFLOW ourselves, but
dnl don't define it as EINVAL, because snprintf() callers want to
dnl distinguish EINVAL and EOVERFLOW.
ac_cv_decl_EOVERFLOW=E2BIG
fi
fi
])
if test "$ac_cv_decl_EOVERFLOW" != yes; then
AC_DEFINE_UNQUOTED([EOVERFLOW], [$ac_cv_decl_EOVERFLOW],
[Define as good substitute value for EOVERFLOW.])
EOVERFLOW="$ac_cv_decl_EOVERFLOW"
AC_SUBST(EOVERFLOW)
fi
])
dnl Autoconf >= 2.61 has AC_COMPUTE_INT built-in.
dnl Remove this when we can assume autoconf >= 2.61.
m4_ifdef([AC_COMPUTE_INT], [], [
AC_DEFUN([AC_COMPUTE_INT], [_AC_COMPUTE_INT([$2],[$1],[$3],[$4])])
])

View file

@ -1,12 +1,11 @@
# exitfail.m4 serial 5 # exitfail.m4 serial 6
dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. dnl Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_EXITFAIL], AC_DEFUN([gl_EXITFAIL],
[ [
AC_LIBSOURCES([exitfail.c, exitfail.h])
AC_LIBOBJ([exitfail]) AC_LIBOBJ([exitfail])
dnl No prerequisites of lib/exitfail.c. dnl No prerequisites of lib/exitfail.c.

58
gl/m4/extensions.m4 Normal file
View file

@ -0,0 +1,58 @@
# serial 4 -*- Autoconf -*-
# Enable extensions on systems that normally disable them.
# Copyright (C) 2003, 2006 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from CVS
# Autoconf. Perhaps we can remove this once we can assume Autoconf
# 2.61 or later everywhere, but since CVS Autoconf mutates rapidly
# enough in this area it's likely we'll need to redefine
# AC_USE_SYSTEM_EXTENSIONS for quite some time.
# AC_USE_SYSTEM_EXTENSIONS
# ------------------------
# Enable extensions on systems that normally disable them,
# typically due to standards-conformance issues.
AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS],
[
AC_BEFORE([$0], [AC_COMPILE_IFELSE])
AC_BEFORE([$0], [AC_RUN_IFELSE])
AC_REQUIRE([AC_GNU_SOURCE])
AC_REQUIRE([AC_AIX])
AC_REQUIRE([AC_MINIX])
AH_VERBATIM([__EXTENSIONS__],
[/* Enable extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif])
AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__],
[ac_cv_safe_to_define___extensions__],
[AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([
# define __EXTENSIONS__ 1
AC_INCLUDES_DEFAULT])],
[ac_cv_safe_to_define___extensions__=yes],
[ac_cv_safe_to_define___extensions__=no])])
test $ac_cv_safe_to_define___extensions__ = yes &&
AC_DEFINE([__EXTENSIONS__])
AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
AC_DEFINE([_TANDEM_SOURCE])
])
# gl_USE_SYSTEM_EXTENSIONS
# ------------------------
# Enable extensions on systems that normally disable them,
# typically due to standards-conformance issues.
AC_DEFUN([gl_USE_SYSTEM_EXTENSIONS],
[AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])])

View file

@ -1,12 +1,11 @@
#serial 2 #serial 5
dnl Copyright (C) 2005 Free Software Foundation, Inc. dnl Copyright (C) 2005-2007 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_FCNTL_SAFER], AC_DEFUN([gl_FCNTL_SAFER],
[ [
AC_LIBSOURCES([creat-safer.c, fcntl-safer.h, open-safer.c, fcntl--.h])
AC_LIBOBJ([open-safer]) AC_LIBOBJ([open-safer])
AC_LIBOBJ([creat-safer]) AC_LIBOBJ([creat-safer])
]) ])

22
gl/m4/fstypename.m4 Normal file
View file

@ -0,0 +1,22 @@
#serial 6
dnl From Jim Meyering.
dnl
dnl See if struct statfs has the f_fstypename member.
dnl If so, define HAVE_STRUCT_STATFS_F_FSTYPENAME.
dnl
# Copyright (C) 1998, 1999, 2001, 2004, 2006 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_FSTYPENAME],
[
AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,
[
#include <sys/types.h>
#include <sys/param.h>
#include <sys/mount.h>
])
])

View file

@ -1,7 +1,7 @@
#serial 16 #serial 22
# Obtaining file system usage information. # Obtaining file system usage information.
# Copyright (C) 1997, 1998, 2000, 2001, 2003, 2004, 2005 Free Software # Copyright (C) 1997, 1998, 2000, 2001, 2003, 2004, 2005, 2006 Free Software
# Foundation, Inc. # Foundation, Inc.
# #
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
@ -12,8 +12,6 @@
AC_DEFUN([gl_FSUSAGE], AC_DEFUN([gl_FSUSAGE],
[ [
AC_LIBSOURCES([fsusage.c, fsusage.h])
AC_CHECK_HEADERS_ONCE(sys/param.h) AC_CHECK_HEADERS_ONCE(sys/param.h)
AC_CHECK_HEADERS_ONCE(sys/vfs.h sys/fs_types.h) AC_CHECK_HEADERS_ONCE(sys/vfs.h sys/fs_types.h)
AC_CHECK_HEADERS(sys/mount.h, [], [], AC_CHECK_HEADERS(sys/mount.h, [], [],
@ -37,7 +35,7 @@ AC_DEFUN([gl_FSUSAGE],
AC_DEFUN([gl_FILE_SYSTEM_USAGE], AC_DEFUN([gl_FILE_SYSTEM_USAGE],
[ [
echo "checking how to get file system space usage..." AC_MSG_NOTICE([checking how to get file system space usage])
ac_fsusage_space=no ac_fsusage_space=no
# Perform only the link test since it seems there are no variants of the # Perform only the link test since it seems there are no variants of the
@ -50,10 +48,12 @@ if test $ac_fsusage_space = no; then
# SVR4 # SVR4
AC_CACHE_CHECK([for statvfs function (SVR4)], fu_cv_sys_stat_statvfs, AC_CACHE_CHECK([for statvfs function (SVR4)], fu_cv_sys_stat_statvfs,
[AC_TRY_LINK([#include <sys/types.h> [AC_TRY_LINK([#include <sys/types.h>
#ifdef __GLIBC__ #if defined __GLIBC__ && !defined __BEOS__
Do not use statvfs on systems with GNU libc, because that function stats Do not use statvfs on systems with GNU libc, because that function stats
all preceding entries in /proc/mounts, and that makes df hang if even all preceding entries in /proc/mounts, and that makes df hang if even
one of the corresponding file systems is hard-mounted, but not available. one of the corresponding file systems is hard-mounted, but not available.
statvfs in GNU libc on BeOS operates differently: it only makes a system
call.
#endif #endif
#include <sys/statvfs.h>], #include <sys/statvfs.h>],
[struct statvfs fsd; statvfs (0, &fsd);], [struct statvfs fsd; statvfs (0, &fsd);],
@ -74,11 +74,12 @@ if test $ac_fsusage_space = no; then
#include <sys/param.h> #include <sys/param.h>
#include <sys/types.h> #include <sys/types.h>
#include <sys/mount.h> #include <sys/mount.h>
int
main () main ()
{ {
struct statfs fsd; struct statfs fsd;
fsd.f_fsize = 0; fsd.f_fsize = 0;
exit (statfs (".", &fsd, sizeof (struct statfs))); return statfs (".", &fsd, sizeof (struct statfs)) != 0;
}], }],
fu_cv_sys_stat_statfs3_osf1=yes, fu_cv_sys_stat_statfs3_osf1=yes,
fu_cv_sys_stat_statfs3_osf1=no, fu_cv_sys_stat_statfs3_osf1=no,
@ -106,11 +107,12 @@ member (AIX, 4.3BSD)])
#ifdef HAVE_SYS_VFS_H #ifdef HAVE_SYS_VFS_H
#include <sys/vfs.h> #include <sys/vfs.h>
#endif #endif
int
main () main ()
{ {
struct statfs fsd; struct statfs fsd;
fsd.f_bsize = 0; fsd.f_bsize = 0;
exit (statfs (".", &fsd)); return statfs (".", &fsd) != 0;
}], }],
fu_cv_sys_stat_statfs2_bsize=yes, fu_cv_sys_stat_statfs2_bsize=yes,
fu_cv_sys_stat_statfs2_bsize=no, fu_cv_sys_stat_statfs2_bsize=no,
@ -130,10 +132,11 @@ if test $ac_fsusage_space = no; then
AC_CACHE_VAL(fu_cv_sys_stat_statfs4, AC_CACHE_VAL(fu_cv_sys_stat_statfs4,
[AC_TRY_RUN([#include <sys/types.h> [AC_TRY_RUN([#include <sys/types.h>
#include <sys/statfs.h> #include <sys/statfs.h>
int
main () main ()
{ {
struct statfs fsd; struct statfs fsd;
exit (statfs (".", &fsd, sizeof fsd, 0)); return statfs (".", &fsd, sizeof fsd, 0) != 0;
}], }],
fu_cv_sys_stat_statfs4=yes, fu_cv_sys_stat_statfs4=yes,
fu_cv_sys_stat_statfs4=no, fu_cv_sys_stat_statfs4=no,
@ -158,11 +161,12 @@ member (4.4BSD and NetBSD)])
#ifdef HAVE_SYS_MOUNT_H #ifdef HAVE_SYS_MOUNT_H
#include <sys/mount.h> #include <sys/mount.h>
#endif #endif
int
main () main ()
{ {
struct statfs fsd; struct statfs fsd;
fsd.f_fsize = 0; fsd.f_fsize = 0;
exit (statfs (".", &fsd)); return statfs (".", &fsd) != 0;
}], }],
fu_cv_sys_stat_statfs2_fsize=yes, fu_cv_sys_stat_statfs2_fsize=yes,
fu_cv_sys_stat_statfs2_fsize=no, fu_cv_sys_stat_statfs2_fsize=no,
@ -190,12 +194,13 @@ if test $ac_fsusage_space = no; then
#ifdef HAVE_SYS_FS_TYPES_H #ifdef HAVE_SYS_FS_TYPES_H
#include <sys/fs_types.h> #include <sys/fs_types.h>
#endif #endif
int
main () main ()
{ {
struct fs_data fsd; struct fs_data fsd;
/* Ultrix's statfs returns 1 for success, /* Ultrix's statfs returns 1 for success,
0 for not mounted, -1 for failure. */ 0 for not mounted, -1 for failure. */
exit (statfs (".", &fsd) != 1); return statfs (".", &fsd) != 1;
}], }],
fu_cv_sys_stat_fs_data=yes, fu_cv_sys_stat_fs_data=yes,
fu_cv_sys_stat_fs_data=no, fu_cv_sys_stat_fs_data=no,
@ -237,7 +242,8 @@ choke -- this is a workaround for a Sun-specific problem
#endif #endif
#include <sys/types.h> #include <sys/types.h>
#include <sys/vfs.h>]], #include <sys/vfs.h>]],
[[struct statfs t; long c = *(t.f_spare);]])], [[struct statfs t; long c = *(t.f_spare);
if (c) return 0;]])],
[fu_cv_sys_truncating_statfs=yes], [fu_cv_sys_truncating_statfs=yes],
[fu_cv_sys_truncating_statfs=no])]) [fu_cv_sys_truncating_statfs=no])])
if test $fu_cv_sys_truncating_statfs = yes; then if test $fu_cv_sys_truncating_statfs = yes; then
@ -254,7 +260,6 @@ choke -- this is a workaround for a Sun-specific problem
# Prerequisites of lib/fsusage.c not done by gl_FILE_SYSTEM_USAGE. # Prerequisites of lib/fsusage.c not done by gl_FILE_SYSTEM_USAGE.
AC_DEFUN([gl_PREREQ_FSUSAGE_EXTRA], AC_DEFUN([gl_PREREQ_FSUSAGE_EXTRA],
[ [
AC_REQUIRE([gl_AC_TYPE_UINTMAX_T]) AC_CHECK_HEADERS(dustat.h sys/fs/s5param.h sys/filsys.h sys/statfs.h)
AC_CHECK_HEADERS(dustat.h sys/fs/s5param.h sys/filsys.h sys/statfs.h sys/statvfs.h)
gl_STATFS_TRUNCATES gl_STATFS_TRUNCATES
]) ])

Some files were not shown because too many files have changed in this diff Show more